SparkR 作业处理依赖项
Posted
技术标签:
【中文标题】SparkR 作业处理依赖项【英文标题】:SparkR job deal with dependencies 【发布时间】:2016-04-07 09:57:28 【问题描述】:(交互式)sparkR作业如何处理依赖?
我知道 java 作业可以作为包含所有依赖项的 fat-Jar 提交。对于任何其他作业,可以在spark-submit
命令上指定--packages
选项。但我想使用 sparkR 从 R (Rstudio) 连接到我的小集群。 (这非常有效)
但我需要一些外部软件包,例如连接到数据库(Mongo、Cassandra)或读取 csv 文件。在 local 模式下,我可以在启动时轻松指定这些包。这自然不适用于已经运行的集群。 https://github.com/andypetrella/spark-notebook 提供了一种非常方便的模式来在运行时加载此类外部包。
如何在我的 sparkR(交互式会话)的运行时期间或在图像创建期间类似地将 maven-coordinate 包加载到 spark 类路径中> dockerized 集群的?
【问题讨论】:
我认为这个答案可能有用***.com/a/36474504/1314742 谢谢。这很有趣。但是,如果包有常规的 maven 坐标,是否有可能以某种方式预加载它? 【参考方案1】:您也可以尝试在SPARK_HOME/conf/spark-default.conf
文件中配置这两个变量:spark.driver.extraClassPath
和spark.executor.extraClassPath
,并将这些变量的值指定为jar文件的路径。确保工作节点上存在相同的路径。
来自No suitable driver found for jdbc in Spark
【讨论】:
以上是关于SparkR 作业处理依赖项的主要内容,如果未能解决你的问题,请参考以下文章
包括自定义 PTransform 导致在 GCP 的 Dataflow 作业中找不到依赖项