【技术实现步骤摘要】
数据同步方法、装置、计算机设备和存储介质
[0001]本申请涉及大数据
,特别是涉及一种数据同步方法、装置、计算机设备、存储介质和计算机程序产品。
技术介绍
[0002]ClickHouse是一个用于联机分析处理(Online Asynchronous Processing,OLAP)的列式数据库管理系统,是当前使用最广泛的分析形数据库。使用ClickHouse进行数据管理的前提是要实现将数据从源数据库中同步至ClickHouse中,即将数据同步至ClickHouse中。
[0003]目前将数据同步至ClickHouse方案通常是依赖ClickHouse官方提供的JDBC(Java DataBase Connectivity,Java数据库连接)包同步数据,然而,由于JDBC是基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)协议写入数据的,对待同步至ClickHouse的数据的压缩效果甚微,当需要同步大体量的数据时,效率低下,并且,JDBC包同步的数据先集中到一台机器(记 ...
【技术保护点】
【技术特征摘要】
1.一种数据同步方法,其特征在于,应用于分布式计算框架,所述方法包括:获取待同步数据;对所述待同步数据进行数据分片处理,得到多个分片数据块;获取目标表的表结构数据,并根据所述目标表的表结构数据,将各所述分片数据块转换为符合ClickHouse存储要求的目标数据块,所述目标表为ClickHouse服务器中存储所述待同步数据的数据表;将各所述目标数据块按照所属分片写入至各分片对应的ClickHouse服务器。2.根据权利要求1所述的方法,其特征在于,根据所述目标表的表结构数据,将各所述分片数据块转换为符合ClickHouse存储要求的目标数据块包括:调用ClickHouse的ClickHouse
‑
local,按照所述目标表的表结构数据,将各所述分片数据块转换为符合ClickHouse存储要求的目标数据块。3.根据权利要求1所述的方法,其特征在于,所述得到多个分片数据块之后,还包括:将多个分片数据块写入至预设的临时目录中;根据所述目标表的表结构数据,将各所述分片数据块转换为符合ClickHouse存储要求的目标数据块包括:根据所述目标表的表结构数据,将临时目录中的各所述分片数据块转换为符合ClickHouse存储要求的目标数据块;所述将各所述目标数据块按照所属分片写入至各分片对应的ClickHouse服务器包括:将所述临时目录中各所述目标数据块,按照所属分片写入至各分片对应的ClickHouse服务器。4.根据权利要求3所述的方法,其特征在于,所述将所述临时目录中各所述目标数据块,按照所属分片写入至各分片对应的ClickHouse服务器包括:将所述临时目录中各所述目标数据块,按照所属分片传输至各分片对应的ClickHouse服务器的分离目录,所述分离目录为与ClickHouse服务器的目标表相关联的目录;将所述分离目录中的各所述目标块加载至相关联的目标表中;所述将所述临时目录中各所述目标数据块,按照所属分片写入至各分片对应的ClickHouse服务器之后,还包括:删除所述临时目录中的目标数据块。5.根据权利要求1至3任意一项所述的方法,其特征在于,所述获取待同步数据包括:接收数据同步作业消息,所述数据同步作业消息携带数据同步作业配置文件;解析所述数据同步作业配置文件,得到数据同步作业配置参数,所述数据同步作业配置参数包括数据源和数据处理模式;基于所述数据处理模式,从所述数据源获取待同步数据,所述数据处理模式包括流式数据处理模式或批量数据处理模式。6.根据权利要求5所述的方法,其特征在于,所述数据同步作业配置参数还包括分片规则;所述对所述待同步数据进行数据分片处理,得到多个分片数据块包括:获取ClickHouse集群的分片数量;根据所述分片规则和所述分片数量,将所述待同步数据切分为多个分片数据块,所述
分片数据块的数量与所述分片数量相同。7.根据权利要求6所述的方法,其特征在于,所述根据所述分片规则和所述分片数量,将所述待同步数据切分为多个分片数据块包括:提取所述待同步数据的创建时间;将所述创建时间转换为符合预设格式的目标数,基于所述目标数对所述分片数量进行取余处理,确定所述待同步数据的所属分片;将所述待同步数据写入至所述待同步数据的所属分片中。8.一种数据同步装...
【专利技术属性】
技术研发人员:韩伟,
申请(专利权)人:建信金融科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。