2010-06-30 84 views
1

我試圖用小飛/ Hadoop的使用這個例子http://dumbotics.com/2009/05/17/tf-idf-revisited/在Hadoop輸出中用作鍵的序列文件名稱?

爲了提高效率來計算TF-IDF的一幫小的文本文件 ,我已經打包的文本文件到使用斯圖爾特序列 文件Sierra的工具 - http://stuartsierra.com/2008/04/24/a-million-little-files

序列文件使用我的原始文件名(324324.txt [ object_id.txt])作爲鍵和文件內容作爲值。

問題是,每行輸出的樣子:

[aftershocks, s3://mybucket/input/test-seq-file]  7.606329176204189E-4 

我要的是:

[aftershocks, 324324.txt]  7.606329176204189E-4 

我在做什麼錯?

我正在工作與:

dumbo start tfidf.py -hadoop /home/hadoop -input s3://mybucket/input/ 

測試序列文件 - 輸出S3:// mybucket /輸出/ TEST3 -param doccount = 11 - OUTPUTFORMAT文本

回答

1

我做以下調整到第一個映射器和一切開始工作。

#Original version 
@opt("addpath", "yes") 
def mapper1(key, value): 
    for word in value.split(): 
     yield (key[0], word), 1 

#Edits version 
def mapper1(key, value): 
    for word in value.split(): 
     yield (key, word), 1 
相關問題