You need to enable JavaScript to run this app.
文档中心
ByteHouse云数仓版

ByteHouse云数仓版

复制全文
下载 pdf
ELT工具
DolphinScheduler
复制全文
下载 pdf
DolphinScheduler

DolphinScheduler 是一个分布式、可扩展的工作流调度程序平台,以其强大的容错性和易用性而闻名。本文为您介绍如何使用 DolphinScheduler 连接 ByteHouse 进行数据查询分析。

背景信息

说明

  • 定制化安装包说明:为支持 DolphinScheduler 通过Bytehouse数据源连接 ByteHouse,我们提供了定制化安装包,已在开源3.1.9版本中对 ByteHouse 驱动做了兼容处理。
  • 如您的 DolphinScheduler 是非 ByteHoue 提供的安装包或其他版本,需联系ByteHouse团队进行支持。感谢您的配合
  • 由于 Jar 包兼容性问题,强烈建议在生产部署前,务必在独立测试环境中完成充分验证,确认无误后再上线,以规避潜在业务风险。

数据源

使用 DolphinScheduler 连接 ByteHouse 时,当前支持以下三种方式连接:

  • 通过 ClickHouse 数据源(推荐):使用 Clickhouse 标准的连接协议/连接器进行连接。若需操作 Bitmap64 等 ByteHouse 特有数据类型,建议选用 ByteHouse 数据源;其余场景优先使用 ClickHouse 数据源。
  • 通过 ByteHouse 数据源:使用 ByteHouse 提供的连接插件进行连接,更推荐此种方式,使用此种方式时,您需要参考下文下载 ByteHouse 的连接插件。
  • 通过 MySQL 数据源:使用标准的连接协议/连接器进行连接。

    说明

    由于 DolphinScheduler 没有自带 MySQL 的驱动程序,使用此种方式时,您需要参考下文手动下载驱动并移动到 DolphinScheduler 的指定目录。

注意事项

数据源

说明

建议版本/注意事项

ClickHouse数据源

DolphinSchduler绝大部分版本中均支持ClickHouse的数据源。若无特殊的数据类型需求,更建议您使用此种数据源进行连接

DolphinScheduler 版本:v3.1.9
DolphinScheduler-3.1.9版本下载链接

MySQL数据源

DolphinSchduler绝大部分版本中均支持MySQL的数据源。如果您使用ByteHouse前使用的均是MySQL协议的数据产品,建议保持MySQL数据源不变。

MySQL 驱动版本:8.0.33,MySQL驱动下载链接
DolphinScheduler 版本:v3.1.9
DolphinScheduler-3.1.9版本下载链接

ByteHouse数据源

含 ByteHouse 驱动的 DolphinScheduler 安装包。

说明

在该安装包中,ByteHouse 的驱动会有滞后性,请您按需更新 master-server、worker-server、api-server 的 libs 目录下的 driver-java-1.1.57-all.jar 文件,可以在该官网中下载最新的jar。

Dolphin Scheduler 版本:v3.1.9定制化安装包

apache-dolphinscheduler-3.1.9-bin.tar.gz
未知大小

火山EMR中的 DolphinScheduler。

说明

如您使用了火山引擎 EMR 中的 DolpinScheduler,并且您需要使用 ByteHouse 数据源,请提工单联系 ByteHouse 团队进行支持。

可提供定制化 Java 依赖包

开源或者已有的 DolphinScheduler
说明:如您使用了其他环境中 DolpinScheduler,并且您需要使用 ByteHouse 数据源,请联系 ByteHouse 团队进行支持

可提供定制化 Java 依赖包

ByteHouse 侧配置

step1 配置网络域名

登录并进入 ByteHouse 控制台后,在顶部租户管理的基本信息页面,查看网络组配置,确认已绑定 VPC,并绑定了公网域名。

Image

  • 如果未绑定 VPC 和公网域名,需参考设置网络信息文档完成绑定配置。
  • 完成绑定后,可单击复制公网域名,用于后续对接参数配置。

step2 设置默认计算组

进入顶部租户管理的参数设置页面,查看已设置了默认计算组,并确保此计算组是正在运行的状态,未被停止。后续对接 ByteHouse 后的数据查询等操作,即会使用此处配置的默认计算组。

Image

step 3 获取连接串的用户及密码信息

IAM 用户使用 API Key 作为连接密码,您可进入顶部租户管理的连接信息页面,在 API Key 模块新建一个 API key,并将 API Key 保存至本地,用于后续的配置使用。

Image

说明

  • 当前仅支持 IAM 用户连接,暂不支持数据库账号连接。
  • 一个子账号最多支持创建两个 API Key,如果此前您有已创建好的 API key,也可直接使用已创建好的 API Key。

DolphinScheduler 侧配置

step1 准备工作

  1. 在使用之前,请提前准备好 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
      
    • 二进制安装:

      1. 获取安装包,您可根据实际需要选择下载常规版本或含 ByteHouse 驱动版本的 DolphinScheduler 安装包,下载方式可参考上文的注意事项章节。
      2. 解压后启动独立部署的服务器。
        tar -xvzf apache-dolphinscheduler-*-bin.tar.gz
        cd apache-dolphinscheduler-*-bin
        bash ./bin/dolphinscheduler-daemon.sh start standalone-server
        
  2. 登录 DolphinScheduler 主页,如 http://localhost:12345/dolphinscheduler/ui/login,并填写账号与用户名。安装后的默认用户名/密码是:admin/dolphinscheduler123。
    Image

  3. 单击顶部 Security 页签进入 Security 页面后,单击 Create Tenant,创建一个新的租户。
    Image

