我正在使用 Azure Databricks 部署一些R代码,这些代码使用 SparkR 和gapplyCollect()
通过多个工作程序并行化。
SparkDataframe
的形式(从关系数据库中读取所有数据)groupBy()
SparkDataframe
基于我的数据源列(数据由数据源列均匀分布) gapplyCollect()
结果中使用GroupedData
,将我的R函数应用于每个数据分区。
DataFrame
,其中有几行( dim ==(5,5))。gapplyCollect()
将所有结果结合在一起,生成一个小的R DataFrame
(<100k数字行),以合并所有结果。在我的开发环境中,我正在进行一些实验,以并行分析250个数据源,并且为此使用了4个小型工人(VM类型:Standard_F4s)。
gapplyCollect()
正在将我的R函数发送给工作人员,但是...是否可以自定义每个工作人员要执行的最大活动任务数?默认情况下,我看到 Databricks 允许每个工作人员执行5个活动任务。
spark-submit
是否适合此任务?我从没使用过spark-submit
,也没有在 Azure Databricks 上找到使用它的有效文档。
我将使用每日计划的工作将此代码投入生产。在工作中,是否可以使用spark-submit
功能来更改--executor-cores
选项?
如果是的话,由于 Azure Databricks 不允许我在所有工作驱动程序+工人中安装forecast
CRAN库,使用spark-submit
时在GUI中定义库?