数据同步方法技术

技术编号:39820920 阅读:24 留言:0更新日期:2023-12-22 19:40
本申请的实施例提供了一种数据同步方法

【技术实现步骤摘要】
数据同步方法、装置、设备、存储介质及计算机程序产品


[0001]本申请涉及互联网
,尤其涉及一种数据同步方法

装置

电子设备

计算机可读存储介质以及计算机程序产品


技术介绍

[0002]相关技术中的数据同步的方案大多采用单一进程处理数据读取

筛选

映射

融合

转化

写入本地数据源的全量用户数据同步步骤,然而采用单一进程处理一条数据的全部同步流程会导致整个用户数据同步过程中,需要与上游数据源不断交互,每条数据在同步过程中出错时,需要重新对从上游数据源读取数据,稳定性较低,同时当数据量大,也会导致进程从创建到释放的生命周期较长,数据同步效率较低


技术实现思路

[0003]本申请实施例提供一种数据同步方法

装置

电子设备

计算机可读存储介质以及计算机程序产品,能够提高数据同步的效率以及稳定本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.
一种数据同步方法,其特征在于,所述方法包括:响应于数据同步指令,启动至少一个数据读线程及至少一个数据写线程,并建立所述至少一个数据读线程与数据源间的通信连接;基于所述通信连接,通过所述至少一个数据读线程,从所述数据源中读取至少一条待同步数据,并将读取得到的待同步数据存入缓存空间;其中,所述缓存空间用于缓存所述数据读线程读取的所述待同步数据;当所述缓存空间中存储有所述待同步数据时,通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库
。2.
如权利要求1所述的方法,其特征在于,所述响应于数据同步指令,启动至少一个数据读线程及至少一个数据写线程之后,所述方法还包括:基于所述数据写线程,对所述缓存空间进行检测,得到第一检测结果;所述当所述缓存空间中存储有所述待同步数据时,通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库,包括:当所述第一检测结果表征所述缓存空间中存储有所述待同步数据时,通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库
。3.
如权利要求1所述的方法,其特征在于,所述将读取得到的待同步数据存入缓存空间之后,所述方法还包括:获取所述数据源中的所述待同步数据的总量

以及从所述数据源中读取的所述待同步数据的读取量;将所述总量以及所述读取量进行比对,得到第一比对结果;当所述第一比对结果表征所述数据源中不存在所述待同步数据时,关闭所述至少一个数据读线程与数据源间的通信连接,并关闭所述至少一个数据读线程
。4.
如权利要求1所述的方法,其特征在于,所述缓存空间中缓存的待同步数据为,从所述数据源中读取的未经处理的数据,所述通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库,包括:基于所述待同步数据的数据对象,对所述待同步数据进行筛选,得到目标同步数据;获取预先设定的属性映射关系,并基于所述属性映射关系,对所述目标同步数据进行属性映射,得到与本地数据库的数据属性相对应的通用数据;通过所述至少一个数据写线程,将所述通用数据写入本地数据库
。5.
如权利要求4所述的方法,其特征在于,所述对所述待同步数据进行筛选,得到目标同步数据之后,所述方法还包括:对所述目标同步数据进行格式校验,得到校验结果;当所述校验结果表征所述目标同步数据通过校验时,转入执行所述获取预先设定的属性映射关系的步骤;当所述校验结果表征所述目标同步数据未通过校验时,将所述目标同步数据记录至错误日志
。6.
如权利要求1所述的方法,其特征在于,所述数据写线程的数量为至少两个,所述缓存空间为消息队列,所述通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库,包括:
所述至少两个数据写线程采用并行处理的方式,从所述消息队列中依次提取缓存的所述待同步数据;将提取到的所述待同步数据写入本地数据库
。7.
如权利要求1所述的方法,其特征在于,所述通过所述至少一个数据写线程,将所述缓存空间中缓存的所述待同步数据写入本地数据库之后,所述方法还包括:对所述待同步数据的写入结果进行检测,得到第二...

【专利技术属性】
技术研发人员:于丹王旭陈松李俊浩陈世杰
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1