干货 | 使用并行装载助力Kingbase FlySync提升数据入库性能

2022-04-01 00:00:00 数据 并行 方式 入库 异地

Kingbase FlySync是什么

Kingbase FlySync 是人大金仓面向异地容灾、数据集中一共享与分发、数据分析平台建设、云迁移等场景,推出的在异构数据平台间实现实时、增量数据同步的产品,主要采用物理日志解析技术,帮助用户实现数据在不同数据平台间可任意方向实时移动流转的问题,并保证此过程中数据不丢失、状态可监控、流转数据量可统计,具有如下优点:


1、异构数据同步

  • 统一开放、模块化的架构

  • 支持多种异构源(Oracle、SQL Sever、MySQL)和同步目标(Oracle、Kingbase ES、MySQL),并且在持续新增中。


2、数据同步实时性

  • 大数据量 “毫秒” 级同步


3、生产系统“零”干扰


  • 源端增量数据采集使用日志硬解析的方式,对源端数据库零干扰


4、高可靠

  • 以事务为单位,保证交易完整性和一致性

  • 多机制断点续传保障

  • 软件、节点故障自动恢复


5、图形化数据校验

  • 提供同步结果自动比对能力,自动生成同步报告

  • 保证数据的一致性并有据可依


6、提供可视化监控看板

  • 轻松查看拓步、同步状态、速率进度信息等



Kingbase FlySync的使用场景


1、零停机升级

数据库系统升级时,通常需要面临或长或短时间的数据库停机,有了Kingbase FlySync的助力,可以保证数据库升级时零停机。


2、异地双活

为了大限度的保障业务持续运行,通常会要求数据能够异地冗余。Kingbase FlySync与生俱来的高性能、低目标库干扰、支持双向的实时同步特性,可以保障异地数据库同时对外提供服务。


3、查询分流

同异地双活一样,Kingbase FlySync可以将主库数据实时复制到1个或者多个副本数据库中,并对外提供只读服务,降低业务系统对主数据库的查询压力,从而提高系统的整体负载能力。


4、数据分析挖掘

数据分析挖掘场景中,通常需要多种源端数据汇集到统一的数据仓库,常规的做法是采用ETL工具进行批量数据加载,数据延迟在分钟或者小时级别。有了Kingbase FlySync后,可以将数据汇集的时效性提高到亚秒级,分析结果更加实时和有效。


5、数据分发

塔状的分布式业务系统,比如省政府数据到地市之间的数据分发,通常涉及到不同种类的数据源之间的数据交换,Kingbase FlySync可以轻松完成不同数据源的对接,助力数据快速流转。


Kingbase FlySync并行装载参数的原理


Kingbase FlySync整体上使用采集、传输、加载三步走的方式进行增量数据交换。此次介绍的并行装载能力主要作用在数据装载阶段,可以充分利用目标机器的多核优势,加快数据入库。


1、传统的数据入库方式

从源端传输过来的KUFL增量数据,采用1读1写的串行流水线方式进行入库。


2、开启并行参数后的入库方式

使用1读N写的方式,使用多个数据库连接,将数据并行入库。此种方式将针对不同表的操作智能分配到不同的写队列中,大限度的保证数据一致性的同时,提高入库性能。


Kingbase FlySync并行实战

1、测试模型

本次测试采用预先堆积 4.2 GB KUFL中间文件,分别使用不同的写线程数进行入库,分析在哪种场景下入库性能高。


2、传统入库方式性能验证

CPU使用率维持在64%左右


终的性能指标为4.2*1024/110=39MB/s


3、开启2写方式的入库性能

CPU使用率维持在86%左右


终的性能指标为4.2*1024/63=68MB/s


4、开启3写方式的入库性能

CPU使用率维持在210%左右


终的性能指标为4.2*1024/22=195MB/s


5、终结果

从实际测试结果可以得知,开启1读3写的并行入库方式后,性能指标从39MB/s 提升到了195MB/s,是原来的5倍。在此种模式下,每天的入库数据量可以达到 16TB,可以满足极度苛刻环境下的数据同步性能要求。

来自:https://mp.weixin.qq.com/s/0I1lcf-8mWccchafbHvSvA


相关文章