首先,我看到了类似的问题。 another problem link但我认为答案并不十分清楚。
我的一些问题如下:
(1)-jars参数与spark.executor.extraClassPath参数相同,如果不同,有什么区别?
我已经在spark-submit命令行的--jars上检查了--help,其解释如下:
Comma-separated list of local jars to include on the driver
and executor classpaths.
但是,我在spark-submit命令行中找不到spark.executor.extraClassPath的说明。最后,我在spark的官方网站上找到了关于spark.executor.extraClassPath的以下解释:
Extra classpath entries to prepend to the classpath of executors.
从两者的解释看,效果差不多?
但是我从另一个问题链接中看到以下段落:
-jars与SparkContext.addJar:完全相同,只有一个是通过spark提交设置的,另一个是通过代码设置的。选择一个更适合您的套件。需要注意的重要一件事是,使用这两个选项中的任何一个都不会将JAR添加到驱动程序/执行程序的类路径中,您需要使用这两个选项上的extraClassPath配置显式添加它们。
这又是为什么?
(2)spark.executor.extraClassPath和spark.executor.extraLibraryPath,与具有相同前缀的spark.driver.extraXXXXpath相同。
extraClassPath和extraLibraryPath有什么区别?
spark官方网站上的spark.executor.extraLibraryPath解释。
Set a special library path to use when launching executor JVM's.
我不明白,这个解释与--jars和spark.executor.extraClassPath有什么区别?
期待您的解释和答复,谢谢。