2017-03-28 8 views
0

Eclipse를 구성하여 Spark 및 Python으로 개발했습니다. 구성 : 1. 파이썬 인터프리터가있는 PyDev 2. 스파크 파이썬 소스가있는 PyDev 3. 스파크 환경 변수가있는 PyDev.Eclipse (PyDev)에 py4j.protocol이라는 모듈이 없습니다.

이 내 라이브러리 구성입니다 :

enter image description here

그리고 이것은 내 환경 구성입니다 :

enter image description here

내가 CompensationStudy라는 이름의 프로젝트를 생성하고 내가 작은 예제를 실행하려면 및 모든 것이 원활하게 진행될 수 있도록하십시오.

enter image description here

내 코드입니다 :

from pyspark import SparkConf, SparkContext 
import os 

sparkConf = SparkConf().setAppName("WordCounts").setMaster("local") 
sc = SparkContext(conf = sparkConf) 


textFile = sc.textFile(os.environ["SPARK_HOME"] + "/README.md") 
wordCounts = textFile.flatMap(lambda line: line.split()).map(lambda word: (word, 1)).reduceByKey(lambda a, b: a+b) 
for wc in wordCounts.collect(): print wc 

하지만이 오류가있어 : ImportError를 : 아니오 모듈의 이름 py4j.protocol

Logicly 포함 PySpark의 라이브러리 의존성을 모두, Py4J는 Spark Python 소스로 PyDev를 구성 할 때 자동으로 가져옵니다. 그래서, 여기에 무슨 문제가 있습니까? 내 log4j.properties 파일에 문제가 있습니까? 제발 도와주세요!

답변

0

명령 줄에서 실행할 수 있습니까? 나는 첫 번째 단계에서 IDE를 꺼내는 것이므로, 명령 줄에서 적절한 환경 변수를 사용하여 모든 것을 실행하려고합니다 (아마도 pyspark 커뮤니티에 도움을 요청할 것입니다). 실행 후 env 실행중인 변수를 명령 줄에서 실행 (env 변수를 실행하고 콘솔에서 실행 한 다음 IDE에서 실행하여 차이를 확인하는 프로그램 만들기).

(아마 문제,하지만 여전히 ...) 1 주 : 스크린 샷에서, 당신의 프로젝트 구성하면 (/CompensationStudy/src에 코드를 넣어 것 같다, /CompensationStudy가 PYTHONPATH에 추가 한, 아직 것 같다 따라서 프로젝트 구성을 편집하여 /CompensationStudy/src 만 PYTHONPATH에 넣어야합니다.

0

과 유사한 오류가있었습니다.

오류

sudo pip install py4j 
없이 실행할 수 py4j를 설치 한 후