帮你快速理解、总结文档立即下载

实时分库分表任务配置

最近更新时间:2026-09-11 18:35:00
我的收藏

概述

实时分库分表任务用于把多个数据源连接、多个数据库、多张物理分表 的实时变更聚合到 DataBuddy 数据湖仓的同一张目标逻辑表。常见场景如:业务采用了水平分库分表(按 user_id 哈希分布到 8 库 32 表),希望在数据湖仓中合并为单张大表用于分析。本文介绍任务的完整配置流程。

前提条件

在开始本操作前,请确保满足以下条件:
已开通 DataBuddy 服务并完成空间初始化。
当前账号在目标 Workspace 中拥有数据接入相关权限(详见 成员与权限管理)。
已为所有 待接入的物理库创建数据源连接,并通过连通性测试(详见 添加数据源连接)。
已创建 实时集群 计算资源(详见 创建计算资源)。
在来源数据库中已开启 CDC 能力。
所有参与合并的物理分表 Schema 必须一致 ——字段名、类型、主键约束相同。

使用限制

限制项
说明
来源端类型
MySQL、腾讯云 MySQL、TDSQL-C MySQL、PostgreSQL、Oracle、SQL Server
目标端类型
DataBuddy 数据湖仓 Catalog 下的 Iceberg 原生表
计算资源
仅支持 实时集群 计算资源
资源占用
单任务范围 1 ~ 256 CU,步长 1 CU
物理表 Schema
同一张逻辑表对应的所有物理分表 Schema 必须一致
不支持的来源端
Kafka、CKafka、MongoDB(如需将其作为实时来源端,请使用 实时整库多表任务

操作步骤

实时分库分表任务采用向导式配置,包含 基本信息 → 来源 → 目标 → 数据对账 → 运行设置 五个步骤,与整库任务流程一致 ,本文重点描述差异步骤;与整库任务一致的部分通过链接复用 实时整库多表任务配置

步骤 1:进入任务创建页

1. 登录 DataBuddy 控制台
2. 进入工作空间。
3. 进入 数据集成 > 接入任务,点击创建任务
4. 选择需要接入的数据源类型后在接入方式中选择 实时分库分表接入

步骤 2:基本信息设置

填写任务基本信息后点击 下一步 。参数详见 参数说明 >基本信息设置

步骤 3:来源设置

1. 数据来源 :在下拉中选择多个 同类型数据源连接。
2. 配置 逻辑表 映射规则:将多个物理库、物理表声明为同一张逻辑表,作为目标端的合并维度(具体规则参见页面提示)。
3. 选择 读取模式全量+增量仅增量
4. 选择 订阅类型 :插入、更新、删除(至少一项)。
5. 如需设置高级参数,展开 高级设置

步骤 4:目标设置

目标端配置项与运行规则与 实时整库多表任务的目标设置 完全一致:
基本配置 :选择目标 Catalog、Schema 匹配策略、表匹配策略、系统字段。
建表配置 :当前仅支持 Iceberg 原生表,平台按默认字段映射规则生成建表语句,支持用户按需修改字段映射。
映射匹配预览 :每条记录的「源库、源表」会显示逻辑库、逻辑表,其余列与整库任务一致。

步骤 5:数据对账

按需配置数据对账规则。详见 实时同步任务数据对账
提示
分库分表场景下,对账会汇总所有源端物理分表的条数、主键 与目标逻辑表进行比对。如源端 8 库 32 表合并到目标 1 张表,会用 8×32 张物理表的总条数、主键去对比目标 1 张表。

步骤 6:运行设置

DDL 处理策略、任务运行策略、告警通知、高级设置与整库任务一致,详见 运行设置

步骤 7:保存或发布

操作
行为
任务状态
仅创建
保存配置但不发布
未发布
创建并发布
保存并提交发布
待启动
后续启动、重启、停止等运维操作详见 实时同步任务运维监控

参数说明

基本信息设置

参数
说明
是否必填
默认值
接入类型
选择来源端类型
目标端固定为 DataBuddy
接入方式
实时分库分表接入
实时整库多表接入
任务名称
大小写字母、中文、数字、下划线,长度 ≤ 256
${数据源类型}_YYYYMMDD_HHmmss
计算资源
实时同步使用的 实时集群 计算资源
资源占用
CU 数量,范围 1 ~ 256,步长 1
负责人
任务运行账号;需具备目标端访问权限
当前创建用户
任务描述
≤ 200 字符

来源设置

参数
说明
是否必填
数据来源
当前 Workspace 下匹配类型的数据源连接,支持多选
逻辑表
将多个物理库 + 物理表合并为一个逻辑表
读取模式
全量+增量 / 仅增量
订阅类型
插入、更新、删除,至少保留一项
高级设置
数据源专属透传参数
提示
分库分表任务的 运行身份 必须对所有选定数据源连接都有访问权限。任意一个数据源访问失败都会导致任务失败。

目标设置

运行设置

参数完全继承 实时整库多表任务的运行设置,包含 DDL 处理策略、Checkpoint 间隔、最大重启次数、告警渠道与告警类型。

验证结果

操作完成后,您可以通过以下方式确认:
1. 数据集成 > 接入任务 > 实时同步 列表中可看到任务,任务类型 列显示 分库分表
2. 启动任务后,进入运维详情可看到链路详情列表中每个 物理库、物理表 都对应一行映射记录,目标列均指向同一张逻辑表。
3. 数据对账概览中按目标端逻辑表统计 数据一致表数量 ;详情中可查看源端总条数、主键与目标条数、主键的差异。

常见问题

Q:分库分表场景下能合并成多张目标表吗?

A:当前任务以 逻辑表 为合并单位,单个任务可定义多个逻辑表,每个逻辑表对应一组分库分表 → 一张目标表。如需将不同业务模块拆到多个目标表,可以在同一任务中定义多个逻辑表,或拆为多个任务。

Q:源端物理分表的 Schema 出现差异?(个别表多了字段)

A:当前任务建议所有参与合并的物理分表 Schema 完全一致 。如个别表存在微小差异,如某个表多个字段,当前会将按源表字段的并集创建目标表。如果源表的 Schema 差异较大,当前建议:
在源端补齐差异,使所有分表对齐。
或将差异表拆出单独配置一条任务。

Q:源端某个数据源的实例做主备切换会怎样?

A:参考对应数据源章节的「主备切换」说明(如 MySQL 数据源)。整体规则:CDC 链路优先按 GTID 恢复;不支持 GTID 时,可能需要重启任务并指定恢复位点。

Q:分库分表任务支持运行中加表吗?

A:实时分库分表任务的「逻辑表」配置在保存后即固化。如需变更范围,需要暂停任务,编辑后重新发布、启动。

相关文档