CN110543513B - 分布式数据库增量数据同步方法、设备及存储介质 - Google Patents
分布式数据库增量数据同步方法、设备及存储介质 Download PDFInfo
- Publication number
- CN110543513B CN110543513B CN201810533666.1A CN201810533666A CN110543513B CN 110543513 B CN110543513 B CN 110543513B CN 201810533666 A CN201810533666 A CN 201810533666A CN 110543513 B CN110543513 B CN 110543513B
- Authority
- CN
- China
- Prior art keywords
- data
- field
- distributed database
- change
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000008859 change Effects 0.000 claims abstract description 107
- 230000001360 synchronised effect Effects 0.000 claims abstract description 26
- 230000004048 modification Effects 0.000 claims description 16
- 238000012986 modification Methods 0.000 claims description 16
- 230000015654 memory Effects 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 8
- 238000013500 data storage Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 12
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种分布式数据库增量数据同步方法,该方法包括:获取DBMS中的变化数据;将该变化数据转化为数据变化日志;解析数据变化日志,以生成对应的SQL语句;通过SQL语句并按照分发键信息,将所述变化数据同步至分布式数据库。此外,本发明还公开了一种设备及存储介质。采用本发明能够将DBMS数据的变化捕捉下来并实时同步到分布式数据库,根据分发策略生成SQL同步数据,功能强大且使用简单,同步过程中使用批处理以适合大数据量的数据传输和同步。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种分布式数据库增量数据同步方法、设备及存储介质。
背景技术
为了实现数据库管理***(Database Management System,DBMS)(例如:oracle、Sybase和MS、SQL Server)和分布式数据库之间的数据实时同步,现有的异构数据库之间进行数据同步时,多采用触发器捕捉。然而,触发器捕捉方式虽然简单明了,但会给业务的处理效率带来较大影响,不适合在高负荷的业务环境下采用。
发明内容
本发明的主要目的在于提出一种分布式数据库增量数据同步方法、设备及存储介质,旨在解决现有的异构数据库同步无法在高负荷的业务环境下实现的问题。
为实现上述目的,本发明提供的一种分布式数据库增量数据同步方法,所述方法包括步骤:
获取数据库管理***DBMS中的变化数据;
将所述变化数据转化为数据变化日志;
解析所述数据变化日志,以生成对应的结构化查询语言SQL语句;
通过所述SQL语句并按照分布式数据库表的分发信息,将所述变化数据同步至分布式数据库。
此外,为实现上述目的,本发明还提出一种设备,所述设备包括处理器以及存储器;
所述处理器用于执行存储器中存储的分布式数据库增量数据同步程序,以实现上所述的方法。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的方法。
本发明提出的分布式数据库增量数据同步方法、设备及计算机可读存储介质,通过获取DBMS中的变化数据,将该变化数据转化为数据变化日志,并解析数据变化日志,以生成对应的SQL语句,再通过SQL语句并按照分发键信息,将所述变化数据同步至分布式数据库,能够将DBMS数据的变化捕捉下来并实时同步到分布式数据库,根据分发策略生成SQL同步数据,功能强大且使用简单,同步过程中使用批处理以适合大数据量的数据传输和同步。
附图说明
图1为本发明第一实施例提供的分布式数据库增量数据同步方法的流程示意图;
图2为本发明第一实施例提供的分布式数据库增量数据同步方法的子流程示意图一;
图3为本发明第一实施例提供的分布式数据库增量数据同步方法的另一子流程示意图一;
图4为本发明第一实施例提供的分布式数据库增量数据同步方法的子流程示意图二;
图5为本发明第一实施例提供的分布式数据库增量数据同步方法的子流程示意图三;
图6为本发明第一实施例提供的分布式数据库增量数据同步方法的另一流程示意图;
图7为本发明第一实施例提供的分布式数据库增量数据同步方法的另一流程示意图;
图8为本发明第二实施例提供的设备硬件架构的示意图;
图9为图8中基于分布式数据库增量数据同步程序的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
第一实施例
如图1所示,为本发明第一实施例提供的分布式数据库增量数据同步方法的流程示意图。在图1中,所述分布式数据库增量数据同步方法包括:
步骤110,获取DBMS中的变化数据。
具体的,获取数据库管理***(Database Management System,DBMS)上所有数据操纵语言(Data Manipulation Language,DML)的变化数据。
步骤120,将所述变化数据转化为数据变化日志。
具体的,数据变化日志的操作类型包括***INSERT、更新UPDATE和删除DELETE。
步骤130,解析所述数据变化日志,以生成对应的SQL语句。
具体的,解析用户的数据变化日志,包括其中的操作类型、变化前后数据等。根据解析结果,拼出部分结构化查询语言(Structured Query Language,SQL)。
步骤140,通过所述SQL语句并按照分布式数据库表的分发信息,将所述变化数据同步至分布式数据库。
具体的,通过生成的SQL语句并按照分发键信息将数据同步至数据库,该数据库可以是分布式数据库。
可选的,在本实施例中,使用登记表来记录所有需要捕捉的数据变化日志的表的名称(简称:表名),该表被称为同步源表,同步源表中详细记录了变化的表名、表所属用户名、操作类型等信息。捕捉到数据变化日志之后,通过对数据变化日志的数据解析还原出DML语句。不同的操作类型,还原DML语句的方式不同,对于INSERT语句需要根据操作类型、表名和修改后的字段值就可以还原出需要执行的SQL语句;对于UPDATE和DELETE语句,由于语句中带有where条件,如果将所有字段都逐一拼到where子句中,不但造成语句很长,例如:业务某些表可能字段上百,而且由于分布式数据库的限制,会造成在分布式数据库侧执行时无法使用索引,由此考虑到分布式数据库的特性,从而基于分布式数据库的分发属性和分布节点信息,对UPDATE和DELETE语句的同步进行了优化。
本实施例通过捕获DBMS数据变化,解析变化数据日志文件,生成SQL语句,并基于分布式数据库的特性,根据分发策略来同步数据,提高了数据同步速度,同时同步过程中使用分布式数据库批处理,提高了性能,数据同步完成后通过脚本校验数据正确性,保证了数据的一致性。
可选的,如图2所示,若解析的所述数据变化日志的操作类型为***INSERT,则步骤140具体包括:
步骤210,获取所述数据变化日志中存放的表的名称和字段修改值;
步骤220,根据所述字段修改值,获取字段名列表和字段值列表;
步骤230,从所述字段名列表和字段值列表中选择一个字段值;
步骤240,判断所述字段值是否为NULL;若是,则进入步骤250,若否,则进入步骤260;
步骤250,不同步所述字段值;
步骤260,同步所述字段值。
具体的,根据数据变化日志中存放的object_name得到表的名称,以及根据数据变化日志存放的字段修改值(new_value_list)得到字段名列表和字段值列表,当判断字段值为NULL,则说明源语句没有赋值,此字段不应该出现在insert语句的字段列表,不需要同步此字段值,否则需要同步此字段值。
可选的,如图3所示,在步骤250或者步骤260之后,本实施例的分布式数据库增量数据同步方法还包括:
步骤310,判断所述字段值是否为所述字段名列表和字段值列表中最后一个字段;若是,则进入步骤320,若否,则进入步骤330;
步骤320,下发所述字段值至预设的存储节点;
步骤330,重新从所述字段名列表和字段值列表中选择另一个字段值。
具体的,在判断字段值是NULL不需要同步、以及判断字段值不是NULL且需要同步之后,还需要判断该字段值是否为字段名列表和值列表中最后一个字段,如果是,则下发该字段值至预设的数据库的存储节点,否则从字段名列表和值列表中选择另一个字段值并重复步骤210-步骤260的过程,直至完成所有字段值的判断。
可选的,如图4所示,若解析的所述数据变化日志的操作类型为更新UPDATE,则步骤140具体包括:
步骤410,获取所述数据变化日志中存放的表的名称和字段修改值;
步骤420,获取所述字段修改值中出现的字段名和字段值以拼出预设类型的子句;
步骤430,查询所述表的分发键信息;
步骤440,在所述字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
步骤450,同步所述字段值至所述数据库。
具体的,根据数据变化日志中存放的object_name得到表的名称,以及根据数据变化日志存放的字段修改值(new_value_list)中出现的字段名和字段值拼出预设类型的子句,其中,该预设类型的子句可以是set子句。从数据缓存中查询表的分发键信息,并在字段值中过滤出该表在分布式数据库中的分发键字段,拼成预设的条件,其中,该预设的条件可以是where条件。按照SQL语句的粒度同步到分布式数据库的中间件,以使中间件根据分发属性将需要同步的语句下发到指定的数据库存储节点。
可选的,如图5所示,若解析的所述数据变化日志的操作类型为删除DELETE,则步骤140具体包括:
步骤510,获取所述数据变化日志中存放的表的名称;
步骤520,查询所述表的分发键信息;
步骤530,在所述字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
步骤540,同步所述字段值至所述数据库。
具体的,根据数据变化日志中存放的object_name得到表的名称,从数据缓存中查询表的分发键信息,并在字段值中过滤出该表在分布式数据库中的分发键字段,拼成预设的条件,其中,该预设的条件可以是where条件。按照SQL语句的粒度同步到分布式数据库的中间件,以使中间件根据分发属性将需要同步的语句下发到指定的数据库存储节点。
可选的,如图6所示,若解析的所述数据变化日志的操作类型不是INSERT、UPDATE、DELETE,则本实施例的分布式数据库增量数据同步方法还包括:
步骤610,判断所述变化数据是否同步至所述数据库;若否,则进入步骤620;
步骤620,上传告警;
步骤630,对上报的告警类型进行分类处理;
步骤640,判断所述告警是否是严重告警;若是,则进入步骤650;
步骤650,产生告警提示。
具体的,当分布式数据库执行增量数据同步失败时,则进行告警处理,查看上传的告警并对告警类型进行分类处理,在本实施例中,将告警类型分为一般告警和严重告警。如果是一般告警,则不对告警进行处理,如果是严重告警,则产生告警提示并进行人工干预。
可选的,如图7所示,在步骤140之后,本实施例的分布式数据库增量数据同步方法还包括:
步骤710,根据所述SQL语句中涉及的表的分发键信息和分布属性,完善所述SQL语句;
步骤720,通过完善后的SQL语句将数据发送至预设的数据存储节点,以使所述数据存储节点执行完善后的SQL语句并得到执行结果;
步骤730,接收并校验所述执行结果。
具体的,在将变化数据同步至数据库之后,根据SQL语句中涉及的表的分发键信息和分布属性完善SQL语句,并根据分布特性将数据分发到指定的数据库的存储节点,以使存储节点执行SQL语句,接收存储节点对SQL语句的执行结果,并对执行结果进行数据同步一致性校验。
本实施例的分布式数据库增量数据同步方法,通过获取DBMS中的变化数据,将该变化数据转化为数据变化日志,并解析数据变化日志,以生成对应的SQL语句,再通过SQL语句并按照分发键信息,将所述变化数据同步至分布式数据库,能够将DBMS数据的变化捕捉下来并实时同步到分布式数据库,根据分发策略生成SQL同步数据,功能强大且使用简单,同步过程中使用批处理以适合大数据量的数据传输和同步。
第二实施例
如图8所示,为本发明第二实施例提供一种设备硬件架构的示意图。在图8中,设备包括:存储器810、处理器820及存储在所述存储器810上并可在所述处理器820上运行的分布式数据库增量数据同步程序830。在本实施例中,所述的分布式数据库增量数据同步程序830包括一系列的存储于存储器810上的计算机程序指令,当该计算机程序指令被处理器820执行时,可以实现本发明各实施例的分布式数据库增量数据同步操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,分布式数据库增量数据同步程序830可以被划分为一个或多个模块。如图9所示,分布式数据库增量数据同步程序830包括:获取模块910、变化数据转化模块920、解析模块930、同步模块940、判断模块950、告警处理模块960、发送模块970以及校验模块980。其中,
获取模块910,用于获取DBMS中的变化数据。
具体的,获取模块910获取DBMS上所有DML的变化数据。
变化数据转化模块920,用于将所述变化数据转化为数据变化日志。
具体的,数据变化日志的操作类型包括***INSERT、更新UPDATE和删除DELETE。
解析模块930,用于解析所述数据变化日志,以生成对应的SQL语句。
具体的,解析模块930解析用户的数据变化日志,包括其中的操作类型、变化前后数据等。根据解析结果,拼出部分SQL。
同步模块940,用于通过所述SQL语句并按照分布式数据库表的分发信息,将所述变化数据同步至分布式数据库。
具体的,同步模块940通过生成的SQL语句并按照分发键信息将数据同步至数据库,该数据库可以是分布式数据库。
可选的,在本实施例中,使用登记表来记录所有需要捕捉的数据变化日志的表的名称(简称:表名),该表被称为同步源表,同步源表中详细记录了变化的表名、表所属用户名、操作类型等信息。捕捉到数据变化日志之后,通过对数据变化日志的数据解析还原出DML语句。不同的操作类型,还原DML语句的方式不同,对于INSERT语句需要根据操作类型、表名和修改后的字段值就可以还原出需要执行的SQL语句;对于UPDATE和DELETE语句,由于语句中带有where条件,如果将所有字段都逐一拼到where子句中,不但造成语句很长,例如:业务某些表可能字段上百,而且由于分布式数据库的限制,会造成在分布式数据库侧执行时无法使用索引,由此考虑到分布式数据库的特性,从而基于分布式数据库的分发属性和分布节点信息,对UPDATE和DELETE语句的同步进行了优化。
本实施例通过捕获DBMS数据变化,解析变化数据日志文件,生成SQL语句,并基于分布式数据库的特性,根据分发策略来同步数据,提高了数据同步速度,同时同步过程中使用分布式数据库批处理,提高了性能,数据同步完成后通过脚本校验数据正确性,保证了数据的一致性。
若解析的所述数据变化日志的操作类型为***INSERT,则同步模块940具体用于:
获取所述数据变化日志中存放的表的名称和字段修改值;
根据所述字段修改值,获取字段名列表和字段值列表;
从所述字段名列表和字段值列表中选择一个字段值;
判断所述字段值是否为NULL;若是,则不同步所述字段值,若否,则同步所述字段值。
具体的,根据数据变化日志中存放的object_name得到表的名称,以及根据数据变化日志存放的字段修改值(new_value_list)得到字段名列表和字段值列表,当判断字段值为NULL,则说明源语句没有赋值,此字段不应该出现在insert语句的字段列表,不需要同步此字段值,否则需要同步此字段值。
可选的,同步模块940还用于:判断所述字段值是否为所述字段名列表和字段值列表中最后一个字段;若是,则下发所述字段值至预设的存储节点,若否,则重新从所述字段名列表和字段值列表中选择另一个字段值。
具体的,在判断字段值是NULL不需要同步、以及判断字段值不是NULL且需要同步之后,还需要判断该字段值是否为字段名列表和值列表中最后一个字段,如果是,则下发该字段值至预设的数据库的存储节点,否则从字段名列表和值列表中选择另一个字段值并重复步骤210-步骤260的过程,直至完成所有字段值的判断。
可选的,若解析的所述数据变化日志的操作类型为更新UPDATE,则同步模块940具体用于:
获取所述数据变化日志中存放的表的名称和字段修改值;
获取所述字段修改值中出现的字段名和字段值以拼出预设类型的子句;
查询所述表的分发键信息;
在所述字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
同步所述字段值至所述数据库。
具体的,根据数据变化日志中存放的object_name得到表的名称,以及根据数据变化日志存放的字段修改值(new_value_list)中出现的字段名和字段值拼出预设类型的子句,其中,该预设类型的子句可以是set子句。从数据缓存中查询表的分发键信息,并在字段值中过滤出该表在分布式数据库中的分发键字段,拼成预设的条件,其中,该预设的条件可以是where条件。按照SQL语句的粒度同步到分布式数据库的中间件,以使中间件根据分发属性将需要同步的语句下发到指定的数据库存储节点。
可选的,若解析的所述数据变化日志的操作类型为删除DELETE,则同步模块940具体用于:
获取所述数据变化日志中存放的表的名称;
查询所述表的分发键信息;
在所述字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
同步所述字段值至所述数据库。
具体的,根据数据变化日志中存放的object_name得到表的名称,从数据缓存中查询表的分发键信息,并在字段值中过滤出该表在分布式数据库中的分发键字段,拼成预设的条件,其中,该预设的条件可以是where条件。按照SQL语句的粒度同步到分布式数据库的中间件,以使中间件根据分发属性将需要同步的语句下发到指定的数据库存储节点。
判断模块950,用于当解析的所述数据变化日志的操作类型不是INSERT、UPDATE、DELETE时,判断所述变化数据是否同步至所述数据库。
告警处理模块960,用于当判断模块950判断变化数据同步失败时,上传告警,以及对上报的告警类型进行分类处理;
判断模块950,还用于判断所述告警是否是严重告警;若是,则告警处理模块960还用于产生告警提示。
具体的,当分布式数据库执行增量数据同步失败时,则告警处理模块960进行告警处理,查看上传的告警并对告警类型进行分类处理,在本实施例中,将告警类型分为一般告警和严重告警。如果是一般告警,则不对告警进行处理,如果是严重告警,则产生告警提示并进行人工干预。
发送模块970,用于根据所述SQL语句中涉及的表的分发键信息和分布属性,完善所述SQL语句,并通过完善后的SQL语句将数据发送至预设的数据存储节点,以使所述数据存储节点执行完善后的SQL语句并得到执行结果;
校验模块980,用于接收并校验所述执行结果。
具体的,在将变化数据同步至数据库之后,根据SQL语句中涉及的表的分发键信息和分布属性完善SQL语句,发送模块970根据分布特性将数据分发到指定的数据库的存储节点,以使存储节点执行SQL语句,校验模块980接收存储节点对SQL语句的执行结果,并对执行结果进行数据同步一致性校验。
本实施例的设备,通过获取模块910获取DBMS中的变化数据,变化数据转化模块920将该变化数据转化为数据变化日志,解析模块930解析数据变化日志,以生成对应的SQL语句,同步模块940再通过SQL语句并按照分发键信息,将所述变化数据同步至分布式数据库,能够将DBMS数据的变化捕捉下来并实时同步到分布式数据库,根据分发策略生成SQL同步数据,功能强大且使用简单,同步过程中使用批处理以适合大数据量的数据传输和同步。
第三实施例
本发明实施例还提供了一种计算机可读存储介质。这里的计算机可读存储介质存储有一个或者多个程序。其中,计算机可读存储介质可以包括易失性存储器,例如随机存取存储器;存储器也可以包括非易失性存储器,例如只读存储器、快闪存储器、硬盘或固态硬盘;存储器还可以包括上述种类的存储器的组合。当计算机可读存储介质中一个或者多个程序可被一个或者多个处理器执行,以实现上述第一实施例所提供的分布式数据库增量数据同步分方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (9)
1.一种分布式数据库增量数据同步方法,其特征在于,所述方法包括步骤:
获取数据库管理***DBMS中的变化数据;
将所述变化数据转化为数据变化日志;
解析所述数据变化日志,以生成对应的结构化查询语言SQL语句;
通过所述SQL语句并按照分布式数据库表的分发信息,将所述变化数据同步至分布式数据库;
其中,在将所述变化数据同步至分布式数据库之后,所述方法还包括:
根据所述SQL语句中涉及的表的分发键信息和分布属性,完善所述SQL语句;
通过完善后的SQL语句将数据发送至预设的数据存储节点,以使所述数据存储节点执行完善后的SQL语句并得到执行结果;
接收并校验所述执行结果。
2.根据权利要求1所述的分布式数据库增量数据同步方法,其特征在于,若解析的所述数据变化日志的操作类型为***INSERT,则将所述变化数据同步至分布式数据库包括:
获取所述数据变化日志中存放的表的名称和字段修改值;
根据所述字段修改值,获取字段名列表和字段值列表;
从所述字段名列表和字段值列表中选择一个字段值;
判断所述字段值是否为NULL;
若是,则不同步所述字段值;
若否,则同步所述字段值。
3.根据权利要求2所述的分布式数据库增量数据同步方法,其特征在于,在判断不同步所述字段值或者同步所述字段值之后,所述方法还包括:
判断所述字段值是否为所述字段名列表和字段值列表中最后一个字段;
若是,则下发所述字段值至预设的存储节点;
若否,则重新从所述字段名列表和字段值列表中选择另一个字段值。
4.根据权利要求1所述的分布式数据库增量数据同步方法,其特征在于,若解析的所述数据变化日志的操作类型为更新UPDATE,则将所述变化数据同步至分布式数据库包括:
获取所述数据变化日志中存放的表的名称和字段修改值;
获取所述字段修改值中出现的字段名和字段值以拼出预设类型的子句;
查询所述表的分发键信息;
在所述字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
同步所述字段值至所述数据库。
5.根据权利要求1所述的分布式数据库增量数据同步方法,其特征在于,若解析的所述数据变化日志的操作类型为删除DELETE,则将所述变化数据同步至分布式数据库包括:
获取所述数据变化日志中存放的表的名称;
查询所述表的分发键信息;
在字段值中过滤出所述表在所述数据库中的分发键字段并转化成预设的条件;
同步所述字段值至所述数据库。
6.根据权利要求1所述的分布式数据库增量数据同步方法,其特征在于,若解析的所述数据变化日志的操作类型不是INSERT、UPDATE、DELETE,则所述方法还包括:
判断所述变化数据是否同步至所述数据库;
若否,则上传告警。
7.根据权利要求6所述的分布式数据库增量数据同步方法,其特征在于,在上传告警之后,所述方法还包括:
对上报的告警类型进行分类处理;
判断所述告警是否是严重告警;
若是,则产生告警提示。
8.一种设备,其特征在于,所述设备包括处理器以及存储器;
所述处理器用于执行存储器中存储的分布式数据库增量数据同步程序,以实现权利要求1-7任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810533666.1A CN110543513B (zh) | 2018-05-29 | 2018-05-29 | 分布式数据库增量数据同步方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810533666.1A CN110543513B (zh) | 2018-05-29 | 2018-05-29 | 分布式数据库增量数据同步方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110543513A CN110543513A (zh) | 2019-12-06 |
CN110543513B true CN110543513B (zh) | 2024-03-15 |
Family
ID=68701585
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810533666.1A Active CN110543513B (zh) | 2018-05-29 | 2018-05-29 | 分布式数据库增量数据同步方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110543513B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111143470A (zh) * | 2019-12-27 | 2020-05-12 | 中国银行股份有限公司 | 跨平台数据库数据同步比对方法及装置 |
CN111427898A (zh) * | 2020-03-16 | 2020-07-17 | 上海爱数信息技术股份有限公司 | 一种基于解析Oracle日志的持续数据保护***及方法 |
CN111597257A (zh) * | 2020-05-09 | 2020-08-28 | 远光软件股份有限公司 | 数据库的同步方法、装置、存储介质及终端 |
CN112231396A (zh) * | 2020-09-15 | 2021-01-15 | 山东浪潮通软信息科技有限公司 | 一种跨数据库增量同步数据的方法 |
CN112395360B (zh) * | 2020-12-01 | 2023-06-23 | 中国联合网络通信集团有限公司 | 基于非关系型数据库的数据同步方法、设备、装置和介质 |
CN113672639B (zh) * | 2021-08-27 | 2024-04-26 | 成都长城开发科技股份有限公司 | 多类型数据库表结构对比方法、***、设备及存储介质 |
CN113792066A (zh) * | 2021-09-23 | 2021-12-14 | 中国农业银行股份有限公司 | 一种批量sql的动态解析调度方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187888A (zh) * | 2007-12-11 | 2008-05-28 | 浪潮电子信息产业股份有限公司 | 一种异构环境中复制数据库数据的方法 |
CN103067483A (zh) * | 2012-12-25 | 2013-04-24 | 广东邮电职业技术学院 | 基于数据包的远程数据增量同步方法和装置 |
CN103761318A (zh) * | 2014-01-27 | 2014-04-30 | 中国工商银行股份有限公司 | 一种关系型异构数据库数据同步的方法及*** |
EP2891994A1 (en) * | 2013-11-04 | 2015-07-08 | Guangdong Electronics Industry Institute Ltd. | Method for achieving automatic synchronization of multisource heterogeneous data resources |
CN105005618A (zh) * | 2015-07-21 | 2015-10-28 | 杭州合众数据技术有限公司 | 一种异构数据库之间的数据同步方法及*** |
CN105447054A (zh) * | 2014-09-25 | 2016-03-30 | 中兴通讯股份有限公司 | 一种数据库的数据同步方法、装置及*** |
CN105824865A (zh) * | 2015-12-09 | 2016-08-03 | 广东亿迅科技有限公司 | 一种分布式数据库间数据同步*** |
CN106250543A (zh) * | 2016-08-10 | 2016-12-21 | 深圳市彬讯科技有限公司 | 一种自动化数据查询同步存储方法 |
CN107783975A (zh) * | 2016-08-24 | 2018-03-09 | 北京京东尚科信息技术有限公司 | 分布式数据库同步处理的方法和装置 |
KR101825910B1 (ko) * | 2016-08-31 | 2018-03-22 | 국방과학연구소 | 리두 로그 분석 기반의 중립 데이터를 이용한 이기종 데이터베이스의 데이터 동기화 시스템 및 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9607065B2 (en) * | 2013-04-26 | 2017-03-28 | Netapp, Inc. | Hierarchical coherency log for managing a distributed data storage system |
CN103617176B (zh) * | 2013-11-04 | 2017-03-15 | 广东电子工业研究院有限公司 | 一种实现多源异构数据资源自动同步的方法 |
US10671642B2 (en) * | 2016-11-11 | 2020-06-02 | International Business Machines Corporation | Copying data changes to a target database |
-
2018
- 2018-05-29 CN CN201810533666.1A patent/CN110543513B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187888A (zh) * | 2007-12-11 | 2008-05-28 | 浪潮电子信息产业股份有限公司 | 一种异构环境中复制数据库数据的方法 |
CN103067483A (zh) * | 2012-12-25 | 2013-04-24 | 广东邮电职业技术学院 | 基于数据包的远程数据增量同步方法和装置 |
EP2891994A1 (en) * | 2013-11-04 | 2015-07-08 | Guangdong Electronics Industry Institute Ltd. | Method for achieving automatic synchronization of multisource heterogeneous data resources |
CN103761318A (zh) * | 2014-01-27 | 2014-04-30 | 中国工商银行股份有限公司 | 一种关系型异构数据库数据同步的方法及*** |
CN105447054A (zh) * | 2014-09-25 | 2016-03-30 | 中兴通讯股份有限公司 | 一种数据库的数据同步方法、装置及*** |
CN105005618A (zh) * | 2015-07-21 | 2015-10-28 | 杭州合众数据技术有限公司 | 一种异构数据库之间的数据同步方法及*** |
CN105824865A (zh) * | 2015-12-09 | 2016-08-03 | 广东亿迅科技有限公司 | 一种分布式数据库间数据同步*** |
CN106250543A (zh) * | 2016-08-10 | 2016-12-21 | 深圳市彬讯科技有限公司 | 一种自动化数据查询同步存储方法 |
CN107783975A (zh) * | 2016-08-24 | 2018-03-09 | 北京京东尚科信息技术有限公司 | 分布式数据库同步处理的方法和装置 |
KR101825910B1 (ko) * | 2016-08-31 | 2018-03-22 | 국방과학연구소 | 리두 로그 분석 기반의 중립 데이터를 이용한 이기종 데이터베이스의 데이터 동기화 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN110543513A (zh) | 2019-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110543513B (zh) | 分布式数据库增量数据同步方法、设备及存储介质 | |
US11157512B2 (en) | Method and system for replicating data to heterogeneous database and detecting synchronization error of heterogeneous database through SQL packet analysis | |
CN109656934B (zh) | 基于日志解析的源端Oracle数据库DDL同步方法及设备 | |
CN108509658B (zh) | 一种xml文件的解析方法和装置 | |
CN110569214B (zh) | 用于日志文件的索引构建方法、装置及电子设备 | |
CN109739867B (zh) | 一种工业元数据管理方法及*** | |
CN110263009B (zh) | 日志分类规则的生成方法、装置、设备及可读存储介质 | |
US20060161558A1 (en) | Schema conformance for database servers | |
CN108121827B (zh) | 一种全量数据的同步方法及装置 | |
CN111857880B (zh) | 对话配置项信息管理方法、装置、设备及存储介质 | |
CN107506383B (zh) | 一种审计数据处理方法和计算机设备 | |
CN106209431A (zh) | 一种告警关联方法及网管*** | |
CN108920607B (zh) | 字段发现方法、装置及电子设备 | |
CN111930842B (zh) | 一种数据核对方法及装置 | |
CN111625540A (zh) | 一种关系型数据库数据同步完整性校验方法和装置 | |
CN111190807A (zh) | 一种埋点测试方法及设备 | |
CN112257032A (zh) | 一种确定app责任主体的方法及*** | |
CN110248030B (zh) | 短信补偿机制的测试方法、装置、设备及存储介质 | |
CN105719072B (zh) | 关联多段组件交易的***及方法 | |
CN112612802A (zh) | 一种实时数据中台的处理方法、装置及平台 | |
CN112860637A (zh) | 一种基于审计策略来处理日志的方法及*** | |
CN111045917A (zh) | 一种测试用例格式转换的方法及装置 | |
CN112597207B (zh) | 一种元数据管理*** | |
CN113360362B (zh) | 一种动态sql效率检查方法及插件 | |
CN116798650A (zh) | 一种基于大数据的流行病学密切接触者查找方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220112 Address after: 100176 602, floor 6, building 6, courtyard 10, KEGU 1st Street, Beijing Economic and Technological Development Zone, Daxing District, Beijing (Yizhuang group, high-end industrial area of Beijing Pilot Free Trade Zone) Applicant after: Jinzhuan Xinke Co.,Ltd. Address before: 518000 Zhongnan communication tower, South China Road, Nanshan District high tech Industrial Park, Shenzhen, Guangdong Applicant before: ZTE Corp. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |