Spark Submit(旧版)
Spark Submit 任务类型是将 JAR 配置为任务的旧模式。 Databricks 建议使用 JAR 任务。 请参阅作业的 JAR 任务。
要求
- 只能在新群集上运行 spark-submit 任务。
- 必须将 JAR 文件上传到与计算配置兼容的位置或 Maven 存储库。 请参阅 Java 和 Scala 库支持。
- 无法访问存储在卷中的 JAR 文件。
- Spark-submit 不支持群集自动缩放。 若要详细了解自动缩放,请参阅群集自动缩放。
- Spark-submit 不支持 Databricks 实用程序 (dbutils) 引用。 若要使用 Databricks 实用程序,请改用 JAR 任务。
- 如果使用启用了 Unity Catalog 的群集,则仅当群集使用单用户访问模式时才支持 spark-submit。 不支持共享访问模式。 请参阅访问模式。
- 结构化流式处理作业的最大并发运行数不得设置为大于 1。 流式处理作业应设置为(每分钟)使用 cron 表达式
"* * * * * ?"
运行。 由于流式处理任务持续运行,因此它应始终是作业中的最终任务。
配置 Spark Submit 任务
通过执行以下操作,从作业 UI 中的“任务”选项卡添加 Spark Submit
任务:
- 在“类型”下拉菜单中,选择“
Spark Submit
”。 - 使用计算配置支持任务中逻辑的群集。
- 使用“参数”文本框提供作为 JSON 字符串数组运行任务所需的所有参数和配置。
前三个参数用于标识要在指定路径的 JAR 中运行的主类,如以下示例所示:
["--class", "org.apache.spark.mainClassName", "dbfs:/Filestore/libraries/jar_path.jar"]
不能替代 Azure Databricks 配置的
master
、deploy-mode
和executor-cores
设置使用
--jars
和--py-files
添加 Java、Scala 和 Python 依赖库。使用
--conf
设置 Spark 配置。--jars
、--py-files
、--files
参数支持 DBFS 路径。默认情况下,Spark Submit 作业使用所有可用内存,为 Azure Databricks 服务预留的内存除外。 可将
--driver-memory
和--executor-memory
设置为较小的值,以留出一些空间作为堆外内存。
- 单击“保存任务”。