[发明专利]数据同步方法及装置有效
申请号: | 202110729604.X | 申请日: | 2021-06-29 |
公开(公告)号: | CN113342898B | 公开(公告)日: | 2022-10-04 |
发明(设计)人: | 林鹏程 | 申请(专利权)人: | 杭州数梦工场科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F9/48;G06F9/50;G06F9/54 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310024 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 同步 方法 装置 | ||
1.一种数据同步方法,其特征在于,应用于数据同步工具,所述数据同步工具运行有一个或多个数据同步线程,所述数据同步线程被配置有多个数据同步任务,所述数据同步任务的输入配置信息包括对应的消息队列主题的信息、输出配置信息包括对应的目的数据表的信息,所述方法包括:
获取消息队列发送的通知消息,所述通知消息用于表明所述消息队列中的目标消息队列主题存在新增数据;
根据每个数据同步任务的输入配置信息,确定出匹配于所述目标消息队列主题的目标数据同步任务;
在所述目标数据同步任务属于目标数据同步线程的情况下,通过目标数据同步线程执行所述目标数据同步任务,以从所述消息队列中抽取所述新增数据,并将所述新增数据同步到所述目标数据同步任务的输出配置信息所定义的目的数据表。
2.根据权利要求1所述方法,其特征在于,所述通知消息包括所述新增数据在所述消息队列中的分区和偏移量,所述通过目标数据同步线程执行所述目标数据同步任务包括:
在所述目标数据同步任务不存在对应于所述通知消息中的分区的本地分区,或者所述通知消息中的偏移量大于所述目标数据同步任务的对应于所述通知消息中的分区的本地偏移量的情况下,通过所述目标数据同步线程执行所述目标数据同步任务;其中,本地分区为历史同步数据所处的分区,本地偏移量为历史同步数据在所处分区中对应的最大偏移量。
3.根据权利要求2所述方法,其特征在于,还包括:
在所述通知消息中的分区大于所述目标数据同步任务的本地分区的情况下,在将所述新增数据同步至所述目标数据同步任务的输出配置信息所定义的目的数据表之后,将所述本地分区更新为所述通知消息中的分区并将所述本地偏移量更新为所述通知消息中的偏移量;
在所述通知消息中的偏移量大于所述目标数据同步任务的本地偏移量的情况下,在将所述新增数据同步至所述目标数据同步任务的输出配置信息所定义的目的数据表之后,将所述本地偏移量更新为所述通知消息中的偏移量。
4.根据权利要求1所述方法,其特征在于,通过目标数据同步线程执行所述目标数据同步任务,包括:
确定所述目标数据同步任务与所述目标数据同步线程对应的任务调度队列中已存在的各个数据同步任务之间的执行顺序;
根据确定出的执行顺序,将所述目标数据同步任务插入至所述任务调度队列中的对应位置;
通过所述目标数据同步线程依次执行所述调度队列中的各个数据同步任务。
5.根据权利要求4所述方法,其特征在于,确定所述目标数据同步任务与所述目标数据同步线程对应的任务调度队列中已存在的各个数据同步任务之间的执行顺序,包括:
根据所述目标数据同步任务的预设优先级和所述目标数据同步线程对应的任务调度队列中已存在的各个数据同步任务的预设优先级,确定所述目标数据同步任务与所述已存在的各个数据同步任务之间的执行顺序;
若任一已存在的数据同步任务与所述目标数据同步任务的预设优先级相同,则按照对应于所述目标数据同步任务和所述任一已存在的数据同步任务的通知消息的获取时间点,确定所述目标数据同步任务与所述任一已存在的数据同步任务之间的执行顺序。
6.根据权利要求5所述方法,其特征在于,还包括:
若所述目标数据同步任务对应的新增数据的数据量大于预设数据量阈值,则通过所述目标数据同步线程执行所述目标数据同步任务,以从所述消息队列中抽取数据量为所述预设数据量阈值的新增数据,并将所述抽取的新增数据同步到所述目标数据同步任务的输出配置信息所定义的目的数据表;
将所述数据同步任务对应的获取时间点更新为所述抽取的新增数据同步完成后的时间点,并在所述调度队列中对所述目标数据同步任务进行重新排序。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州数梦工场科技有限公司,未经杭州数梦工场科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110729604.X/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置