数据同步方法、设备、系统及介质技术方案

技术编号:38907128 阅读:15 留言:0更新日期:2023-09-22 14:25
本申请涉及数据库技术领域,公开了一种数据同步方法、设备、系统及介质;其中,所述方法包括:获取数据同步参数;其中,所述数据同步参数至少包括会话过程的会话时区;基于源数据库的日志数据,确定所述会话过程关联的源数据;其中,所述源数据包括所述源数据库管理的至少部分数据;至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据;发送所述目标数据至与所述会话过程关联的目标数据库,以实现所述源数据库与所述目标数据库之间的至少部分数据的同步。间的至少部分数据的同步。间的至少部分数据的同步。

【技术实现步骤摘要】
数据同步方法、设备、系统及介质


[0001]本申请涉及数据库
,尤其涉及一种数据同步方法、设备、系统及介质。

技术介绍

[0002]在实际的数据同步过程中,同时处于运行状态的数据同步任务可以为数十个、甚至数百、甚至数千个,在上述数据同步任务执行过程中,源数据库的时间类型与目标数据库的时间类型可能不完全匹配。如此,对于基于日志数据获取的待同步数据,需要手动逐一针对每个同步任务中的每张数据表,确定不同时间数据之间的映射与转换的逻辑。这种方案的效率低下、门槛较高。

技术实现思路

