首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】一种基于并行执行的数据同步的方法和装置_武汉达梦数据库股份有限公司_202010499491.4 

申请/专利权人:武汉达梦数据库股份有限公司

申请日:2020-06-04

公开(公告)日:2024-06-21

公开(公告)号:CN111858626B

主分类号:G06F16/23

分类号:G06F16/23;G06F16/27

优先权:

专利状态码:有效-授权

法律状态:2024.06.21#授权;2021.03.09#著录事项变更;2021.03.09#著录事项变更;2020.11.17#实质审查的生效;2020.10.30#公开

摘要:本发明涉及数据库领域,特别是涉及一种基于并行执行的数据同步的方法和装置。主要包括:获取需同步的事务;创建至少两个执行线程;按照提交顺序将事务逐一分配至不同的空闲的执行线程;获取每个执行线程的当前事务中的每个操作,根据每个操作的唯一标识符对每个操作构造行锁;判断每个执行线程中的当前事务是否与提交顺序在其之前的事务存在行锁冲突,将当前事务放入与其存在行锁冲突的事务所在的执行线程的唤醒队列中进行等待;执行线程并行执行不存在行锁冲突的当前事务;每个执行线程执行完当前事务后,唤醒执行线程的唤醒队列中的事务。本发明提高了同步效率,降低了控制复杂度,实现高效而简便的异构数据库并行同步。

主权项:1.一种基于并行执行的数据同步的方法,其特征在于,所述方法包括:获取需同步的事务,将需同步的事务按提交顺序放入执行事务列表中,以便于对需同步的事务进行查找和分配;创建至少两个执行线程,每个执行线程中包括一个唤醒队列;按照提交顺序将事务逐一分配至不同的空闲的执行线程,被分配至每个线程中的事务为每个执行线程的当前事务;获取每个执行线程的当前事务中的每个操作,根据每个操作的唯一标识符对所述每个操作构造行锁;在执行事务列表中查找当前事务所在位置,由当前事务所在位置开始,依次逆序获取需执行的事务,判断当前事务与每个需执行的事务之间是否存在行锁冲突,找到第一个存在行锁冲突的需执行事务时停止判断,若存在行锁冲突,则将当前事务放入与其存在行锁冲突的事务所在的执行线程的唤醒队列中进行等待;执行线程并行执行不存在行锁冲突的当前事务;每个执行线程执行完当前事务后,唤醒执行线程的唤醒队列中的事务开始执行;其中,当执行线程的唤醒队列中存在多个正在等待的事务时,将正在等待的事务全部唤醒,激活被唤醒的事务所在的执行线程;当某个事务存在于多个线程的唤醒队列中时,等待所有唤醒队列对其唤醒后,再开始激活执行。

全文数据:

权利要求:

百度查询: 武汉达梦数据库股份有限公司 一种基于并行执行的数据同步的方法和装置

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。