如何通过Databricks初始化脚本安装指定Maven坐标?
使用Databricks初始化脚本安装指定Maven依赖
方案1:修改Spark默认配置(推荐)
这种方式直接在集群初始化阶段配置Spark的Maven依赖参数,集群启动时会自动下载并加载指定包,无需额外运行Spark任务。
创建如下Shell脚本(命名为install_maven_deps.sh):
#!/bin/bash # 定位Spark配置目录(Databricks标准路径) SPARK_CONF_DIR="/databricks/spark/conf" # 添加SynapseML所需的自定义Maven仓库 echo "spark.jars.repositories https://mmlspark.azureedge.net/maven" >> "${SPARK_CONF_DIR}/spark-defaults.conf" # 添加两个Maven依赖包,用逗号分隔 echo "spark.jars.packages com.microsoft.azure:synapseml_2.12:0.11.2,com.microsoft.azure:spark-mssql-connector_2.12:1.2.0" >> "${SPARK_CONF_DIR}/spark-defaults.conf"
方案2:通过Spark Shell调用dbutils安装
如果需要更灵活的安装逻辑,可以通过Spark Shell执行dbutils命令来安装依赖:
创建如下Shell脚本:
#!/bin/bash # 用Spark Shell执行依赖安装命令 spark-shell --master local[*] -e " // 安装SynapseML,指定自定义仓库 dbutils.library.installMaven('com.microsoft.azure:synapseml_2.12:0.11.2', Map('repoUrl' -> 'https://mmlspark.azureedge.net/maven')) // 安装SQL Server连接器,使用默认Maven仓库 dbutils.library.installMaven('com.microsoft.azure:spark-mssql-connector_2.12:1.2.0') // 重启Python环境(如果需要在Python中使用这些库) dbutils.library.restartPython() "
使用步骤
将上述脚本文件上传到DBFS:
- 通过Databricks UI:进入"数据"页面,找到目标DBFS路径(如
/databricks/scripts/),上传脚本文件 - 或用Databricks CLI:
databricks fs cp install_maven_deps.sh dbfs:/databricks/scripts/
- 通过Databricks UI:进入"数据"页面,找到目标DBFS路径(如
配置集群使用初始化脚本:
- 新建或编辑集群,进入"高级选项" -> "初始化脚本"
- 点击"添加",选择"DBFS",输入脚本的DBFS路径(如
dbfs:/databricks/scripts/install_maven_deps.sh) - 保存集群配置并启动,集群会自动执行脚本安装依赖
内容的提问来源于stack exchange,提问作者Ajay Ganti
相关产品推荐
相关产品推荐

