2012-09-24 14 views
6

Piszę skrypt zewnętrzny, aby uruchomić zadanie mapreduce za pośrednictwem modułu Python mrjob na moim laptopie (nie w Amazon Elastic Compute Cloud ani w żadnym dużym klastrze).W jaki sposób określić plik wejściowy dla runner z Python?

Przeczytałem z mrjob documentation, że powinienem użyć MRJob.make_runner(), aby uruchomić zadanie mapreduce z oddzielnego skryptu Pythona w następujący sposób.

mr_job = MRYourJob(args=['-r', 'emr']) 
with mr_job.make_runner() as runner: 
    ... 

Jak jednak określić, który plik wejściowy ma być używany? Chcę użyć pliku "datalines.txt" w tym samym katalogu, co mój skrypt mapreduce i inny skrypt Pythona, który uruchamia redukcję mapy. Co więcej, jak określić dane wyjściowe?

Nie mogłem znaleźć funkcji w dokumentacji mrjob, która pozwala mi określić te parametry.

Odpowiedz

5

Getting started guide sugeruje, że wejście jest czytane ze standardowego wejścia lub plików dostarczonych w linii poleceń:

mr_job = MRYourJob(args=["datalines.txt"]) 
Powiązane problemy