背景信息
实时单表同步通过 binlog 日志实时监控及同步源端数据。单表同步采用固定字段同步的方式,仅将在任务配置中指定映射关系的来源字段数据同步至目标端。单表任务支持画布、表单两种配置模式,覆盖 MySQL、Kafka、Mongo、SqlSever、Hive、DLC 等数据源。
条件与限制
1. 已配置好来源及目标端的数据源以备后续任务使用。详情请参见 数据源管理与配置方式。
2. 已购买数据集成资源组。详情请参见 配置集成资源组。
3. 已完成数据集成资源组与数据源的网络连通。详情请参见 集成连通性与使用规划。
4. 已完成数据源环境准备。您可以基于您需要进行的同步配置,在同步任务执行前,授予数据源配置的账号在数据库进行相应操作的权限。
5. 若数据源配置的数据库账号不具备读写权限将导致任务运行失败,请根据实际读写场景配置具备相应权限的账号。
操作步骤
步骤一:创建实时同步任务
进入配置中心 > 实时同步任务页面后,单击新建单表同步任务。
在弹窗中配置任务基本信息,单击确定后即可进入任务配置页面。任务创建参数及说明如下:
参数 | 说明 |
任务名称 | 必填项 命名规则:仅支持中文、英文、数字和下划线 长度:不可超过100字符 |
任务模式 | 画布模式:主要采用可视化拖拽方式,适用于包含清洗环节、多对多数据链路。默认项 表单模式:适用于单表至单表离线同步,适用于 ODS 层无需数据清洗环节的数据同步 |
描述 | 选填项 |
说明:
当前版本,画布模式仅支持包含一个写入节点;单个读取节点仅支持连接一个下游节点。
任务中不可存在未连线的孤立节点,否则任务将提交失败。
数据节点默认命名规则为:${节点类型}_${编码}。
步骤二:选择任务配置模式
任务配置目前提供了表单和画布两种配置模式:
表单模式适用于贴源层数据同步,仅支持使用源端函数进行数据转换。
画布模式提供转换节点,支持在数据同步过程加入定制化的复杂数据转换。
配置模式1:画布模式
在列表中单击任务名称即可进入任务配置页面,置界面总体包含任务操作栏、数据节点菜单、链路配置区三个部分:
![](https://qcloudimg.tencent-cloud.cn/image/document/e05d46e2f691a3b178cbf31b45693ff9.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/e05d46e2f691a3b178cbf31b45693ff9.png)
配置模式2:表单配置
![](https://qcloudimg.tencent-cloud.cn/image/document/8f2b9d71425878d53d69c6ea513fcaaa.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/8f2b9d71425878d53d69c6ea513fcaaa.png)
序号 | 参数说明 | |
1 | | 任务操作栏。对整个任务生效的操作,包括保存、提交、测试运行、停止、解锁、前往运维等。 |
2 | 2-1 | 数据来源及目标:配置任务读取和写入的数据源、库、表以及读写方式。 |
| 2-2 | 字段映射:设置来源和目标端数据对应关系,后续任务仅同步具有映射关系的字段之间的数据。 |
3 | | 任务配置,此配置信息对全局任务生效: 离线任务包括任务属性和调度配置两类,涵盖了基本信息、任务使用资源、数据通道控制等。 实时任务包括任务属性配置,提供任务资源并发度、CU 用量配置等。 |
步骤三:数据节点配置
创建的新任务后在任务列表中单击任务名称即可进入任务画布或表单界面。画布模式下,可从右侧节点菜单直接拖拽数据节点及连线,系统将根据节点间连线关系自动创建数据流链路。
配置读取节点
读取节点配置包括基本信息、数据来源、数据字段三部分。
![](https://qcloudimg.tencent-cloud.cn/image/document/11ff1a3c640811ddf916b82f1da8a6e2.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/11ff1a3c640811ddf916b82f1da8a6e2.png)
基本信息
节点名称不可为空,且单个任务内不可存在同名的数据节点。
数据来源
配置需要读取的库表对象以及同步方式等信息。
数据字段
根据配置的数据表对象,系统支持默认拉取字段元数据信息以及手动配置字段两种方式。
默认拉取:针对 MySQL、Hive、PostgreSQL 等类型,系统已支持根据其库表信息自动拉取元数据字段及类型,无需手动编辑。
手动配置:文件(如 HDFS、COS)以及列式存储数据源(如 HBase、Mongo)等数据源系统不支持自动拉取元数据,可单击字段配置手动添加字段名称及类型。读取节点还额外支持配置时间参数以及常量。
![](https://qcloudimg.tencent-cloud.cn/image/document/a8265b6f5c108108e0733b251bf8669f.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/a8265b6f5c108108e0733b251bf8669f.png)
说明
时间参数字段:仅离线任务的读取节点支持配置时间参数字段,常用将实例运行时间值写入表的一级或多级分区 。
常量字段:仅读取节点支持配置常量字段。常量字段可在来源与目标表字段个数不一致的情况下固定将某个常量值写入目标表。
配置转换节点(可跳过)
转换节点配置包括基本信息、转换规则、数据字段三部分。其中,转换转换节点必须作为读取节点下游,在创建与读取节点连线后系统将自动获取上游节点内字段信息,同时根据转换规则完成数据转换。
基本信息
配置节点名称信息。节点名称不可为空,且单个任务内不可存在同名的数据节点。
转换规则
配置字段或数据级转换规则,其中字段信息继承自上游节点,在与上游节点连线后系统将自动获取上游节点内字段信息。
数据字段
默认拉取上游节点全部数据字段用于后续写入节点映射。
配置写入节点
写入节点配置包括基本信息、数据来源、数据字段、字段映射四部分。写入节点将根据连线关系,将上游数据内容写入目标对象内。
![](https://qcloudimg.tencent-cloud.cn/image/document/d94c88cfce08a4af30c4cd1a742a3df8.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/d94c88cfce08a4af30c4cd1a742a3df8.png)
基本信息
节点名称不可为空,且单个任务内不可存在同名的数据节点。
数据来源
配置需要读取的库表对象以及同步方式等信息。
数据字段
根据配置的数据表对象,系统支持默认拉取字段元数据信息以及手动配置字段两种方式。
默认拉取:针对 MySQL、Hive、PostgreSQL 等类型,系统已支持根据其库表信息自动拉取元数据字段及类型,无需手动编辑。
手动配置:文件(如 HDFS、COS)以及列式存储数据源(如 HBase、Mongo)等数据源系统不支持自动拉取元数据,可单击字段配置手动添加字段名称及类型。
字段映射
写入节点相对于读取节点需额外配置字段映射关系。字段映射关系旨在通过连线的方式指定目标字段内容的来源,支持同名映射、同行映射、以及手动连线三种方式配置来源与目标节点间关系。
![](https://qcloudimg.tencent-cloud.cn/image/document/ad3d33762bef76755f72585a0f84776b.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/ad3d33762bef76755f72585a0f84776b.png)
说明
配置字段映射的前提为当前写入节点有已连线的来源(读取节点或转换节点)。
未配置映射关系的目标字段内容将为空。
若来源字段类型与目标字段类型间无法转换,可能会导致任务失败。
步骤四:实时任务属性配置
实时任务属性配置包括基本属性和资源配置两部分:
![](https://qcloudimg.tencent-cloud.cn/image/document/5440afcea7554997ae2245a6902f7f33.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/5440afcea7554997ae2245a6902f7f33.png)
类别 | 参数 | 说明 |
任务属性 | 任务名称/类型 | 展示当前任务名称及类型基本信息 。 |
| 责任人 | 对此任务负责的一个或多个空间成员名称,默认为任务创建者。 |
| 描述 | 展示当前任务备注信息。 |
资源配置 | 集成资源组 | 指定当前任务使用的集成资源组名称,一个任务仅可绑定一个资源组。 |
| 资源分配方式 | 集成资源支持多种分配方式: 固定分配:此方式下不区分任务同步阶段,全量及增量同步过程中始终为当前任务分配固定资源量。此方式可避免任务间资源抢占,适用于任务运行过程中数据可能存在较大变动的场景。 按同步阶段分配:按全量和增量不同同步阶段分配计划的资源使用量,以节约整体资源用量。 ![]() |
| JobManager | 支持0.25、0.5、1、2C,设置后任务将默认占用此规格。 CU 任务实际占用 CU 数= JobManager 规格 + TaskManager 规格 × 并行度。 |
| TaskManager | 支持0.25、0.5、1、2CU,设置后任务将默认占用此规格 。 CU 任务实际占用 CU 数= JobManager 规格 + TaskManager 规格 × 并行度。 |
| 并行度 | 每个算子的默认并行度。 |
运行策略 | checkpoint 间隔 | 设置 checkpoint 间隔时间,支持分钟/秒级。 |
| 最大重启次数 | 设置在执行过程中发生故障时任务最大的重启阈值,若运行中重启次数超过此阈值,任务状态将变为失败。设置范围为[-1,100], 阈值为0表示不重启,-1 表示不限制最大重启次数。 |
步骤五:任务提交
![](https://qcloudimg.tencent-cloud.cn/image/document/80ec4bda6db8728be24dea01e5c47d2a.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/80ec4bda6db8728be24dea01e5c47d2a.png)
实时同步任务在配置完成后可配置运行策略并提交到生产环境中运行。目前可在任务配置页面支持保存、提交、锁定/解锁以及前往运维操作。
序号 | 参数 | 说明 |
1 | 保存 | 保存当前任务配置信息,包括数据节点配置、节点连线、任务属性和任务调度配置。 |
2 | 提交 | 将当前任务提交至生产环境,提交时根据当前任务是否有生产态任务可选择不同运行策略。 若当前任务无生效的线上任务,即首次提交或线上任务处于“失败”状态,可直接提交。 若当前任务存在“运行中”或“暂停”状态的线上任务需选择不同策略。停止线上作业将抛弃之前任务运行位点,从头开始消费数据,保留作业状态将在重启后从之前最后消费位点继续运行。 ![]() 说明: 单击立即启动任务将在提交后立即开始运行,否则需要手动触发才会正式运行。 |
3 | 锁定/解锁 | 默认创建者为首个持锁者,仅允许持锁者编辑任务配置及运行任务。若锁定者5分钟内没有编辑操作,其他人可点击图标抢锁,抢锁成功可进行编辑操作。 |
4 | 前往运维 | 根据当前任务名称快捷跳转至任务运维页面。 |
任务提交检测
![](https://qcloudimg.tencent-cloud.cn/image/document/9c1f88e55abcc43a228f3dc44813fd1f.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/9c1f88e55abcc43a228f3dc44813fd1f.png)
参数 | 说明 |
检测存在异常 | 支持跳过异常直接提交,或者终止提交。 |
检测仅存在警告及以下 | 可直接提交。 |
提交结果
![](https://qcloudimg.tencent-cloud.cn/image/document/25aed7e2e05853791a41e77f3209930b.png)
![](https://qcloudimg.tencent-cloud.cn/image/document/25aed7e2e05853791a41e77f3209930b.png)
任务提交中:
展示提交进度百分比。
提示用户勿刷新/关闭页面,文案:当前任务已提交成功,可前往运维进行任务状态及数据管理。
任务提交结果-成功:
展示任务提交成功结果。
提示成功及后续跳转:文案 “提交成功,10秒后将跳转至当前任务运维详情页面” “当前任务已提交成功,可前往运维进行任务状态及数据管理”。
展示任务提交失败原因:
失败原因返回。
后续步骤