如何配置Databricks集群策略以引用Oracle JAR文件?
解决Databricks集群策略中Oracle JDBC JAR配置问题
1. 恢复UI中的Libraries标签
集群策略若未正确配置库相关规则,会导致UI里的Libraries标签隐藏。需在策略JSON中添加允许库配置的规则,示例如下:
{ "libraries": { "type": "array", "default": [], "description": "允许配置集群依赖库" }, // 其他策略字段... }
若需限制仅能添加特定类型的库(比如仅指定路径的JDBC JAR),可细化规则:
{ "libraries": { "type": "array", "items": { "type": "object", "properties": { "jar": { "type": "string", "pattern": "^dbfs:/path/to/oracle/.*\\.jar$" // 限制仅指定路径的JAR } }, "additionalProperties": false }, "default": [] } }
2. 正确配置Oracle JDBC JAR(替代init_scripts)
init_scripts字段仅用于集群启动时运行的初始化脚本,不适合放置大体积JAR(有大小限制)。正确做法是通过libraries字段直接引用JAR,支持两种方式:
方式一:从DBFS路径引用已上传的JAR
将Oracle JDBC JAR上传到DBFS后,在策略中配置:
{ "libraries": { "type": "array", "default": [ { "jar": "dbfs:/databricks/jars/ojdbc8.jar" // 替换为你的JAR实际路径 } ] } }
方式二:通过Maven坐标直接拉取
若Oracle JDBC JAR在Maven仓库可访问,直接用maven坐标配置:
{ "libraries": { "type": "array", "default": [ { "maven": { "coordinates": "com.oracle.database.jdbc:ojdbc8:21.13.0.0" } } ] } }
3. 验证配置效果
- 应用修改后的集群策略创建集群,UI中的Libraries标签会正常显示,可查看已配置的JAR
- 在Notebook中编写JDBC查询时,直接使用对应驱动类(如
oracle.jdbc.OracleDriver)即可连接Oracle数据库
内容的提问来源于stack exchange,提问作者adrihernandez
相关产品推荐
相关产品推荐