[0003]基于以上问题,本申请实施例提供了一种数据同步方法、设备、系统及介质。
[0004]本申请实施例提供的技术方案是这样的:本申请实施例首先提供了一种数据同步方法,所述方法应用于数据同步设备;所述方法包括:获取数据同步参数;其中,所述数据同步参数至少包括会话过程的会话时区;基于源数据库的日志数据,确定所述会话过程关联的源数据;其中,所述源数据包括所述源数据库管理的至少部分数据;至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据;发送所述目标数据至与所述会话过程关联的目标数据库,以实现所述源数据库与所述目标数据库之间的至少部分数据的同步。
[0005]在一些实施例中,所述至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据,包括:从所述源数据中获取源数据库时区关联的待处理数据;基于所述会话时区修正所述待处理数据,得到时区修正结果;基于所述时区修正结果以及所述源数据,确定所述目标数据。
[0006]在一些实施例中,所述基于所述会话时区修正所述待处理数据,得到时区修正结果,包括:确定所述时区修正结果为所述会话时区与所述待处理数据中包含的所述源数据库时区之差。
[0007]在一些实施例中,所述基于所述时区修正结果以及所述源数据,确定所述目标数据,包括:从所述待处理数据中获取时间数据;基于所述时区修正结果对所述时间数据进行补偿,得到时间补偿结果;将所述待处理数据中除去所述时间数据之外的数据、以及所述时间补偿结果,确定为所述目标数据。
[0008]在一些实施例中,所述数据同步参数还包括结构转换参数;所述至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据,包括:基于所述结构转换参数以及所述会话时区,处理所述源数据,得到所述目标数据。
[0009]在一些实施例中,所述基于所述结构转换参数以及所述会话时区,处理所述源数据,得到所述目标数据,包括:基于所述日志数据,确定所述源数据库的第一元数据;基于所述会话时区转换所述源数据中包含的时间数据,得到时间补偿结果;基于所述结构转换参数与所述第一元数据之间的关联关系,对所述时间补偿结果进行处理,得到所述目标数据。
[0010]在一些实施例中,所述基于所述日志数据,确定所述源数据库的第一元数据,包括:基于所述日志数据中包含的数据操作相关的数据,确定所述第一元数据;其中,所述第一元数据包括所述源数据库的数据定义语言(Data Definition Language,DDL)所表征的定义参数和数据操作语言(Data Manipulation Language,DML)所表征的操作参数。
[0011]本申请实施例还提供了一种数据同步方法,所述方法应用于目标数据库;所述方法包括:接收数据同步设备发送的目标数据,以实现所述目标数据库与源数据库之间的至少部分数据的同步;其中,所述目标数据是所述数据同步设备基于所述源数据库的日志数据确定源数据之后,再至少基于数据同步参数中包含的与所述源数据关联的会话过程的会话时区,处理所述源数据得到的。
[0012]在一些实施例中,所述方法还包括:在所述目标数据库中存储待存储数据;其中,所述待存储数据是基于所述目标数据库的第二元数据对所述目标数据进行结构转换得到的;所述第二元数据包括所述目标数据库的数据定义语言所表征的定义参数和数据操作语言所表征的操作参数。
[0013]本申请实施例还提供了一种数据同步设备,所述设备包括处理器、存储器、通讯接口以及总线;其中,所述处理器、所述通讯接口以及所述存储器分别通过所述总线通信;所述存储器中存储有计算机程序;所述处理器执行所述计算机程序时,能够实现如前任一所述的应用于数据同步设备的数据同步方法。
[0014]本申请实施例还提供了一种数据同步系统,所述系统包括如前所述的数据同步设备、目标数据库以及源数据库。
[0015]本申请实施例还提供了一种计算机可读存储介质,所述存储介质中存储有计算机程序;所述计算机程序被电子设备的处理器执行时,能够实现如前任一所述的数据同步方法。
[0016]本申请实施例提供的应用于数据同步设备的数据同步方法,通过基于源数据库中的日志数据,确定源数据库管理的至少部分数据得到源数据后,能够至少基于数据同步参数中的会话时区处理源数据,得到目标数据,如此,实现了对基于日志数据获取的源数据的自动化的处理,从而能够解决相关技术中通过日志数据获取的源数据库中的至少部分数据在时区维度无法自动转换的技术问题;并且,通过调整或改变数据同步参数,能够实现对不同会话过程关联的源数据的灵活的、多样化的自动的处理;与此同时,由于数据同步参数中
包含有会话时区,因此,至少基于会话时区处理源数据,能够实现对源数据中在会话时区维度的针对性处理;另一方面,通过将目标数据发送至会话过程关联的目标数据库,实现了源数据在源数据库与目标数据库之间的自动化的、灵活的、高效的同步。
附图说明
[0017]图1为本申请实施例提供的应用于数据同步设备的数据同步方法的第一流程示意图;图2为本申请实施例提供的应用于数据同步设备的数据同步方法的第二流程示意图;图3为本申请实施例提供的数据同步装置的结构示意图;图4为本申请实施例提供的应用于目标数据库的数据同步方法的流程示意图;图5为本申请实施例提供的数据同步设备的结构示意图;图6为本申请实施例提供的数据同步系统的第一结构示意图;图7为本申请实施例提供的数据同步系统的第二结构示意图;图8为本申请实施例提供的数据同步系统的第三结构示意图。
具体实施方式
[0018]下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
[0019]应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0020]在实际的数据同步系统中,同时处于运行状态的数据同步任务可以为数十个、甚至数百、甚至数千个,在上述数据同步任务执行过程中,源数据库的时间类型与目标数据库的时间类型可能不完全匹配。
[0021]如此,在缺乏自动化的处理机制的条件下,对于基于日志数据获取的待同步数据,需要手动逐一针对每个同步任务中的每张数据表,以确定不同时间数据之间的映射与转换的逻辑。这种方案的效率低下、门槛较高。
[0022]基于以上问题,本申请实施例提供了一种数据同步方法、设备、系统及介质。
[0023]本申请实施例提供本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据同步方法,其特征在于,所述方法应用于数据同步设备;所述方法包括:获取数据同步参数;其中,所述数据同步参数至少包括会话过程的会话时区;基于源数据库的日志数据,确定所述会话过程关联的源数据;其中,所述源数据包括所述源数据库管理的至少部分数据;至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据;发送所述目标数据至与所述会话过程关联的目标数据库,以实现所述源数据库与所述目标数据库之间的至少部分数据的同步。2.根据权利要求1所述的方法,其特征在于,所述至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据,包括:从所述源数据中获取源数据库时区关联的待处理数据;基于所述会话时区修正所述待处理数据,得到时区修正结果;基于所述时区修正结果以及所述源数据,确定所述目标数据。3.根据权利要求2所述的方法,其特征在于,所述基于所述会话时区修正所述待处理数据,得到时区修正结果,包括:确定所述时区修正结果为所述会话时区与所述待处理数据中包含的所述源数据库时区之差。4.根据权利要求2所述的方法,其特征在于,所述基于所述时区修正结果以及所述源数据,确定所述目标数据,包括:从所述待处理数据中获取时间数据;基于所述时区修正结果对所述时间数据进行补偿,得到时间补偿结果;将所述待处理数据中除去所述时间数据之外的数据、以及所述时间补偿结果,确定为所述目标数据。5.根据权利要求1所述的方法,其特征在于,所述数据同步参数还包括结构转换参数;所述至少基于所述数据同步参数中的所述会话时区,处理所述源数据,得到目标数据,包括:基于所述结构转换参数以及所述会话时区,处理所述源数据,得到所述目标数据。6.根据权利要求5所述的方法,其特征在于,所述基于所述结构转换参数以及所述会话时区,处理所述源数据,得到所述目标数据,包括:基于所述日志数据,确定所述源数据库的第一元数据;...

【专利技术属性】
技术研发人员:陈肃陈诚陈雷
申请(专利权)人:北京逐风科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1