DolphinScheduler 是一个分布式、可扩展的工作流调度程序平台,以其强大的容错性和易用性而闻名。本文为您介绍如何使用 DolphinScheduler 连接 ByteHouse 进行数据查询分析。
说明
使用 DolphinScheduler 连接 ByteHouse 时,当前支持以下三种方式连接:
说明
由于 DolphinScheduler 没有自带 MySQL 的驱动程序,使用此种方式时,您需要参考下文手动下载驱动并移动到 DolphinScheduler 的指定目录。
数据源 | 说明 | 建议版本/注意事项 |
|---|---|---|
ClickHouse数据源 | DolphinSchduler绝大部分版本中均支持ClickHouse的数据源。若无特殊的数据类型需求,更建议您使用此种数据源进行连接 | DolphinScheduler 版本:v3.1.9 |
MySQL数据源 | DolphinSchduler绝大部分版本中均支持MySQL的数据源。如果您使用ByteHouse前使用的均是MySQL协议的数据产品,建议保持MySQL数据源不变。 | MySQL 驱动版本:8.0.33,MySQL驱动下载链接 |
ByteHouse数据源 | 含 ByteHouse 驱动的 DolphinScheduler 安装包。 说明 在该安装包中,ByteHouse 的驱动会有滞后性,请您按需更新 master-server、worker-server、api-server 的 libs 目录下的 driver-java-1.1.57-all.jar 文件,可以在该官网中下载最新的jar。 | Dolphin Scheduler 版本:v3.1.9定制化安装包 |
说明 如您使用了火山引擎 EMR 中的 DolpinScheduler,并且您需要使用 ByteHouse 数据源,请提工单联系 ByteHouse 团队进行支持。 | 可提供定制化 Java 依赖包 | |
开源或者已有的 DolphinScheduler | 可提供定制化 Java 依赖包 |
登录并进入 ByteHouse 控制台后,在顶部租户管理的基本信息页面,查看网络组配置,确认已绑定 VPC,并绑定了公网域名。
进入顶部租户管理的参数设置页面,查看已设置了默认计算组,并确保此计算组是正在运行的状态,未被停止。后续对接 ByteHouse 后的数据查询等操作,即会使用此处配置的默认计算组。
IAM 用户使用 API Key 作为连接密码,您可进入顶部租户管理的连接信息页面,在 API Key 模块新建一个 API key,并将 API Key 保存至本地,用于后续的配置使用。
说明
在使用之前,请提前准备好 Dolphin scheduler v3.1.2 或以上版本环境。以下为简单的安装步骤示例。
说明
出于演示目的,以下将使用独立部署环境作为操作示例。操作示例仅作演示参考,切勿直接应用于生产环境。
Docker 安装:
docker run --name dolphinscheduler-standalone-server -p 12345:12345 -p 25333:25333 -d apache/dolphinscheduler-standalone-server:3.1.2
二进制安装:
tar -xvzf apache-dolphinscheduler-*-bin.tar.gz cd apache-dolphinscheduler-*-bin bash ./bin/dolphinscheduler-daemon.sh start standalone-server
登录 DolphinScheduler 主页,如 http://localhost:12345/dolphinscheduler/ui/login,并填写账号与用户名。安装后的默认用户名/密码是:admin/dolphinscheduler123。
单击顶部 Security 页签进入 Security 页面后,单击 Create Tenant,创建一个新的租户。
单击顶部 DataSource 页签,进入数据源页面,单击 Create DataSource,创建数据源。
您可根据业务需要选择创建以下三种数据源中的一种,后续均可使用对应数据源连接 ByteHouse。
参数 | 使用 IAM 用户连接 |
|---|---|
Datasource | 选择 BYTEHOUSE。 |
Datasource Name | 自定义数据源名称。 |
IP | 配置为 ByteHouse 的网络域名,格式为: |
Port | 数据库端口号,配置为固定取值:19000。 |
User Name & Password | 登录 ByteHouse 数据库的用户名和密码。
|
Database Name | 配置为 ByteHouse 已创建的数据库名称。 |
jdbc connect parameters | 使用 ByteHouse 数据源时,无需再配置额外的连接参数。 |
下载 MySQL 驱动,并移动到 DolphinScheduler 指定目录。
standalone-server/libs/standalone-server/。// For Docker Installation docker cp ~/Downloads/mysql-connector-j-8.0.33.jar {DOCKER_CONTAINER_ID}:/opt/dolphinscheduler/libs/standalone-server/ // For Binary Installation cp ~/Downloads/mysql-connector-j-8.0.33.jar standalone-server/libs/standalone-server
重启 DolphinScheduler。
// For Docker Installation // Stop Container docker stop {DOCKER_CONTAINER_ID} // Start Container docker start {DOCKER_CONTAINER_ID} // For Binary Installation // Stop Server bash ./bin/dolphinscheduler-daemon.sh stop standalone-server // Start Server bash ./bin/dolphinscheduler-daemon.sh start standalone-server
新建 MySQL 数据源。
参数 | 使用 IAM 用户连接 |
|---|---|
Datasource | 选择 MySQL。 |
Datasource Name | 自定义数据源名称。 |
IP | 配置为 ByteHouse 的网络域名,格式为: |
Port | 数据库端口号,配置为固定取值:3306。 |
User Name & Password | 登录 ByteHouse 数据库的用户名和密码。
|
Database Name | 配置为 ByteHouse 已创建的数据库名称。 |
jdbc connect parameters | 在连接参数中配置 SSL 开关参数,打开 SSL 开关。
注意 ByteHouse 需要加密认证,从而保护数据安全,因此您需打开 SSL,否则后续连接时会报错:
|
参数 | 使用 IAM 用户连接 |
|---|---|
Datasource | 选择 ClickHouse。 |
Datasource Name | 自定义数据源名称。 |
IP | 配置为 ByteHouse 的公网域名,格式为: |
Port | 数据库端口号,配置为固定取值:8123。 |
User Name & Password | 登录 ByteHouse 数据库的用户名和密码。
|
Database Name | 配置为 ByteHouse 已创建的数据库名称。 |
jdbc connect parameters | 在连接参数中配置 SSL 开关参数,打开 SSL 开关。
注意 ByteHouse 需要加密认证,从而保护数据安全,因此您需打开 SSL,否则后续连接时会出现如下报错: |
完成数据源创建后,后续您即可使用数据源连接 ByteHouse 进行数据查询分析。以下以一个简单操作作为示例。
SQL 类型的工作流节点,并将节点拖拽到工作流画布中,自定义配置工作流节点的名称,例如:ByteHouseSQLSELECT。