[发明专利]数据同步装置、方法、存储介质及电子设备在审
| 申请号: | 201710229817.X | 申请日: | 2017-04-10 |
| 公开(公告)号: | CN108694199A | 公开(公告)日: | 2018-10-23 |
| 发明(设计)人: | 何林 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 王辉;阚梓瑄 |
| 地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据缓冲队列 数据同步装置 电子设备 缓冲队列 数据同步 数据总量 源数据库 存储 计算机可读存储介质 读取 任务分配模块 数据读取模块 数据同步效率 数据写入模块 目标数据库 周期性计算 存储介质 同步数据 同步的 线程 写入 | ||
本公开提供了一种数据同步装置、数据同步方法、计算机可读存储介质及电子设备,该装置包括:任务分配模块,用于周期性计算源数据库中待同步的数据总量,根据所述数据总量将与待同步数据对应的数据同步任务切分为多个子任务并存储到任务缓冲队列;数据读取模块,用于判断一线程是否从所述任务缓冲队列中获取到子任务并在判断所述线程获取到所述子任务时,从所述源数据库中读取与所述子任务对应的数据并存储到数据缓冲队列;数据写入模块,用于判断所述数据缓冲队列中是否存在与所述子任务对应的数据并在判断存在与所述子任务对应的数据时,从所述数据缓冲队列中获取与所述子任务对应的数据并写入目标数据库。本公开提高了数据同步效率。
技术领域
本公开涉及数据处理技术领域,具体而言,涉及一种数据同步装置、数据同步方法、计算机可读存储介质以及电子设备。
背景技术
随着通信技术的发展,数据的应用规模越来越大,因此数据表结构面临重新设计。新表设计出来,旧表仍存储着线上用户的各种数据,则需要将旧表的数据同步导入到新表。
目前,可以通过数据库自带的同步功能进行数据同步,通常仅适用于表结构同构的数据同步,这种数据同步方法一般就是一个线程或多个线程同时读取旧表数据,然后进行相关的数据加工后再写入到新表。例如:机房间的主从同步以及开发worker进行的业务逻辑同步。
但是该数据同步方式存在以下问题:一、这种同步方式通常将系统结构和业务逻辑混合在一起,仅适合简单的少量数据的一次性数据同步,无法实现定时或实时的大量数据的同步任务;二、这种同步方式过程中容易出现错误,准确性和可靠性较低;三、这种同步方式在数据处理过程中需要不断访问I/O,数据同步效率较低,且增加了系统开销和资源。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种数据同步装置、数据同步方法、计算机可读存储介质以及电子设备,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的一个或者多个问题。
根据本公开的一个方面,提供一种数据同步装置,所述装置包括:
任务分配模块,用于周期性计算源数据库中待同步的数据总量,根据所述数据总量将与待同步数据对应的数据同步任务切分为多个子任务并存储到任务缓冲队列;
数据读取模块,用于判断一线程是否从所述任务缓冲队列中获取到子任务并在判断所述线程获取到所述子任务时,从所述源数据库中读取与所述子任务对应的数据并存储到数据缓冲队列;
数据写入模块,用于判断所述数据缓冲队列中是否存在与所述子任务对应的数据并在判断存在与所述子任务对应的数据时,从所述数据缓冲队列中获取与所述子任务对应的数据并写入目标数据库。
在本公开的一种示例性实施例中,所述任务分配模块包括:
主线程确定单元,用于在同一周期内触发多个所述线程同时竞争分布式锁,并将获得所述分布式锁的所述线程确定为主线程以及将未获得所述分布式锁的所述线程确定为备线程;
主线程控制单元,用于控制所述主线程执行与所述待同步数据对应的数据分配任务。
在本公开的一种示例性实施例中,所述主线程确定单元包括:
任务判断子单元,用于判断所述主线程是否成功执行所述数据分配任务并在判断所述主线程成功执行所述数据分配任务时,控制所述备线程停止等待;
状态改变子单元,用于在判断所述主线程未成功执行所述数据分配任务时,控制所述备线程重新竞争所述分布式锁。
在本公开的一种示例性实施例中,所述数据读取模块包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710229817.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:信息收集设备和信息收集方法
- 下一篇:一种基于深度语义空间的跨媒体检索方法