step2 创建数据源

单击顶部 DataSource 页签,进入数据源页面,单击 Create DataSource,创建数据源。
Image
您可根据业务需要选择创建以下三种数据源中的一种,后续均可使用对应数据源连接 ByteHouse。

方式 1:ByteHouse 数据源

Image

参数

使用 IAM 用户连接

Datasource

选择 BYTEHOUSE。

Datasource Name

自定义数据源名称。

IP

配置为 ByteHouse 的网络域名,格式为:tenant-{TENANT_ID}-{REGION}-public.bytehouse.volces.com,您可以在 ByteHouse 控制台的租户管理>基本信息>网络信息中获取。详情请参见 步骤二:配置网络信息。

Port

数据库端口号,配置为固定取值:19000。

User Name & Password

登录 ByteHouse 数据库的用户名和密码。

  • User Name 默认为 bytehouse。
  • 密码为 <API_Key>,可以在 ByteHouse 控制台>租户管理>连接信息中获取的 API Key。详情请参见获取 API Key。

Database Name

配置为 ByteHouse 已创建的数据库名称。

jdbc connect parameters

使用 ByteHouse 数据源时,无需再配置额外的连接参数。

方式 2:MySQL 数据源

  1. 下载 MySQL 驱动,并移动到 DolphinScheduler 指定目录。

    1. 单击 MySQL驱动下载链接 下载驱动,已验证 8.0.33 版本,建议您使用此版本。
    2. 将下载的驱动 jar 包移动到指定目录。本示例的独立部署场景下,需移动到: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
      
  2. 重启 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
    
  3. 新建 MySQL 数据源。
    Image

    参数

    使用 IAM 用户连接

    Datasource

    选择 MySQL。

    Datasource Name

    自定义数据源名称。

    IP

    配置为 ByteHouse 的网络域名,格式为:tenant-{TENANT_ID}-{REGION}-public.bytehouse.volces.com,您可以在 ByteHouse 控制台的租户管理>基本信息>网络信息中获取。详情请参见 步骤二:配置网络信息。

    Port

    数据库端口号,配置为固定取值:3306。

    User Name & Password

    登录 ByteHouse 数据库的用户名和密码。

    • User Name 默认为 bytehouse。
    • 密码为 <API_Key>,可以在 ByteHouse 控制台>租户管理>连接信息中获取的 API Key。详情请参见获取 API Key。

    Database Name

    配置为 ByteHouse 已创建的数据库名称。

    jdbc connect parameters

    在连接参数中配置 SSL 开关参数,打开 SSL 开关。

    {
    "enabledTLSProtocols": "TLSv1.2"
    }
    

    注意

    ByteHouse 需要加密认证,从而保护数据安全,因此您需打开 SSL,否则后续连接时会报错:

    Caused by:
    javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
    

方式 3:ClickHouse 数据源

Image

参数

使用 IAM 用户连接

Datasource

选择 ClickHouse。

Datasource Name

自定义数据源名称。

IP

配置为 ByteHouse 的公网域名,格式为:tenant-{TENANT_ID}-{REGION}-public.bytehouse.volces.com,您可以在 ByteHouse 控制台的租户管理>基本信息>网络信息中获取。详情请参见 步骤二:配置网络信息。

Port

数据库端口号,配置为固定取值:8123。

User Name & Password

登录 ByteHouse 数据库的用户名和密码。

  • User Name 默认为 bytehouse。
  • 密码为 <API_Key>,可以在 ByteHouse 控制台>租户管理>连接信息中获取的 API Key。详情请参见获取 API Key。

Database Name

配置为 ByteHouse 已创建的数据库名称。

jdbc connect parameters

在连接参数中配置 SSL 开关参数,打开 SSL 开关。

{
 "ssl": "true",
 "sslmode": "NONE"
}

注意

ByteHouse 需要加密认证,从而保护数据安全,因此您需打开 SSL,否则后续连接时会出现如下报错:java.net.SocketException: Unexpected end of file from server或
Unknown server response type: 72

step3 结果验证

完成数据源创建后,后续您即可使用数据源连接 ByteHouse 进行数据查询分析。以下以一个简单操作作为示例。

  1. 创建一个新的项目。
    Image
  2. 创建一个新的工作流。单击该项目,然后转到 Workflow > Workflow Definition > Create Workflow,来创建一个工作流。
    Image
  3. 创建一个 SQL 节点。
    选择一个 SQL 类型的工作流节点,并将节点拖拽到工作流画布中,自定义配置工作流节点的名称,例如:ByteHouseSQLSELECT。
    Image
  4. 在节点的 Datasource types 中选择希望使用的数据源类型,在 Datasource instances 中选择已创建的数据源,在 SQL Statement 中写入查询语句,完成配置后单击 Confirm。
    Image
  5. 回到工作流页面后单击 Save,配置工作流名称等参数后,保存工作流。
    Image
  6. 运行 SQL 工作流。
    Image
    如果有弹窗提示您需要设置运行参数,可保持默认参数,单击 Confirm。
    Image
  7. 查看工作流运行状态与运行日志。
    • 您可以在 Task Instance 页面中查看工作流运行状态。
      Image
    • 在 Operation 列也查看详细运行日志。
      Image
      Image
最近更新时间:2026.06.12 11:17:25
这个页面对您有帮助吗?
有用
有用
无用
无用