开发者学堂课程【全链路数据治理-全域数据集成:2.2离线同步能力介绍】学习笔记,与课程紧密连接,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/1082/detail/16060
2.2离线同步能力介绍
离线同步能力介绍
接下来我们来介绍离线同步的功能,离线同步提供了一套抽象化的数据抽取插件与数据写入插件,并基于此框架设计了一套简化版的中间数据传输格式,实现任意结构化,半结构化数据源之间的数据传输,支持单表同步至单表,分布分表数据同步至单表等场景。同时,它也支持复杂网络环境下的数据同步,包含云数据库、本地或者ecs自建数据库或者非压的云数据库等环境下的数据同步。在配置之前,同样需要保证网络的联通,在数据开发data studio当中配置离线同步任务,可以支持单表同步至单表,分库分表同步至单表,如果你需要将多库多表数据同步至目标端的多表,需要使用数据集成主站当中的整库离线同步解决方案,同步解决方案的使用也可以参考帮助文档。
使用权限,离线同步暂不支持跨时区同步数据,如果同步任务中同步的数据源与使用的datawall资源组不在同一个时区,会导致同步的数据有误。
接下来是离线同步的离线调度的能力,离线同步依托了dataverse强大的调度能力,可以为您实现离线任务的周期性自动调度执行,结合dataverse的调度参数,可以实现增量数据和全量数据写入到目标表对应分区调度参数,结合dataverse的补数据功能,可实现一套任务配置,批量将历史数据同步至目标数据库或数据仓库指定表或者表指定的分区,具体可以参考这沃的调度参数与补数据的使用。
离线同步的场景与配置,这里分别有单表或者分库分表同步至单表的场景,以及全量和增量的数据同步,在这里会有向导模式以及其他方式不同的同步方式,那接下来我们会针对不同的同步方式进行说明,第一个向导模式其实就是dataverse数据集成当中提供的向导式的开发引导,可以通过可视化的填写和下一步的引导,帮助您快速完成数据同步任务的配置工作。向导模式学习,成本比较低,但是无法支持一些高级的功能。
第二个是脚本模式,我们可以提供脚本式的开发引导,直接通过编写数据库的JSON脚本来完成数据同步开发,适合一些高级的用户,学习成本相对比较高。
第三个是通过dataverse离线同步创建API,通过API的调用会实现数据集成离线任务的创建,dataverse opened API是依赖dataverse企业版相关的能力。最后是dataverse离线同步相关的这个附加能力,那首先我们能够实现字段映射关系与赋值,在同步任务配置过程中,您可以通过字段映射来定义源端字段与目标端字段的读取和写入关系,源端某字段数据将会根据字段映射关系写入目标端对应的字段中。同时,我们也支持多种的字段映射方式,也支持目标表字段的一个数制。
第二点是我们作业速率上限的控制,我们可以在界面上进行控制数据同步过程相关的属性,比如说支持通过并发控制来限制数据集成读取和写入数据库的最大并发数,同时,支持通过限流控制来保持数据库的保护,这个数据库的读写压力,在不限流的情况下,任务将所在配置的并发数的限制基础上提供硬件环境下最大的传输性能。
第三点是分布式的任务执行,部分数据源会支持分布式的任务执行,可以将任务进行切片,分散到多个执行节点上进行并发。另外,这种分布式的模式也对机器的碎片资源和资源利用率非常的友好。
第四是我们对于张书记的定义,刚才在实时同步篇已经做了一些简单的介绍,大家可以参考上一篇章,最后我们附表上就是离线同步支持的数据源以及对应的能力,大家可以参考自己使用的数据源类型以及数据同步的方式,然后看一下在我们的数据集成还是data studio的入口。