数据集成支持单表同步、整库迁移两种数据同步方式,下文将介绍单表实时同步的操作方法。
创建单表同步任务
1. 进入数据集成 > 实时同步页面,单击新建创建单表同步任务。
2. 在弹出的提示框中输入任务名称和备注,选择表单模式或画布模式后(此处 demo 选择“单表模式”),单击“创建并配置”或“仅创建”完成任务创建。
编辑任务
创建完成任务后,可在任务列表页面单击新建的实时同步任务名称进入任务编辑界面,本文以单表模式为例,进行作业配置。
配置 MySQL 信息
参数 | 说明 |
数据源类型 | 可支持多种,此处选择 MySQL。 |
数据源 | 可选择上文“数据源管理”中已注册好的 MySQL 数据源。 |
库 | 单选,支持选择值、输入值/表达式两种方式: 选择值时:可通过下拉列表选择在“数据源管理”中注册的数据库。 输入值/表达式时:可手动输入选定数据源下的已有库。 |
表 | 可多选,支持选择值、输入值/表达式两种方式: 选择值时:可通过下拉列表选择。 输入值/表达式时:可手动输入。 注意: 选择多个表时需保证多表 schema一致,当选定的多个表的 schema 不一致时,将以选中的第一个表的 schema 为准。 |
表主键 | 支持选择值、输入值/表达式两种方式: 选择值时:可通过下拉列表选择。 输入值/表达式时:可手动输入。 注意: 分库分表模式下默认表 schema 一致,当选定的多个表的 schema 不一致时,系统将使用拉取的第一张表的主键。 |
读取模式 | 全量:将同步库内历史数据,全量同步结束后,会继续同步增量数据。 增量:仅从任务启动后的 binlog cdc 位点开始同步数据。 |
过滤操作 | 支持插入、更新和删除三种操作,设置后将不同步指定操作类型的数据。 |
高级设置 |
配置 Doris 信息
参数 | 说明 |
数据源类型 | 可支持多种,此处选择 Doris。 |
数据源 | 可选择上文“数据源管理”中已注册好的 Doris 数据源。 |
库 | 单选,支持选择值、输入值/表达式两种方式: 选择值时:可通过下拉列表选择在“数据源管理”中注册的数据库。 输入值/表达式时:可手动输入选定数据源下的已有库。 |
表 | 单选,支持选择值、输入值/表达式两种方式: 选择值时:可通过下拉列表选择。 输入值/表达式时:可手动输入。 |
过滤操作 | 支持插入、更新和删除三种操作,设置后将不同步指定操作类型的数据。 |
高级设置 |
配置表字段映射
此处可设置来源和目标端数据对应关系,后续任务仅同步具有映射关系的字段之间的数据。
参数 | 说明 |
同名映射 | 即建立源端表、目标表同名字段的映射关系。 |
同行映射 | 即根据相同的行号建立源端表、目标表字段的映射关系。 |
手动映射 | 除同名映射、同行映射的快捷方式外,还支持手动连线的方式进行字段映射。 |
清除映射 | 即清除当前已创建好的映射关系。 |
排序 | 对当前字段映射进行格式化显示,点击后具有连线关系字段将显示为一行。 说明:此排序并不变更实际表内字段顺序。 |
字段配置 | 可单击字段配置手动添加字段名称及类型。 说明: 1. MySQL / Doris 已提供直接获取数据表结构能力,您可以直接使用或查看界面内已展示出的字段。 2. 源端提供 flink 函数对字段进行转换,可在添加字段内选择“函数”类型增加转换字段写入结果中。 |
注意:
未配置映射关系的目标字段内容将为空。
若来源字段类型与目标字段类型间无法转换时,可能会导致任务失败。
MySQL > Doris字段映射说明如下:
类型 | MySQL 数据类型 | 建议转化 Doris 数据类型 | 补充说明 |
| BOOLEAN | BOOLEAN | - |
数值类型 | TINYINT | TINYINT | - |
| SMALLINT | SMALLINT | - |
| MEDIUMINT | INT | - |
| INT | INT | - |
| BIGINT | BIGINT | - |
| UNSIGNED TINYINT | SMALLINT | - |
| UNSIGNED MEDIUMINT | INT | - |
| UNSIGNED INT | BIGINT | - |
| UNSIGNED BIGINT | LARGEINT | - |
| FLOAT | FLOAT | - |
| DOUBLE | DOUBLE | - |
| DECIMAL | DECIMALV3 | - |
日期时间类型 | YEAR | SMALLINT | - |
| TIME | STRING | - |
| DATE | DATEV2 | - |
| DATETIME | DATETIMEV2 | - |
| TIMESTAMP | DATETIMEV2 | TIMESTAMP 字段数据会随着系统时区而改变但 DATETIME 字段数据不会,建议根据业务场景进行时区转化 |
字符串类型 | CHAR | CHAR | - |
| VARCHAR | VARCHAR | 如果 MySQL 字段长度超过65533,建议转化为 string |
| TINYTEXT、TEXT | STRING | - |
| MEDIUMTEXT、LONGTEXT | STRING | MySQL 字段长度超过1048576 字节时可能精度丢失 |
二进制字符串 | TINYBLOB、BLOB | STRING | - |
| MEDIUMBLOB、LONGBLOB | STRING | MySQL 字段长度超过1048576 字节时可能精度丢失 |
| BINARY、VARBINARY | STRING | - |
其他 | JSON | STRING | MySQL 字段大小超过1M时可能精度丢失 |
| SET、BIT | STRING | - |
| ENUM | UNSUPPORTED | 暂不支持 |
配置任务属性
参数 | 说明 |
集成资源组 | 可选择绑定此项目的集成资源组,一个任务仅可绑定一个资源组。 若未购买资源组或未绑定资源组,请先进行绑定操作。 |
JobManager 规格 | 支持0.25、0.5、1、2CU,设置后任务将默认占用此规格。 CU 任务实际占用 CU 数= JobManager 规格 + TaskManager 规格 × 并行度。 |
TaskManager 规格 | 支持0.25、0.5、1、2CU,设置后任务将默认占用此规格 。 CU 任务实际占用 CU 数= JobManager 规格 + TaskManager 规格 × 并行度. |
并发度 | 每个算子的默认并行度,默认1。 任务实际占用CU数= JobManager 规格 + TaskManager 规格 × 并行度. |
checkpoint 间隔 | 当前任务提交的最大 checkpoint 间隔. |
最大重启次数 | 设置在执行过程中发生故障时任务最大的重启阈值,若运行中重启次数超过此阈值,任务状态将置为“失败”。设置范围为[-1,100], 阈值为0表示不重启,-1 表示不限制最大重启次数. |
高级设置 |
任务保存与提交
1. 配置完成后,单击页面左上角的保存按钮完成配置保存,再单击提交按钮完成作业启动。
2. 作业启动前,会对必要配置进行校验,请确认无误后再提交。