Pythonのダンボパッケージを使用して、hadoopのシーケンスファイルからファイル名を取得しようとしています。しかし、それは私にある種の識別子を提供します。これをファイル名にマップするにはどうすればよいですか?
以下は、ファイル名を取得するための Hadoop システムでの私の手順です。
手順 1)シーケンスファイルの生成
指示 :
hadoop jar /mnt/Clustering/Checking/AllJars/binarypig-1.0-SNAPSHOT-jar-with-dependencies.jar com.endgame.binarypig.util.BuildSequenceFileFromDir /mnt/Clustering/Checking/text_files text_files_seq
ステップ 2) Hadoop を介してシーケンス ファイルで Python スクリプトを実行する
指示:
dumbo start dumbo_map_red.py -input text_files_seq -output out_res -hadoop /usr/local/hadoop
ステップ 3)ローカル ディレクトリに出力を取得する
指示:
dumbo cat out_res/part-* -hadoop /usr/local/hadoop > out_res.txt
dumpo_map_red.py の場所
#!/usr/bin/env python
def mapper(key, value):
yield key, 1
def reducer(key, values):
yield key, sum(values)
if __name__ == "__main__":
import dumbo
dumbo.run(mapper, reducer)
ファイル名を取得する方法を教えてください。それらがPythonの他のパッケージであり、そのように作業できるようにする場合は、お知らせください..