概述
表到表同步是最常见的离线同步链路:将结构化数据源(如 MySQL、PostgreSQL、Oracle、SQL Server 等)的表数据按调度计划同步到 DataBuddy 数据湖仓的目标表。本文以 MySQL 同步到 DataBuddy Catalog 表为例介绍配置流程。
前提条件
在开始本操作前,请确保满足以下条件:
已开通 DataBuddy 服务并完成空间初始化。
当前账号在目标 Workspace 中拥有 数据接入相关角色 (详见 成员与权限管理)。
已创建用于数据接入的计算资源(数据接入型)。
已创建并测试通过来源端数据源连接(详见 添加数据源连接)。
目标端 Catalog 已规划好;如目标 Schema 或表不存在,可通过本任务的「一键建表」自动创建(需要 Catalog 创建权限)。
使用限制
限制项 | 说明 |
计算资源 | 仅支持「平台集群」计算资源 |
来源端类型 | |
目标端类型 | DataBuddy 数据湖仓 Catalog 下的表(Iceberg 原生表) |
切割键 | 仅整型字段;建议主键或索引列 |
并发数 | > 1 时必须配置切割键 |
操作步骤
步骤 1:进入任务创建页
1. 登录 DataBuddy 控制台。
2. 进入 数据接入 > 任务管理 ,点击 创建同步任务 。
步骤 2:填写基础信息
填写任务名称、同步方式、责任人、描述(详见 创建单表同步任务 通用配置)。点击 下一步 。
步骤 3:配置来源端
参数 | 说明 | 是否必填 |
数据源类型 | 选择来源数据库类型,如 MySQL | 是 |
数据源连接 | 选择已注册的数据源;下拉列表内可点击 新增数据连接 跳转创建 | 是 |
来源端数据库 | 支持 选择数据库 与 输入数据库名称 两种模式;可插入参数变量 | 是 |
来源端数据表 | 支持 选择数据表 与 输入数据表名称 两种模式;可插入参数变量 | 是 |
添加分库分表 | 同源类型可添加多条数据源 + 库表 | 否 |
切割键 | 整型字段;并发 > 1 时必填,否则保存时将提示补全 | 视并发数 |
筛选条件 | 标准 WHERE 条件(无需 where 关键字);支持时间参数与调度参数 | 否 |
高级设置 | 数据源专属参数(详见对应数据源章节) | 否 |
提示
库表选择模式
模式 | 行为 | 适用场景 |
选择数据库 / 数据表 | 字面量精确选择 | 同步固定的库表 |
输入数据库名称 / 数据表名称 | 可通过规则表达式匹配,也可用参数变量 | 多分表(如 table_[0-99])或者按照读取当日分区数据进行同步的场景 |
分库分表配置
点击 添加分库分表 可叠加多条同源类型的数据源,每条独立配置:数据源连接、来源端数据库、来源端数据表。已添加的源支持删除。
要求:所有源的表 Schema 一致。
步骤 4:配置目标端
参数 | 说明 | 是否必填 | 默认值 |
目标端 Catalog | 选择目标 Catalog | 是 | - |
目标端 Schema | 在所选 Catalog 下指定 Schema | 是 | — |
目标端 Table | 指定目标表;不存在时点击 创建目标表 来即时创建目标表 | 是 | — |
写入模式 | 是 | append | |
高级设置 | 目标端扩展参数 | 否 | — |
创建目标表
点击下拉列表,点击 创建目标表 进入建表弹窗:
1. 选择用于执行建表语句的计算资源(交互式集群类型);资源未启动时提交后会自动启动。
2. 平台基于来源端 Schema 生成默认建表 SQL,允许在编辑器中调整。
3. 点击 提交 :
成功 → 弹窗关闭,提示「目标表 ${目标表名称} 创建成功」。
失败 → 弹窗保留,提示具体失败原因,可调整 SQL 后重试。
注意:
部分数据源不支持自动生成建表 DDL,可手动写入建表 SQL。
写入模式
模式 | 说明 |
append | 插入模式;主键冲突时写入失败 |
overwrite | 替换模式;主键冲突时先删除原行再插入新行 |
upsert | 更新模式;主键冲突时更新指定字段 |
步骤 5:配置字段映射
字段映射默认按同名、同行规则填充,支持以下操作:
操作 | 说明 |
同名映射 | 来源 / 目标同名字段自动对齐 |
同行映射 | 按行号顺序对齐 |
清除 | 清空所有映射 |
置顶已映射 | 已映射字段排在前面 |
移动 | 拖动字段前面的移动图标,可以移动行 |
映射开关 | 点击「映射」列的箭头开关,可以切换该行的映射关系 |
字段操作:
操作 | 说明 |
添加字段 | 手动新增一行字段映射 |
删除字段 | 手动删除一行字段映射 |
字段类型调整 | 调整字段类型,类型支持:字段、常量、函数、参数;当选择字段,则可以选择来源端字段类型如「string」 |
各种字段类型的设置:
字段:可选择一个来源端字段类型,如「string」、「int」等;
常量:可输入常量值作为字段名,如「1」、「true」等;
函数:可输入数据库函数作为字段名,如「concat(first_name,last_name)」、「sum(amount)」等;
参数:可输入参数变量作为字段名,如「${plan_date}」,参数的定义可在 创建单表同步任务 》任务参数 中设置;
步骤 6:配置运行设置
详见:创建单表同步任务 》运行设置。
步骤 7:调试、保存、发布
详见:创建单表同步任务 》调试、保存、发布。
常见问题
Q:保存任务时提示「需要先设置切割键」?
A:并发数 > 1 时必须配置切割键。请在 来源 & 目标 步骤补充切割键,或将并发数调整为 1。
Q:建表失败,提示权限不足?
Q:分库分表场景如何确保所有源连接都通过连通性测试?
A:选择多个数据源时,需要分别测试每个连接。
Q:调试运行会真实写入数据吗?
A:是 。调试与发布运行使用相同的搬运链路,会按当前配置真实写入目标端。请在调试前确认目标表与写入模式,避免覆盖业务数据。
Q:任务编辑后多久生效?
A:保存只生成新版本,不影响调度。需要点击 发布 将当前版本设为发布版本,下一次工作流调度才会使用新版本。
相关文档
工作流概述