配置系统间数据集成
前提条件
- 确保业务系统数据库所在网络与ROMA Connect的网络互通。
- 确保源端和目标端业务系统的数据库为ROMA Connect支持的数据源类型
数据集成支持的数据源请参见数据集成支持的数据源。
- ROMA Connect具备向目标端数据库写入数据的权限。
配置数据集成任务
- 创建集成应用。
ROMA Connect实例中的资源都要归属到某个集成应用下,在创建其他资源前,您需要确保有一个集成应用。若已有可用的集成应用,可跳过此步骤。
- 登录ROMA Connect控制台,在“实例”页面单击实例上的“查看控制台”,进入实例控制台。
- 在左侧的导航栏选择“集成应用”,单击页面右上角的“创建集成应用”。
- 在创建集成应用弹窗中填写集成应用的“名称”,然后单击“确认”。
- 接入数据源。
配置ROMA Connect接入业务系统的数据库,确保可以正常从数据库读取和写入数据。
不同类型数据源的接入配置不同,此处以Kafka作为源端数据库,MySQL作为目标端数据库为例进行说明,其他类型数据库请参考接入数据源。
接入源端Kafka数据源:
- 在左侧的导航栏选择“数据源管理”,单击页面右上角的“接入数据源”。
- 在接入数据源页面的“默认数据源”页签下,选择“Kafka”类型的数据源,然后单击“下一步”。
- 在页面中配置数据源的连接信息。
表1 数据源连接信息 参数
配置说明
数据源名称
填写数据源的名称,根据规划自定义。建议您按照一定的命名规则填写数据源名称,方便您快速识别和查找。
集成应用
选择数据源所归属的集成应用。
描述
编辑数据源的描述信息。
连接地址
填写Kafka的连接地址和端口号。
如果Kafka有多个副本(Broker),可单击“添加地址”填写多个连接地址。
是否SSL
ROMA Connect与Kafka的连接是否使用SSL认证加密。
SSL用户名/应用Key
仅当“是否SSL”选择“是”时需要配置。
SSL认证所使用的用户名。
SSL密码/应用Secret
仅当“是否SSL”选择“是”时需要配置。
SSL认证所使用的用户密码。
- 完成数据源接入配置后,单击“开始检测”,进行数据源的连接测试。
- 若测试结果为“数据源连接成功!”,则继续下一步。
- 若测试结果为“数据源连接失败!”,则检查数据源状态和数据源连接参数配置,然后单击“重新检测”,直到连接成功为止。
- 单击“创建”,完成数据源的接入。
接入目标端MySQL数据源:
- 在“数据源管理”页面单击右上角的“接入数据源”。
- 在接入数据源页面的“默认数据源”页签下,选择“MySQL”数据源,然后单击“下一步”。
- 在页面中配置数据源的连接信息。
表2 数据源连接信息 参数
配置说明
数据源名称
填写数据源的名称,根据规划自定义。建议您按照一定的命名规则填写数据源名称,方便您快速识别和查找。
集成应用
选择数据源所归属的集成应用。
描述
编辑数据源的描述信息。
连接模式
选择连接数据库模式。
- 默认:由系统根据用户配置自动拼接数据源的连接字符串。
- 专业:由用户自己输入JDBC格式的数据源连接字符串。
连接地址
仅当“连接模式”选择“默认”时需要配置。
填写数据库的连接IP地址和端口号。
数据库名
仅当“连接模式”选择“默认”时需要配置。
填写要接入的数据库名。
编码格式
仅当“连接模式”选择“默认”时可配置。
数据库所使用的编码格式。
超时时间
仅当“连接模式”选择“默认”时可配置。
连接数据库的超时时间,单位为秒。
连接字符串
仅当“连接模式”选择“专业”时需要配置。
填写MySQL数据库的JDBC格式连接串,例如:jdbc:mysql://{hostname}:{port}/{dbname}。
- {hostname}为数据库的连接地址。
- {port}为数据库的连接端口号。
- {dbname}为要接入的数据库名。
用户名
填写连接数据库的用户名。
密码
填写连接数据库的用户密码。
- 完成数据源参数配置后,单击“开始检测”,进行数据源的连接测试
- 若测试结果为“数据源连接成功!”,则继续下一步。
- 若测试结果为“数据源连接失败!”,则检查数据源状态和数据源连接参数配置,然后单击“重新检测”,直到连接成功为止。
- 单击“创建”,完成源端数据源的接入。
- 创建数据集成任务。
ROMA Connect通过数据集成任务,读取源端数据库中的数据,进行数据结构转换后,写入目标端数据库中。
- 在左侧的导航栏选择“数据集成 FDI > 任务管理”,单击页面的“创建普通任务”。
- 在创建任务页面中配置任务基本信息。
表3 任务基本信息 参数
配置说明
任务名称
填写任务的名称,根据规划自定义。建议您按照一定的命名规则填写任务名称,方便您快速识别和查找。
描述
填写任务的描述信息。
集成模式
选择数据集成的模式。
- 定时:指数据集成任务根据任务计划,在指定的时间执行任务,将源端数据集成到目标端。
- 实时:指数据集成任务不断检测源端数据的变更,并实时将新增的数据集成到目标端。
使用Kafka作为源端数据源时仅支持实时任务,此处选择“实时”。
任务标签
添加任务标签,用来对任务进行分类,方便用户快速查询。
企业项目
选择任务所属的企业项目,保持默认设置“default”。
- 配置源端数据信息。
表4 源端信息 参数
配置说明
源端实例
选择当前正在使用的ROMA Connect实例。
源端集成应用
选择源端Kafka数据源所属的集成应用,在接入数据源时已配置。
源端数据类型
选择“Kafka”。
数据源名称
选择接入数据源中已配置的Kafka数据源。
Topic名称
选择要读取数据的Topic名称。
是否解析
获取到的源端数据是否由ROMA Connect做进一步的数据解析。
- 若选择是,则ROMA Connect根据配置的解析规则,对获取到的源端数据解析后再集成到目标端。
- 若选择否,则ROMA Connect会直接透传获取到的源端数据,并集成到目标端。
本实践中需要对源端数据进行数据结构转换后,再写入目标端数据库,此处选择“是”。
数据根字段
指从源端获取到的JSON或XML格式数据中,元数据集上层公共字段的路径。此处不设置。
数据类型
选择从Kafka数据源获取的数据格式类型,需要与Kafka实际存储的数据格式一致。
消费偏移设置
选择集成最早获取的消息数据还是最新获取的消息数据。
元数据
指从源端获取到的JSON或XML格式数据中,要集成到目标端的每一个底层key-value型数据元素。
- 别名:对元数据的自定义名称。
- 类型:元数据的数据类型,需要与源端数据中对应字段的数据类型一致。
- 解析路径:由于数据根字段不设置,此处填写元数据的完整路径。
以JSON格式数据{"a": {"b": "xx", "c": "xx"}}为例,参数b和c为底层数据元素,其解析路径分别为a.b和a.c。
时区
选择Kafka数据源使用的时区,以便ROMA Connect识别数据的时间戳,默认为GMT+8:00时区(北京时间)。
- 配置目标端数据信息。
表5 目标端信息 参数
配置说明
目标端实例
配置为当前正在使用的ROMA Connect实例,源端实例配置后目标端自动关联,无需配置。
目标端集成应用
选择目标端MySQL数据源所属的集成应用,在接入数据源时已配置。
目标端数据类型
选择“MySQL”。
数据源名称
选择接入数据源中已配置的MySQL数据源。
目标端表
选择集成数据要写入MySQL数据库中的数据表。
选择数据表后,单击“选择表字段”,可以选择要写入数据的列字段。
批次号字段
选择目标表中类型为String并且字段长度大于14的字段作为批次号字段,且该批次号字段不能和Mapping信息中的目标字段重复。
该字段值将为一个随机数,用来标识同一批次的数据,同一批次插入的数据具有相同的批次号,表示这些数据是同一批次插入的,可以用来定位或者解析回滚。
是否清空表
开启后,每次调度任务会先清空目标端表。
- 配置源端到目标端的数据映射规则。
单击“自动Mapping”,自动建立源端和目标端数据字段间的映射规则。如果两端的数据表字段不一致,您需要为目标端字段选择对应的源端字段。
- 单击“保存”,完成数据集成任务的创建。
启动数据集成任务
数据集成任务创建后,“任务状态”为“停止”状态,此时任务不会执行,需先启动任务。
- 实时任务启动后,ROMA Connect会不断检测源端数据变更。首次执行时,会把所有符合条件的源端数据集成到目标端,后续若检测到新增数据,则将其集成到目标端。
- 定时任务启动后,ROMA Connect按照任务计划进行数据集成。首次执行时,会把所有符合条件的源端数据集成到目标端,后续根据任务配置,集成符合条件的全量数据或只集成增量数据。