Spark包标志与jars目录?

时间:2018-05-14 15:15:03

标签: apache-spark

在Spark中,通过--packages参数将JAR添加到类路径并将JAR直接添加到$SPARK_HOME/jars目录之间有什么区别?

1 个答案:

答案 0 :(得分:3)

TL; DR jars用于使用URL指定的本地或远程jar文件,并且不解析依赖关系,packages用于Maven坐标,并确实解决依赖关系。 From docs

  • --jars

      

    使用spark-submit时,应用程序jar以及--jars选项中包含的任何jar都将自动传输到群集。 -jars之后提供的URL必须用逗号分隔。该列表包含在驱动程序和执行程序类路径中。目录扩展不适用于--jars。

  • --packages

      

    用户还可以通过使用--packages提供以逗号分隔的Maven坐标列表来包含任何其他依赖项。使用此命令时将处理所有传递依赖项。可以使用标志--repositories以逗号分隔的方式添加其他存储库(或SBT中的解析程序)。 (请注意,在某些情况下,可以在存储库URI中提供受密码保护的存储库的凭据,例如在https://user:password@host/中....在以这种方式提供凭据时要小心。)这些命令可以与pyspark,spark一起使用-shell和spark-submit包含Spark Packages。