全て、
大量のデータを処理するためのインターフェイスの作成と、機械学習を行うための arff ファイルの生成に取り組んでいます。現在、機能を収集できますが、派生元のファイルにそれらを関連付ける方法がありません。今ダンボ使ってる
def mapper(key, value):
#do stuff to generate features
開かれ、その内容がマッパー関数に渡されたファイル名を特定する便利な方法はありますか?
再度、感謝します。-サム
ここで説明するように、-addpathyesオプションを使用できます。
-addpath yes(各入力キーを、対応する入力ファイルのパスと元のキーで構成されるタプルに置き換えます)
ジョブ構成プロパティにアクセスできる場合、mapreduce.job.input.file
プロパティには現在のファイルのファイル名が含まれている必要があります。
ただし、Dumbo/Mrjob でこれらのプロパティを取得する方法がわかりません。ドキュメントでは、(conf 名の) ピリオドがアンダースコアに置き換えられ、PipeMapRed.java のソースを調べると、すべての単一ジョブ conf のように見えます。プロパティは環境変数として設定されているため、次の名前の環境変数にアクセスしてみてくださいmapreduce_job_input_file
http://hadoop.apache.org/mapreduce/docs/r0.21.0/mapred_tutorial.html#Configured+Parameters