
金仓异构数据同步软件Kingbase FlySync(以下简称:KFS)是一款能够在异构数据平台间实现实时、增量数据同步的产品。
面向异地容灾、数据集中共享与分发、数据分析平台建设、云迁移等业务场景。KFS能够帮助用户实现数据在不同数据平台间可任意流转,并保证数据不丢失,状态可监控,流转数据量可统计、同步结果可校验。
部署模式多样 实践案例丰富
KFS使用场景介绍
面向不同的使用场景,KFS具备“一对一”、“一对多”、“数据集中”多种部署结构及大量的实践案例。
一对一


一对多

该部署模式主要面向数据分发场景,用于单个源端数据源向多个目标端数据源进行数据同步的场景;比如某些垂直性行业,需要共享总部数据到多个下级单位时,可以采用一对多的拓扑结构。详见>>(案例丨16地市共享,延迟<1s:建设全省市场主体库,Kingbase FlySync来帮助!)
数据集中

该部署模式面向数据集中场景,用于多个数据库的数据向一个数据库中汇集。比如数据仓库建设场景中,需要将多个关系型数据库的数据汇集到同一个数据仓库中时,可以采用多对一的拓扑结构。详见>>(实现东莞卫健委多个独立系统异构数据源数据实时同步,人大金仓KINGBASE解决方案深度拆解)
服务不间断 数据不丢失
KFS可靠性介绍
KFS工作原理如下:

源端KFS程序主要负责数据的采集、存储和传输;目的端KFS程序主要负责数据的接收、存储和装载入库。KFS对外表现出的可靠性能力主要体现为两个:服务不断和数据不丢。
服务不断
服务不断,指的是发生任何异常情形,KFS都能够保证不中断数据同步业务。典型的异常情形和KFS的处理方式为:
数据库故障

KFS具备自动重连重试的功能,配置参数如下:

KFS所在机器故障

KFS具备开机自启动能力,当硬件掉电重启时,KFS能够随系统同时启动,在无需人工干预的情况下,即可恢复数据同步。
KFS程序本身发生异常

KFS提供了独立的守护进程,无需单独设置即可以在程序本身发生异常退出时,将同步服务及时拉起。能够处理的异常情形包括但不限于系统内存溢出、堆栈溢出、人为误操作等。
源端和目标端网络链路故障

针对网络故障,KFS会不断的重新请求新数据,直到网络恢复为止。
数据不丢
KFS数据不丢的能力主要通过其各个阶段的断点续传来实现,具体包括:
数据采集阶段

KFS数据采集阶段依据数据库内部的日志偏移识别机制,在封装KFS统一存储格式KUFL时标记当前日志偏移量;当遇到故障需要恢复时,可以通过日志偏移量来决定从什么地方继续采集增量数据。
网络传输阶段

KFS使用统一存储格式KUFL进行数据传输,在KUFL中加入编号信息,当遇到故障需要恢复时,仅需要从特定的KUFL编号开始继续进行数据传输。
目标端入库阶段

KFS以事务为单位进行数据入库,每入库一个事务,会同步记录当前的KUFL编号,当发生故障恢复时,直接接着上一次的KUFL继续入库。
结语
数据实时同步作为业务系统生产的重要环节,出现故障异常停机时将严重影响上层业务的正常运行。KFS通过重连重试、开机自启、自动恢复等能力保证在多种异常发生时,数据同步服务都能够有效且快速的恢复;并且通过在数据流转的各环节支持断点续传,真正的做到服务不断、数据不丢。





