如何在Pycharm中将jar添加到Spark

时间:2019-07-11 08:38:49

标签: pyspark pyspark-sql spark-redis

我想在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 ...,但会引发其他错误

1 个答案:

答案 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

所述