• 沒有找到結果。

如果系统表结构发生了变化或者有表级别调整,则需要重新开启CDC配置,配置步骤 如下:

1. 先关闭CDC配置,请根据实际情况填写schema和name。

EXEC sys.sp_cdc_disable_table @source_schema = N'dbo', @source_name = 'baris', @capture_instance ='all'

2. 重新开启CDC配置,请根据实际情况填写schema和name。

开启表级别配置。

IF EXISTS(SELECT 1 FROM sys.tables WHERE name='baris' AND is_tracked_by_cdc = 0) BEGIN

EXEC sys.sp_cdc_enable_table

@source_schema = 'dbo', -- source_schema

● 源端数据源已开启CDC功能,根据不同的数据源类型和CDC实现模式,具体操作 请参考:

– 配置Oracle CDC(LogMiner)(推荐使用)

– 配置Oracle CDC(XStream)

– 配置MySQL CDC(Binlog)

– 配置SQL Server CDC

● 源端数据源中CDC归档日志的保留时间需要大于集成任务解析的日志时间,否则

● FDI支持单个CDC任务中配置多个Schema下的多个数据库表,实现统一的全量或 增量采集能力。

● 组合任务在运行过程中支持添加表,选择重启后可对新表执行全量采集或者增量 采集。

● 源端数据源:

– 大文本类型和二进制类型的字段不支持同步。

– 表名为小写的数据表不支持同步。

– 无主键的数据表不支持同步。

如果表中数据较少,建议通过每天采集一次全量数据的方式进行采集,目前 Postgresql类型表支持写入前清空数据。对于从Oracle数据库采集数据,但表 中没有主键的情况,可以利用Oracle内部的RowId作为主键,RowId一般是使 用数字、字母生成18位长度的字符串。

– 名称为数据库自身保留字的数据表或数据字段不支持同步。

– truncate方式删除的数据不支持同步,整表方式删除的数据不支持同步。

● 源端MySQL数据源:

如果MySQL数据库使用的是MGR集群模式,在接入源端数据源时,必须直接连接 主节点,不能连节route节点。

如果MySQL数据库中数据量特别巨大,在首次执行数据同步时可能会连接数据库 超时,可以通过修改MySQL数据库的超时参数interactive_timeout和

wait_timeout来规避。

操作步骤

1. 登录ROMA Connect控制台,在“实例”页面单击具体实例上的“查看控制 台”,进入实例控制台。

2. 在左侧的导航栏选择“数据集成 FDI > 任务管理”,然后单击页面的“创建组合 任务”。

3. 在创建组合任务页面中配置任务基本信息。

4-72 任务基本信息

参数 配置说明

任务名称 任务创建后,任务名称不可修改。建议您按照一定的命名 规则规划任务名称,能帮助您快速识别和检索任务。

描述 建议按照任务的实际用途补充任务描述,方便区分不同任 务。任务描述在创建完成后可修改。

任务标签 添加任务标签,用来对任务进行分类,方便用户快速查 询。可选择已有的标签进行关联,如果没有可点击添加按 钮,添加新标签,新标签会在任务保存时被保存,再创建 任务时可直接搜索该标签。

操作类型 数据库日志操作类型,包含插入,删除、更新。例如,操 作任务选择插入和更新,那么将只获取数据库中插入和更 新的日志信息。

参数 配置说明

同步已有数据 启动组合任务时,如果有新添加到任务中的表映射,此开 关用于如下控制:

● 启用此开关,则任务会先全量同步新增表的存量数据,

全量同步结束后接着增量同步。

● 禁用此开关,则任务不会同步新增表的存量数据,只会 同步任务启动后的增量数据。

4. 配置映射关系,即源端和目标端的数据源信息。

4-73 源端和目标端配置信息

参数 配置说明

源端 实例名称 选择当前正在使用的ROMA Connect实例。

集成应用 选择源端数据源所属的集成应用。

数据源类型 选择源端的数据源类型。

源端数据源类型仅支持MySQL、Oracle、SQL Server。

目的端 实例名称 选择当前正在使用的ROMA Connect实例,源端实 例配置后目标端自动关联,无需配置。

集成应用 选择目标端数据源所属的集成应用。

数据源类型 选择目标端的数据源类型。

目标端数据源类型仅支持Kafka、MySQL、Oracle、

PostgreSQL、SQL Server。

5. 配置源端和目标端的数据表映射关系,您可以通过自动映射或手动添加的方式配 置数据表映射关系。

说明

● 目标端数据字段长度应大于等于源端数据字段的长度,否则会导致同步后的数据丢失。

● 当前一个任务中最多支持1000个数据表的同步。

