0

次の手順でmapreduceジョブを実行したいと思います。

1)htmlフォームを介して入力されたファイルからのマップ

2)削減し、削減から新しいファイルを作成します

これが私が現在パイプラインを設定している方法です。主な質問は、ファイルをRecordsReaderに渡す方法です。

RecordsReaderには、「読み取るファイルを含む文字列、または読み取るファイルの複数の文字列を含むリスト」のいずれかで渡されるパラメータファイルがあります。-グーグル

class EPNPipeline(base_handler.PipelineBase):
    def run(self, filekey):
        logging.debug("filename is %s" % filekey)
        output = yield mapreduce_pipeline.MapreducePipeline(
            "EPN",
            "map_process_epn",
            "reduce_process_epn",
            "mapreduce.input_readers.RecordsReader",
            "mapreduce.output_writers.BlobstoreOutputWriter",
            mapper_params={
                 "files": filekey,                
            },
            reducer_params={
                 "mime_type": "text/plain",
            },
            shards=24)
        yield StoreOutput("EPN", filekey, output)

ファイルをファイルオブジェクトおよび文字列表現として渡そうとしましたが、どちらも機能せず、さまざまな入出力リーダー/ライターの使用に関するドキュメントがあまりありません。

ヘルプやポインタは大歓迎です。

ありがとう

4

1 に答える 1

1

ドキュメントで説明されているサンプルアプリケーションは、これを行う方法を正確に示しています。ファイルをblobstoreにアップロードしてから、blobキーをmapreduceに渡す必要があります。

于 2013-01-04T20:47:31.850 に答える