资讯动态

Apache DolphinScheduler Vertica 数据源接入指南:参数配置、JDBC 实现原理与插件激活

发布时间:2026/9/15 0:43:37 来源:尧图企业网站定制
Apache DolphinScheduler Vertica 数据源接入指南参数配置、JDBC 实现原理与插件激活【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址: https://gitcode.com/GitHub_Trending/dol/dolphinschedulerApache DolphinScheduler 通过插件化数据源架构让用户以低代码方式接入 Vertica 分析数据库。本文围绕官方数据源文档docs/docs/en/guide/datasource/vertica.md展开完整讲解 Vertica 数据源的每一个表单参数、底层 JDBC 连接的构建过程、连接池与校验机制并结合仓库源码说明 Vertica 数据源非原生内置、需手动激活插件依赖的具体操作步骤。读完本文你将能够在 DolphinScheduler 中正确创建 Vertica 数据源并将其用于 SQL 类任务的数据查询与调度。Vertica 数据源概览Vertica 是面向分析型负载的列式数据库。在 DolphinScheduler 中Vertica 数据源并非默认随二进制发行包附带而是作为一个独立的数据源插件存在。对应的插件模块位于 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-vertica模块名artifactId为dolphinscheduler-datasource-vertica插件标识为datasource.vertica。在 Web 控制台的「数据源中心」页面新增数据源时下拉列表中选择VERTICA即可进入 Vertica 数据源表单界面示意见官方文档配图 vertica.png。数据源参数详解创建 Vertica 数据源时需要填写以下参数参数说明Datasource数据源类型选择 VERTICADatasource Name数据源名称用于在 DolphinScheduler 中唯一标识该数据源Description数据源描述可选IP/Host NameVertica 服务所在主机的 IP 或主机名PortVertica 服务端口Username连接 Vertica 使用的用户名Password连接 Vertica 使用的密码Database name要连接的 Vertica 数据库名称Jdbc connection parametersVertica 连接参数设置以 JSON 格式填写会拼接到 JDBC URL 的查询串中这些字段与插件中的数据传输对象一一对应。VerticaDataSourceParamDTO.java 中定义的数据结构即包含name、note对应描述、host、port、database、userName、password和other对应 Jdbc 连接参数等属性并明确返回数据库类型DbType.VERTICA。端口与数据库名Vertica 的 JDBC 驱动默认服务端口为5433区别于 PostgreSQL 的 5432。在表单中填写时请使用你实际部署的 Vertica 服务端口。数据库名用于定位连接的目标 schema 空间最终会被拼接到 JDBC URL 的路径部分。Jdbc 连接参数JSON 格式「Jdbc connection parameters」接受一个 JSON 对象键值对会被转换并追加到 JDBC URL 末尾。在 VerticaDataSourceProcessor.java 的transformOther方法中可以看到转换逻辑遍历 JSON 中的每个键值对拼接成keyvalue形式。例如填写{ connection_timeout: 30, ssl: true }最终 JDBC URL 会变成jdbc:vertica://VerticaHost:5433/databaseName?connection_timeout30ssltrue测试用例 VerticaDataSourceProcessorTest.java 演示了通过other参数传入serverTimezone等连接属性并最终生成 JDBC URL 的完整过程。需要注意若 JSON 为空或非法连接参数会被忽略仅使用基础 URL。底层实现JDBC URL 与连接构建原理Vertica 数据源的连接由 VerticaDataSourceProcessor 负责构建它是数据源 API 模块中AbstractDataSourceProcessor的实现并通过AutoService(DataSourceProcessor.class)注册为 SPI 服务从而被 DolphinScheduler 的插件机制自动发现。JDBC URL 的组装规则在createConnectionParams方法中可以看到两个关键的拼接步骤VerticaDataSourceProcessor.java基础地址addressjdbc:vertica://{host}:{port}完整 JDBC URLjdbc:vertica://{host}:{port}/{database}对应常量定义在 DataSourceConstants.java 中JDBC_VERTICA jdbc:vertica://。驱动类名与连接校验该插件使用 Vertica 官方 JDBC 驱动相关实现事实如下驱动类名com.vertica.jdbc.Driver见COM_VERTICA_JDBC_DRIVER常量对应 Maven 依赖com.vertica.jdbc:vertica-jdbc声明于 pom.xml连接校验查询select 1见VERTICA_VALIDATION_QUERY常量用于连接池的健康检查密码处理创建连接参数时通过PasswordUtils.encodePassword加密存储获取连接时通过PasswordUtils.decodePassword解密后交给驱动。getConnection方法借助JdbcDriverConnectionProvider基于驱动类名、完整 JDBC URL 与解密后的用户名密码建立真实连接。单元测试 VerticaDataSourceProcessorTest.java 对 address、jdbcUrl 拼接、驱动名、校验查询、数据库类型以及数据源唯一标识verticauserpasswordjdbcUrl均做了断言验证可直接作为接入行为的参考。连接池与客户端插件还提供了两个客户端类VerticaPooledDataSourceClient池化连接客户端和VerticaAdHocDataSourceClient即席连接客户端继承自BaseAdHocDataSourceClient分别服务于任务执行过程中的池化连接复用与临时连接创建场景二者统一通过VerticaDataSourceChannel按需实例化。激活 Vertica 数据源插件非原生内置官方文档明确标注 Vertica 数据源Native Supported: No即二进制发行包默认不包含该数据源所需的驱动依赖需要按以下步骤手动激活。第一步使用插件安装脚本从 3.3.0 版本起DolphinScheduler 的二进制包不再捆绑插件依赖需要通过仓库中的安装脚本下载。在伪集群部署docs/docs/en/guide/installation/pseudo-cluster.md的「Download Plugins Dependencies」一节给出了标准做法bash ./bin/install-plugins.sh 3.3.0该脚本会读取插件清单并从 Maven 中央仓库拉取对应插件及其依赖的 JAR 包。第二步配置插件清单安装脚本默认按 config/plugins_config 中的清单安装全部插件。可以在其中按需裁剪例如只保留 Vertica 数据源与必要的任务插件可将--datasource-plugins--段落精简为--datasource-plugins-- dolphinscheduler-datasource-vertica --end--清单中dolphinscheduler-datasource-vertica一项与插件模块的 artifactId 完全对应安装脚本据此定位并下载正确的 JAR 包。第三步验证与排错安装完成后重启相关服务在「数据源中心」创建 Vertica 数据源并点击「测试连接」。若连接失败重点排查是否已安装dolphinscheduler-datasource-vertica插件依赖缺失时可能抛出ClassNotFoundException此时请检查插件安装目录是否包含vertica-jdbc驱动IP/Host Name、Port默认 5433与Database name是否与 Vertica 服务实际配置一致认证用户的权限是否足够「Jdbc connection parameters」中的 JSON 是否合法非法 JSON 会被忽略。在任务中使用 Vertica 数据源创建成功后Vertica 数据源即可被 SQL 类任务引用。DolphinScheduler 的 SQL 任务dolphinscheduler-task-sql等支持选择数据源类型的任务节点会在任务执行时通过插件化的VerticaDataSourceProcessor建立连接并执行查询。这也意味着 Vertica 可以无缝参与工作流编排例如将 Vertica 中的分析结果作为下游任务如数据导出、告警通知的输入形成完整的分析调度链路。小结关键点结论数据源类型VERTICADbType.VERTICA默认端口5433JDBC URL 格式jdbc:vertica://{host}:{port}/{database}驱动类com.vertica.jdbc.Driververtica-jdbc依赖校验查询select 1原生支持否需通过install-plugins.sh与 config/plugins_config 激活在 DolphinScheduler 中接入 Vertica 的完整路径为配置插件清单 → 运行插件安装脚本 → 在数据源中心填写本文表格中的各项参数并测试连接 → 在 SQL 任务中引用。官方文档与本仓库中的 Vertica 插件源码dolphinscheduler-datasource-vertica可为你提供更进一步的细节参考。【免费下载链接】dolphinschedulerApache DolphinScheduler is the modern data orchestration platform. Agile to create high performance workflow with low-code项目地址: https://gitcode.com/GitHub_Trending/dol/dolphinscheduler创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价