2016-09-11 7 views
0

다른 모듈에서 파일을 가져 오는 중에이 오류가 발생합니다. 이유는 무엇인지 말해 줄 수 있습니까? 콘솔에서 실행 중입니다. 진흙 투성이 일로 명령이 실패했습니다.oozie.common.file을 파일로 가져 오기 ImportError : oozie라는 모듈이 없습니다

폴더 구조 :

oozie/common/file.py 
oozie/common/__init__.py 
oozie/__init__py 

내가 수입에 노력하고있는 곳에서 내 위치 :

oozie/mylocation/pjt.py 
oozie/common/__init__.py 

명령 :

파이썬 코드는 HDFS에서 이동합니다
import oozie.common.file as file 

답변

0

그것은 실행되는 데이터 노드의 로컬 파일 시스템에 저장됩니다. 필요한 모든 파일을 oozie 작업에 설정했는지 확인하십시오. 그렇지 않으면 일부 데이터가 선택된 데이터 노드에 다운로드되지 않습니다.

것을 기억

1) 모든 파이썬 시스템 라이브러리는 지역 도서관이 작동 각 데이터 노드

2)에 설치되어 있어야합니다 당신은 파이썬 LIBPATH를 설정합니다.

파이썬 스크립트의 첫 번째 줄은 라이브러리 경로를 설정해야합니다.

내 생각에 모든 클래스를 동일한 파일에 보관하는 것은 python (가능한 경우)은 oozie에서 시작할 때의 고통없는 해결책입니다.

Java를 사용할 수있는 경우.

+0

작업이 복제 인수 1 인 단일 시스템에서 실행 중입니다. – mahan07

+0

복제 계수는 동일한 데이터가 hadoop으로 복제되는 횟수가 스크립트 실행에 영향을주지 않습니다. 단일 시스템에서 문제는 라이브러리 경로 일 가능성이 큽니다. 같은 경로 라이브러리 문제가있는 "oazie에서 pyspark를 실행하는 방법"을 찾는 좋은 제안을 찾을 수 있습니다. 나는 모든 클래스들을 같은 .py 파일에 넣는 것을 해결했다. 워크 플로 구성이 모든 파일을 다운로드하도록 설정되어 있는지 확인하십시오. – ozw1z5rd