[发明专利]基于日志解析的异构数据库的双向同步方法和同步装置有效
申请号: | 202010714023.4 | 申请日: | 2020-07-22 |
公开(公告)号: | CN112035463B | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 孙峰;彭青松;刘启春 | 申请(专利权)人: | 武汉达梦数据库股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23;G06F16/2455;G06F16/27;G06F16/18 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 向彬 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 日志 解析 数据库 双向 同步 方法 装置 | ||
本发明公开了一种基于日志解析的异构数据库的双向同步方法和同步装置,双向同步方法包括:分别为双向同步系统中的两个数据同步系统创建专属用户;在数据同步服务初始启动时,设置同步事务的过滤用户为本数据同步系统中创建的专属用户;在进行增量数据同步时,位于本端数据同步系统的数据同步服务获取操作日志,对操作日志进行解析得到操作日志所属的用户对象;判断操作日志所属的用户对象是否为过滤用户;若是,则丢弃操作日志;若不是,则将操作日志发送至对端数据同步系统,对端数据同步系统使用其上的专属用户创建的数据库连接执行数据同步。在本发明中,通过采用专属用户来区分产生操作日志的用户对象,避免同步操作陷入死循环。
技术领域
本发明属于同步技术领域,更具体地,涉及一种基于日志解析的异构数据库的双向同步方法和同步装置。
背景技术
在基于日志分析的异构数据库数据双向实时同步领域,其中需要解决的一个重要问题是操作日志数据在实时同步过程中的数据循环问题。为此,数据同步系统应该能够有效的识别出待同步执行的操作日志数据的来源,即操作日志数据是由对端数据库系统上数据同步服务所产生,还是由其他应用产生,以便进行控制和过滤,防止出现同步死循环。
目前,解决该问题的方法一般是通过采用相应的方式来对同步服务所产生的日志数据进行特殊标记,以便有效识别出来并过滤掉。目前,已知的一些设置标记的方式,主要有在双向同步的数据库系统中创建一个特殊表,该表为同步系统的内部表,不能被其他应用所使用。增量事务数据在同步执行时,数据同步服务除执行待同步事务本身的操作之外,还需要额外在特殊表上执行操作,以达到标记同步事务的目的,这样通过特殊表的信息就能够识别出增量事务数据是来自数据同步服务还是其他应用。另外还有通过设置数据库连接标记来进行事务来源的识别和控制,如对于ORACLE数据库,使用DBMS_STREAMS数据包中的SET_TAG函数,将特殊标记设置在数据库的连接上,这样数据同步服务使用带有连接标记的数据库连接执行同步事务,数据库日志中会记录事务的连接信息,从而将数据同步服务所产生的日志与其他应用日志区分开。
上述方法在一定程度上能有效解决数据同步循环问题,但是也存在一定不足,基于特殊表的标记方法,表的信息只能插入在增量数据的末端,在进行数据同步时,只能在增量数据执行到末端时,才能知道增量数据的来源,而且也不能有效解决DDL(DataDefinition Language,简写为DDL)同步的问题,且需要在系统中创建额外的表,对数据库有一定的侵入性,可能存在风险。基于数据连接标记的方法,可同时适用于DML(DataManipulation Language,简写为DML)和DDL同步,但是不是所有关系型数据库系统都支持上述连接标记设定的方式,支持的数据库类型有局限性。
鉴于此,克服该现有技术产品所存在的不足是本技术领域亟待解决的问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于日志解析的异构数据库的双向同步方法和同步装置,其目的在于,通过采用专属用户来区分产生操作日志的用户对象,无需创建辅助表,避免了对端执行到增量数据的末尾才识别出数据来源进而确定是否需要同步的情况,相较于辅助表的方式,同步效率更高,而且可以避免数据库的侵入风险。另外,本发明的方法适用于广泛的关系型数据库系统,不论何种类型的数据库均实现DDL操作和DML操作的双向同步,避免同步操作陷入死循环。
为实现上述目的,按照本发明的一个方面,提供了一种基于日志解析的异构数据库的双向同步方法,所述双向同步方法应用于双向同步系统,所述双向同步系统包括两个数据同步系统,所述数据同步系统包括数据同步服务和数据库,两个数据同步系统互为本端数据同步系统和对端数据同步系统,所述双向同步方法包括:
分别为所述双向同步系统中的两个数据同步系统创建专属用户;
在数据同步服务初始启动时,设置同步事务的过滤用户为本数据同步系统中创建的专属用户;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库股份有限公司,未经武汉达梦数据库股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010714023.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可更换式轮胎齿牙套
- 下一篇:一种用于汽车发动机水泵的泄露检测装置