1.概述编辑
1.1 版本说明
FineDataLink 版本 | 功能变动 |
---|---|
4.0.27 |
|
4.0.28 | 支持Clickhouse作为写入端 |
4.0.29 |
|
4.0.30 | MySQL、Oracle、SQL Server、PostgreSQL 支持仅增量同步 |
4.1.4 | SAP HANA、DB2支持作为读取端 |
点击展开更多 | ||||||||||||||||||
|
完成数据源、数据库环境、管道任务环境准备配置后,可创建管道任务,将多种类型的数据源输入输出链路进行组合,进行单表或整库数据的实时同步。
本文介绍如何创建数据实时同步任务,并在创建完成后查看任务运行情况。
2. 前提条件编辑
数据源环境已准备完成:基于需要设置数据管道任务的数据源,授予数据源配置的账号在数据库进行相应操作的权限。详情请参见:数据源环境准备。
已完成数据源配置。需要在使用数据管道进行实时同步任务配置前,配置好需要同步的源端和目标端数据库,以便在同步任务配置过程中,通过选择数据源名称来控制同步任务,详情参见:配置数据连接
注:由于 clickhouse 数据库的特殊性,collapsingMergeTree 表的合并不定时,会出现重复数据。所以使用实时同步的表时,需要在使用前手动触发一次合并,或者在查询 SQL 使用集合方式,计算时去除掉重复数据的影响。详情参见:clickhouse 作为写入端时字段映射说明
3. 操作步骤编辑
示例以 MySQL 数据同步为例。
将 test_1 数据库中的「S订单」、「hd_xiaoshou」、「hn_xiaoshou」、「hb_xiaoshou」数据表实时同步至 demotest 数据库中。
3.1 配置传输队列
配置传输队列,其实就是配置暂存来源库数据,方便目标库写入数据的「数据管道」,目前是通过 Kafka 实现的。
详情参见:配置传输队列
3.2 新建任务
点击数据管道,新建文件夹管理管道任务,如下图所示:
在文件夹下创建管道任务,如下图所示:
注:创建的任务可自由移动至指定文件夹,如下图所示:
可将任务复制到指定文件夹或者目录位置,如下图所示:
同时选择指定的文件夹,在右侧可看到文件夹下所有的管道任务,并且可以调整管道任务展示形式(卡片式、列表式),如下图所示:
3.3 选择数据来源
首先选择需要数据同步的来源数据。
进入任务设置界面,选择来源数据库,然后点击「数据源权限检测」,可以查看数据源是否有日志读取权限,如下图所示:
并选择同步类型:
注:对于历史数据量很大的情况,历史数据往往要通过特定的高速装载方式或者分多次多批导入。管道任务仅使用在在全量同步完成后,接续开始增量同步,此时用户可以使用仅增量同步类型。
同步类型 | 增量同步起点 | 说明 |
---|---|---|
存量+增量同步 | - | 先对所有存量数据同步,然后持续同步新增变化。 任务初次运行时,将完整运行全量同步+增量同步;任务中断或暂停后,再次运行时,如果所有表的全量同步都已完成,则将从增量的断点开始,直接运行增量同步。 |
仅增量同步 | 选择「任务启动时间」作为起点时,将以任务启动时间作为解析开始时间。 对于使用目标数据源推荐方式导入历史数据时,没有筛选条件的历史全量数据导入,可以设置增量同步起点为任务执行开始时间。 | 任务仅包含增量阶段,任务初次运行时,将按照配置的起始时间开始进行增量同步。 支持数据源:MySQL、Oracle、SQLServer、PostgreSQL 配置后生效时间点精度为:yyyy-MM-dd HH:mm:ss.000,精确到毫秒,时区以数据库的时区为准。 注1:对于PostgreSQL 数据源,仅支持任务启动时间作为起点。 注2:SAP HANA 仅支持任务启动时间作为起点。 |
选择「自定义时间」作为起点时,可指定增量起始时间,默认为空,必填,允许指定到秒。 可选时间的起点是检测用户数据库日志最早的时间。 对于使用目标数据源推荐方式导入历史数据时,基于时间筛选的历史数据导入,可以设置增量同步起点为最早的筛选时间。 |
由于在开发管道任务的过程中想要批量选择多张表,可以使用「快速选表」,批量选择需要同步的数据表,将已经存在的「S订单」、「hd_xiaoshou」、「hn_xiaoshou」、「hb_xiaoshou」数据表选到「要同步的表」中,如下图所示:
3.4 选择数据去向
详情请参见:配置管道任务-选择数据去向
3.5 设置表字段映射
详情请参见:配置管道任务-表字段映射
3.6 设置管道控制
详情请参见:配置管道任务-管道控制
3.7 保存和运行任务
点击「保存并运行」,即可保存并运行管道任务,如下图所示:
注:历史版本升级至 4.0.27 后,原先暂存列表中的任务兼容方式如下:
兼容的内容 | 策略 | |
---|---|---|
原先暂存列表中的任务 | 若任务列表中有对应暂存列表的任务 | 升级上来原先任务名加后缀「-暂存」,任务为「草稿」状态,排在已运行过的任务后 |
若任务列表中没有对应暂存列表的任务 | 升级上来为「草稿」状态,排在列表最后 |
此时点击管道任务,即可看到任务执行情况,如下图所示:
3.8 效果查看
此时即可在目标数据库 已经实现了数据表的实时同步,如下图所示: