[发明专利]一种查询建表操作的同步方法有效
申请号: | 201811377399.X | 申请日: | 2018-11-19 |
公开(公告)号: | CN109558452B | 公开(公告)日: | 2020-12-08 |
发明(设计)人: | 孙峰;付铨;余院兰 | 申请(专利权)人: | 武汉达梦数据库有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27 |
代理公司: | 武汉智嘉联合知识产权代理事务所(普通合伙) 42231 | 代理人: | 黄君军 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 查询 操作 同步 方法 | ||
本发明公开一种查询建表操作的同步方法,包括以下步骤:步骤S1、捕获的源端数据库的查询建表操作,并提取所述查询建表操作的查询建表SQL语句;步骤S2、判断所述查询建表SQL语句是否满足以SQL语句进行同步的条件,如果满足则转步骤S3;步骤S3、将所述查询建表SQL语句发送至目标端数据库进行同步,源端数据库继续跟踪所述查询建表SQL语句的事物日志流,将与所述查询建表操作相关的INSERT操作日志直接丢弃,并在捕获到所述事物日志流中的提交日志时通知所述目标端数据库结束所述查询建表SQL语句的同步流程。本发明提供的查询建表操作的同步方法可以有效减少查询建表操作的同步耗时。
技术领域
本发明涉及数据库同步中查询建表操作同步技术领域,具体涉及一种查询建表装作的同步方法。
背景技术
在基于软件的数据库数据复制技术中,基于分析日志文件的数据实时同步技术,因其具备对源端数据库影响小、支持异构系统复制、复制系统备机可读写等特点,在应急灾备、多业务中心、实时异构资源整合、数据迁移与滚动升级、数据仓库架构改进等多个场景下应用广泛。
基于分析日志文件的数据实时同步,主要技术原理是,在源端数据库,数据同步进程实时读取数据库的在线或归档日志文件获取数据库的INSERT、DELETE以及UPDATE的事务操作,然后将这些事务操作转换为内部特定格式的消息,直接通过TCP/IP网络传输到目标端数据库的数据同步进程;目标端数据库的数据同步进程接收到源端发送过来的消息后,进行消息的分析并将源端的事务操作恢复成SQL操作语句,使用数据库本地接口在目标端数据库上执行,实现源端和目标数据库的数据同步。
对于数据库上的DML操作,数据库都会在日志文件中直接记录事务操作信息如操作对象、修改的数据等内容,但是对于DDL操作,并不是所有数据库都会在日志文件中直接记录DDL事务信息。基于此,第三方工具可以通过实时读取物理日志文件中的增量日志数据,并进行解析来实现数据库上的增、删、改操作的实时同步。而对于DDL同步,目前通常的技术方案为利用中间表,采用间接的方式,从日志文件中解析出DDL操作的信息。查询建表操作是一种比较特殊的DDL操作,使用查询建表方式创建目标数据表的同时,会使用查询出的数据来初始化新建表。当待查询的表中数据量非常大时,查询建表操作将会非常耗时,并且日志文件信息流中会包含大量创建表的数据初始化INSERT操作日志。按照常规基于分析日志分析的数据同步方式,需要该DDL事务提交时才能开始同步该DDL操作,包括提取出日志文件中的新建表日志信息以及该表数据的初始化INSERT操作日志,然后发送到目标端进行同步,如果基表数据量非常大,这会造成大量的数据需要从源端发往目标端,目标端同步时将会需要较长时间才能提交完成,同步延时非常大。
发明内容
本发明的目的在于克服上述技术不足,提供一种查询建表操作的同步方法,解决现有技术中查询建表操作同步耗时长、延时大的技术问题。
为达到上述技术目的,本发明的技术方案提供一种查询建表操作的同步方法,包括以下步骤:
步骤S1、捕获的源端数据库的查询建表操作,并提取所述查询建表操作的查询建表SQL语句;
步骤S2、判断所述查询建表SQL语句是否满足以SQL语句进行同步的条件,如果满足则转步骤S3;
步骤S3、将所述查询建表SQL语句发送至目标端数据库进行同步,源端数据库继续跟踪所述查询建表SQL语句的事物日志流,将与所述查询建表操作相关的INSERT操作日志直接丢弃,并在捕获到所述事物日志流中的提交日志时通知所述目标端数据库结束所述查询建表SQL语句的同步流程。
与现有技术相比,本发明的有益效果包括:本发明通过根据事物日志流中提交日志,对事物提交进行标识,实现同步流程的结束,避免缓存和分析查询建表SQL语句产生的大量操作表的INSERT日志,避免投递这些日志的传输操作和这些操作在目标数据库的入库操作,这些操作会严重的拖慢同步速度,优化后的方案可以最大限度的降低同步延时。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库有限公司,未经武汉达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811377399.X/2.html,转载请声明来源钻瓜专利网。