[发明专利]基于日志解析同步的并行日志解析方法和数据同步系统有效
申请号: | 202010361315.4 | 申请日: | 2020-04-30 |
公开(公告)号: | CN111694799B | 公开(公告)日: | 2023-04-25 |
发明(设计)人: | 黄海明;孙峰;余院兰 | 申请(专利权)人: | 武汉达梦数据库股份有限公司 |
主分类号: | G06F16/17 | 分类号: | G06F16/17;G06F16/23;G06F16/27 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 向彬 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 日志 解析 同步 并行 方法 数据 系统 | ||
1.一种基于日志解析同步的并行日志解析方法,其特征在于,源端数据同步服务包括日志分析线程和操作还原线程,其中,所述操作还原线程与所述日志分析线程异步执行;
所述并行日志解析方法包括:
通过所述日志分析线程对源端数据库的日志解析,得到待同步操作;
判断所述待同步操作的操作类型;
当所述待同步操作为DML操作时,为所述DML操作所涉及的操作对象构造共享锁,并将所述DML操作和所述DML操作对应的共享锁发送至所述操作还原线程,以异步进行所述DML操作的解析还原;
当所述待同步操作为DDL操作时,为所述DDL操作所涉及的操作对象构造排他锁,在对所述DDL操作所涉及的操作对象上锁成功后,解析所述DDL操作,维护更新所述DDL操作所指向的操作对象的字典信息。
2.根据权利要求1所述的并行日志解析方法,其特征在于,所述并行日志解析方法还包括:
所述操作还原线程在接收到所述DML操作后,获取所述DML操作所指向的操作对象的字典信息;
根据所述DML操作所指向的操作对象的字典信息,将所述DML操作还原成目标端数据库所能识别的解析消息;
在完成解析还原后,释放所述DML操作所对应的共享锁。
3.根据权利要求2所述的并行日志解析方法,其特征在于,所述并行日志解析方法还包括:
所述日志分析线程为所述DML操作创建占位符,所述占位符用于存放所述DML操作对应的日志信息。
4.根据权利要求3所述的并行日志解析方法,其特征在于,所述并行日志解析方法还包括:
所述日志分析线程在所述占位符中添加标记信息,其中,所述标记信息用于标识所述DML操作的解析状态。
5.根据权利要求4所述的并行日志解析方法,其特征在于,所述源端数据同步服务还包括日志投递线程,所述日志分析线程配套设置有待投递队列,所述并行日志解析方法还包括:
所述日志分析线程将携带有标记信息的所述占位符发送至所述待投递队列;
在释放所述DML操作所对应的共享锁后,所述操作还原线程更新所述DML操作,在所述待投递队列中所对应的占位符的标记信息,其中,标记信息被设置为已解析状态;
将所述DML操作对应的解析消息添加至所述DML操作所指向的占位符中。
6.根据权利要求5所述的并行日志解析方法,其特征在于,所述并行日志解析方法还包括:
所述日志投递线程按照各个占位符的生成顺序,依次根据每一占位符中的标记信息判断占位符所指向的所述DML操作是否已经完成解析;
若已完成,则将填充在占位符中的解析消息发送至目标端,再判断下一个占位符所指向的所述DML操作是否已经完成解析。
7.根据权利要求2所述的并行日志解析方法,其特征在于,根据所述DML操作所指向的操作对象的字典信息,将所述DML操作还原成目标端数据库所能识别的解析消息包括:
根据所述DML操作所指向的操作对象的标识号,在源端数据库侧的数据字典中查找所述DML操作所指向的操作对象的字典信息;
获取目标端数据库所能识别的数据类型,将所述DML操作的数据类型转换为所述目标端所述库所能识别的数据类型,以得到解析消息。
8.根据权利要求1所述的并行日志解析方法,其特征在于,在为所述DDL操作所涉及的操作对象构造排他锁之后还包括:
判断所述DDL操作所涉及的操作对象是否被锁定;
若没有,则通过所述排他锁对所述DDL操作所涉及的操作对象进行锁定。
9.根据权利要求1所述的并行日志解析方法,其特征在于,所述源端数据同步服务包括多个所述操作还原线程,多个所述操作还原线程共同拥有一个待还原队列;
多个所述操作还原线程并行执行相应DML操作的日志解析工作。
10.一种数据同步系统,其特征在于,所述数据同步系统包括至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被程序设置为执行如权利要求1~9任一项所述的并行日志解析方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库股份有限公司,未经武汉达梦数据库股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010361315.4/1.html,转载请声明来源钻瓜专利网。