我配置了 Eclipse 以便使用 Spark 和 Python 进行开发。我配置了: 1. PyDev 与 Python 解释器 2. PyDev 与 Spark Python 源 3. PyDev 与 Spark 环境变量。
这是我的库配置:
这是我的环境配置:
我创建了一个名为 CompensationStudy 的项目,我想运行一个小示例并确保一切顺利。
这是我的代码:
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: No module named py4j.protocol
从逻辑上讲,当我使用 Spark Python 源配置 PyDev 时,会自动导入 PySpark 的所有库依赖项,包括 Py4J。那么,这里有什么问题?我的 log4j.properties 文件有问题吗?请帮忙 !