2014-11-13 4 views
0

콘솔을 통해 EMR 클러스터를 시작합니다.AWS EMR의 -file 인수는 무엇입니까

콘솔은 자동으로 매퍼에 대해 제공 한 위치 인 인수 필드에 -files s3://jmilloy/milp_mapper.py을 추가했습니다. 어디서나 문서화 된 -file 옵션을 찾을 수 없습니다. 그것은 무엇을합니까? 왜 자동으로 추가 되었습니까? 제거하면 어떻게됩니까? S3에서 내 스크립트에 필요한 다른 파일을 넣을 수 있습니까?

답변

3

짧은 답변 :

-files는 EMR 플래그 아니다 오히려 그것은 Distributed Cache에 파일을 추가하는 방법입니다.

긴 버전 :

하둡은 명령 줄 옵션을 구문 분석하는 데 사용됩니다 GenricOptionsParser로 불리는 것을 사용합니다. 매퍼 (mapper) 또는 리듀서 (reducers)를 작성하기 위해 파이썬을 사용하는 경우 Hadoop은 Streaming API이라는 항목을 사용하여 작업을 실행합니다. 따라서 스트리밍 작업을 실행하는 경우 -files 명령 줄 옵션을 사용하는 파일 시스템 (이 경우 S3 일 수도 있음)에 Mapper와 Reducers가있는 경로를 전달해야합니다. 이렇게하면 Hadoop에서 파일을 다음으로 복사합니다. HDFS로 변환 한 다음 Mappers 및 Reducers에 복사하여 파이썬 외부 프로세스를 초기화 할 수 있습니다.

-files을 사용하여 파이썬 매퍼 또는 감속기 코드를 지정하지 않으면 작업이 실패합니다.

+0

감사합니다. 부트 스트랩 작업 대신 매퍼가 사용하는 추가 파일 (이진수 2 개)을이 방법으로 추가하려고합니다. – jmilloy

+0

바이너리 라이브러리는 Mapper 또는 Reducer 파이썬 코드에서 호출 할 파이썬 스크립트입니까? – Ashrith

+0

이들은 하위 프로세스로 호출하는 실행 파일입니다. 어떤 팁? 그들은 내 테스트 EC2 인스턴스에서 작동하지만 아직 EMR을 통해 성공적으로 결과를 얻지 못했습니다. – jmilloy