Windows 용 Hortonworks HDP를 사용 중이며 마스터와 2 개의 슬레이브를 사용하여 성공적으로 구성했습니다.Windows에서 python으로 Hadoop 스트리밍
다음 명령을 사용하고 있습니다.
bin\hadoop jar contrib\streaming\hadoop-streaming-1.1.0-SNAPSHOT.jar -files file:///d:/dev/python/mapper.py,file:///d:/dev/python/reducer.py -mapper "python mapper.py" -reducer "python reduce.py" -input /flume/0424/userlog.MDAC-HD1.MDAC.local..20130424.1366789040945 -output /flume/o%1 -cmdenv PYTHONPATH=c:\python27
맵퍼
잘 통해 실행하지만, 로그 보고서는 reduce.py 파일을 찾을 수 없다는. 예외적으로 hadoop taskrunner가 mapper.py 파일에 대한 감속기에 대한 심볼릭 링크를 만드는 것처럼 보입니다.작업 구성 파일을 확인할 때 mapred.cache.files이로 설정되어 있습니다.
HDFS : // MDAC-HD1 : 8020/mapred/준비/관리자/.staging/job_201304251054_0021/파일/mapper.py 번호의 mapper.py
그것은 reduce.py 파일이 추가되고 있지만처럼 보인다 jar 파일에는 구성에 올바르게 포함되지 않아서 감속기가 실행을 시도 할 때 찾을 수 없습니다.
내 명령이 정확하다고 생각합니다. 대신 -file 매개 변수를 사용했지만 파일을 찾지 못했습니다.
누구나 분명한 이유를 알고 있습니까?
Windows 용입니다.
EDIT- 방금 로컬에서 실행 했으므로 문제가 클러스터 내에서 파일을 복사하는 것과 같을 수 있습니다.
여전히 환영합니다!
내 실수는 파일 목록에서 먼저 reduce.py를 사용하도록 다시 정리 한 것입니다. 내가 그것을 바꿨을 때 나는 실수했다. 일반적으로 말하는 것은 reduce.py라고해야합니다. – owen79
흥미롭게도, 주문을 교환 할 때, 작업 설정에서 언급 된 것은 reduce.py뿐입니다. 그것은 -files 매개 변수에있는 것 같습니다. 저는 고심하고 있습니다. – owen79