● 当目标端数据类型为“Kafka”时,目标端显示的表为虚拟表,无需编辑数据表的映射 关系,只需编辑表中的字段映射关系即可。

– 自动映射。

i. 单击“自动Mapping”,界面自动生成数据表的映射关系。

ii. 单击表映射关系后的“编辑”,可以根据需要修改数据表的映射关系。

iii. 单击表映射关系后的“查看映射”,弹出数据表的字段映射配置窗口,

可根据需要修改数据表字段的映射关系或者添加mapping映射。

目标端数据字段长度应大于等于源端数据字段的长度,否则会导致同步 后的数据丢失。

– 手动添加表映射。

i. 在表映射关系栏中单击“手动添加表映射”,手动添加数据表的映射关 系。

ii. 在映射关系中选择“源端表名”和“目标端表名”。

若数据库中的数据表较多,您可以通过添加过滤条件来筛选源端和目标 端的数据表。

单击过滤条件输入框,选择“目标端表过滤条件”或“源端表过滤条 件”,输入要筛选的数据表,然后单击“ ”添加过滤条件。

○ 对于Oracle数据库,填写格式:Schema名.数据表名;对于其他关 系型数据库,填写格式:数据库名.数据表名。

○ %表示任意字符串,例如数据表“roma%”表示所有以roma开头的 数据表。

○ 输入的过滤条件对大小写敏感。

○ 可同时添加一个目标端表过滤条件和一个源端表过滤条件。

iii. 单击表映射关系后的“查看映射”,弹出数据表的字段映射配置窗口。

用户可根据实际情况单击“编辑”修改已有的字段及字段映射关系。

用户也可单击“添加mapping映射”添加要同步的字段及字段映射关 系,添加mapping映射配置项说明如下:

○ 目标字段名:选择目标表中对应的字段名。例如ID。

○ 源端字段名/常量:选择源端表对应的字段名/常量,例如CODE。

○ 前缀:配置同步字段的前缀内容。

○ 后缀:配置同步字段的后缀内容。

配置前缀和后缀示例,例如字段内容为“test”,前缀为tab1,后缀为 1,那么同步后字段为“tab1test1”。

4-38 配置字段映射关系

6. 配置异常数据存储。

说明

仅当目标端数据类型为MySQL、Oracle、PostgreSQL、SQL Server时可配置,在配置异常 数据存储前,需要提前完成OBS数据源的接入配置,具体请参见接入OBS数据源。

在每次任务执行过程中,如果源端的某些数据符合集成条件,但因为网络抖动或 其他异常等原因,无法顺利集成到目标端数据源,则ROMA Connect可以将这些 数据以文本文件的形式存储在OBS中。

4-74 异常数据存储信息

参数 配置说明

源数据类型 当前仅支持选择“OBS”。

应用 选择对应的应用。

数据源名称 选择已配置的OBS数据源。

Path 填写异常数据要存储到OBS数据源的对象名。Path的值不 能以斜杠(/)结尾。

7. 配置完成后,单击“保存”,完成组合任务的创建。

说明

在组合任务启动后,若出现以下场景,可以在任务列表中单击组合任务后的“更多 > 重置 同步进度”,根据实际情况选择重置的日期和时间,重置同步进度后,任务会重新进行数 据的同步,然后再实时检测增量数据并同步。

● 需要组合任务支持源端新增数据表和数据字段的同步。

● 源端CDC归档日志被清理导致组合任务同步失败。

● MySQL由于未采用GTID模式,发生了主备切换,导致组合任务同步失败。

仅当“任务状态”为“停止”时,才能进行重置同步进度操作。

4.5 启停数据集成任务

概述

数据集成任务创建后,“任务状态”为“停止”状态,此时任务不会执行,需先启动 任务。

● 定时任务启动后,ROMA Connect按照任务计划进行数据集成。首次执行时,会 把所有符合条件的源端数据集成到目标端,后续根据任务配置,集成符合条件的 全量数据或只集成增量数据。

● 实时任务启动后,ROMA Connect会不断检测源端数据变更。首次执行时,会把 所有符合条件的源端数据集成到目标端,后续若检测到新增数据,则将其集成到 目标端。

说明

● 若两个数据集成任务分别使用了不同版本的MRS数据源(包含MRS Hive、MRS HDFS和 MRS HBase),且该MRS数据源均开启了Kerberos认证,则这两个数据集成任务不能同时运 行,否则会导致集成任务运行失败。

● 任务列表中的“开始调度时间”为已创建且未启动的定时任务调度计划的开始生效时间。

已启动的任务,如果需要进行其他操作,例如修改等,需要先停止任务才可进行相关 操作。