我想在PyCharm中调试Spark代码,因为它更易于调试。但是我需要添加一个spark-redis.jar
,否则需要添加Failed to find data source: redis
连接到redis的代码是
spark = SparkSession \
.builder \
.appName("Streaming Image Consumer") \
.config("spark.redis.host", self.redis_host) \
.config("spark.redis.port", self.redis_port) \
.getOrCreate()
如果使用PyCharm,该如何解决?
我尝试在spark.driver.extraClassPath
中添加$SPARK_HOME/conf/spark-defaults.conf
,但是它不起作用。
我还尝试在运行配置中添加环境变量PYSPARK_SUBMIT_ARGS --jars ...
,但会引发其他错误
答案 0 :(得分:1)
将spark.driver.extraClassPath
添加到spark-defaults.conf
可以在Spark 2.3.1中使用
cat /Users/oleksiidiagiliev/Soft/spark-2.3.1-bin-hadoop2.7/conf/spark-defaults.conf
spark.driver.extraClassPath /Users/oleksiidiagiliev/.m2/repository/com/redislabs/spark-redis/2.3.1-SNAPSHOT/spark-redis-2.3.1-SNAPSHOT-jar-with-dependencies.jar
请注意,这是一个具有依赖性的jar(您可以使用mvn clean install -DskipTests
从源代码构建一个jar。)
Aslo我在PyCharm项目中添加了pyspark库和SPARK_HOME
环境变量,如此处https://medium.com/parrot-prediction/integrating-apache-spark-2-0-with-pycharm-ce-522a6784886f