我需要在我的pyspark字数统计代码中添加一些外部依赖库(在我的情况下为spark-streaming-mqtt_2.10-1.5.2.jar
)。我知道我们可以在spark提交中使用-jars属性添加外部jar,或者使用pyspark shell运行。但我想在我的代码或spark配置文件中添加这个jar。我发现我们有SparkContext.addJar()
方法,可以包含在代码中。
sc.addJar("spark-streaming-mqtt_2.10-1.5.2.jar")
但是上面的命令给了我错误:AttributeError: 'SparkContext' object has no attribute 'addJar'
。
我尝试在Spark_default.config文件中添加此jar:
spark.driver.extraClassPath spark-streaming-mqtt_2.10-1.5.2.jar
spark.executor.extraClassPath spark-streaming-mqtt_2.10-1.5.2.jar
但这对我来说也不起作用。我已经在互联网上查看但没有得到任何有用的链接。
我在Spark HD 1.5.2中使用1个namenode和3个datanode。
你能帮我解决这个问题。非常感谢你。
答案 0 :(得分:0)
通过在spark_deafult.config中添加外部依赖作为
,它对我有用spark.jars spark-streaming-mqtt_2.10-1.5.2.jar
现在我的工作是依赖外部。
答案 1 :(得分:-1)
spark.driver.extraClassPath
和spark.executor.extraClassPath
可以使用,但这应该是您的Hadoop节点的路径,因为这些文件没有上传,它们只是添加到spark包含类路径。