CN117591602A - 一种cdc数据库日志的同步方法、装置、设备及介质 - Google Patents
一种cdc数据库日志的同步方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN117591602A CN117591602A CN202311576847.XA CN202311576847A CN117591602A CN 117591602 A CN117591602 A CN 117591602A CN 202311576847 A CN202311576847 A CN 202311576847A CN 117591602 A CN117591602 A CN 117591602A
- Authority
- CN
- China
- Prior art keywords
- database
- cdc
- block
- file
- log
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 230000000903 blocking effect Effects 0.000 claims abstract description 68
- 230000005540 biological transmission Effects 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 25
- 230000008569 process Effects 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 11
- 230000014509 gene expression Effects 0.000 claims description 7
- 238000012795 verification Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 2
- 238000005192 partition Methods 0.000 description 5
- 230000002194 synthesizing effect Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000013481 data capture Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例公开了一种CDC数据库日志的同步方法,应用于数据库同步技术领域,用于解决当前CDC数据传输效率低实时性差的问题,方法包括:将源数据库中的CDC数据库日志,并将CDC数据库日志加载到内存中;对内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;将分块信息文件传输到当前目标数据库,若分块信息文件传输完成则将各CDC数据库日志文件块传输到当前目标数据库;基于分块信息文件对当前目标数据库中的各CDC数据库日志文件块进行校验,以确定是否重传CDC数据库日志文件块。
Description
技术领域
本说明书涉及数据同步技术领域,尤其涉及一种CDC数据库日志的同步方法、装置、设备及介质。
背景技术
变化数据捕获(Change Data Capture,简称CDC),是一种用于捕获数据源中的变化数据,并生成相应的变化数据记录的数据处理技术。随着当前用户数据量与需求的不断提高,各种事务型数据库、分析型数据库等包含一套数据库系统的平台越来越多,而当某数据库中的数据由于插入、删除、更新等操作导致数据变化时,需要对同时运用该数据的数据库进行同步,从而保证平台数据的同步与统一避免由于数据不同步导致的处理错误的问题。
目前根据现有的CDC数据库同步系统对于CDC数据库日志进行处理时,虽然基于CDC技术可以几乎实时地将数据变更同步到目标系统中,但在某些情况下,由于网络延迟、系统负载等因素,数据同步可能会受到影响,导致实时性的降低。在复杂的数据环境中,数据同步可能面临各种挑战,如数据冲突、数据丢失等,这些问题可能导致数据同步传输过程中数据的完整性受损,而无法判断完整性时使得数据同步的效果较差。此外,虽然CDC技术所对应的数据库日志已经实现了数据的降维,但是对于复杂系统中的大量数据来说,基于CDC数据库日志进行批量数据同步时可能存在数据传输同步效率低的问题。
发明内容
为了解决上述技术问题,本说明书一个或多个实施例提供了一种CDC数据库日志的同步方法、装置、设备及介质。
本说明书一个或多个实施例采用下述技术方案:
本说明书一个或多个实施例提供一种CDC数据库日志的同步方法,方法包括:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
可选地,在本说明书一个或多个实施例中,对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块,具体包括:
获取所述CDC数据库日志中各变化数据所对应的数据来源,并基于所述数据来源提取所述CDC数据库日志内的敏感数据;
根据预置文件块配置信息对所述CDC数据库日志进行分块处理,获得多个CDC数据库日志文件块;
判断各所述CDC数据库日志文件块内是否包含所述敏感数据,以基于所述敏感数据的类型确定各所述CDC数据库日志文件块的权限信息;
获取各所述CDC数据库日志文件块的基本分块信息,以汇总各所述CDC数据库日志文件块的基本分块信息与权限信息,生成所述CDC数据库日志的分块信息文件;其中,所述基本分块信息至少包括:CDC数据库日志文件块的文件块大小、文件块数据量。
可选地,在本说明书一个或多个实施例中,基于所述数据来源提取所述CDC数据库日志内的敏感数据,具体包括:
基于所述数据来源确定各所述变化数据所对应的数据类型,以基于预置敏感数据类型确定所述CDC数据库日志内的疑似敏感数据;
获取各所述数据来源中敏感数据的正则表达式,以基于所述敏感数据的正则表达式对所述疑似敏感数据进行逐个判断;
若确定所述疑似敏感数据为敏感数据,则对所述敏感数据进行提取记录。
可选地,在本说明书一个或多个实施例中,将各所述CDC数据库日志文件块传输到所述当前目标数据库之前,所述方法还包括:
根据所述CDC数据库日志文件块中是否具有敏感数据,对所述CDC数据库日志文件进行划分获得第一CDC数据库日志文件块与第二CDC数据库日志文件块;
根据各所述第一CDC数据库日志文件块的权限信息确定与所述第一CDC数据库日志文件块相对应的角色信息;
基于所述角色信息与所述源数据库的公钥对所述第一CDC数据库日志文件块进行加密,获得加密文件块;
确定所述源数据库与所述当前目标数据库所对应的网络通道,以基于所述网络通道将各所述第二CDC数据库日志文件块与所述加密文件块,并行传输到所述当前目标数据库。
可选地,在本说明书一个或多个实施例中,基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块,具体包括:
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行完整性校验;
若基于所述分块信息文件确定所述CDC数据库日志文件块与所述分块信息文件中的分块信息相一致,则确定所述CDC数据库日志文件块完整;
若基于所述分块信息文件确定所述CDC数据库日志文件块与所述分块信息文件中的分块信息不一致,则重传该CDC数据库日志文件块。
可选地,在本说明书一个或多个实施例中,基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块之后,所述方法还包括:
基于所述分块信息文件,确定所述CDC数据库日志所对应的各所述CDC数据库日志文件块,是否完成传输;
若是,则基于所述分块信息文件确定各所述CDC数据库日志文件块的划分顺序;
基于所述划分顺序对各所述CDC数据库日志文件块进行拼接,以合成待存储的CDC数据库日志文件进行存储。
可选地,在本说明书一个或多个实施例中,基于所述划分顺序对各所述CDC数据库日志文件块进行拼接,以合成待存储的CDC数据库日志文件进行存储之后,所述方法还包括:
若确定所述当前目标数据库已存储所述待存储的CDC数据库日志文件,则基于所述CDC数据库日志文件的id信息,生成所述源数据库的文件块删除指令与所述当前目标数据库的文件块删除指令;
分别向所述源数据库与所述当前目标数据库发送对应的文件块删除指令,以删除所述CDC数据库日志所对应的各所述CDC数据库日志文件块。
本说明书一个或多个实施例提供一种CDC数据库日志的同步装置,装置包括:
加载单元,用于将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
分块单元,用于对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
传输单元,用于将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
校验单元,用于基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
本说明书一个或多个实施例提供一种CDC数据库日志的同步设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
本说明书一个或多个实施例提供的一种非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过对于CDC数据库日志的分块处理使得CDC数据库日志以小块CDC数据库日志文件块的形式进行后续的同步过程,减少了由于网络延迟、系统负载等因素在数据同步的传输过程中造成的数据拥堵和卡顿的可能性,从而保证了数据传输的可靠性和稳定性。在对CDC数据库日志进行传输前先将分块信息文件传输到当前的目标数据中,从而基于分块信息文件对各CDC数据库日志文件块进行完整性校验,从而确保了数据同步过程中的完整性,防止了在传输过程中出现的数据损坏或丢失问题导致数据同步不可靠的问题。通过文件块删除指令删除源数据库与当前目标数据库中已经同步处理后的CDC数据库日志文件块,既可以确保数据库中的存储空间能够得到合理的利用,也能够防止已经处理后的CDC数据库日志文件块在后续操作过程中被错误重复使用的问题。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本说明书实施例提供的一种CDC数据库日志的同步方法流程示意图;
图2为本说明书实施例提供的一种CDC数据库日志的同步装置内部结构示意图;
图3为本说明书实施例提供的一种CDC数据库日志的同步设备内部结构示意图;
图4为本说明书实施例提供的一种非易失性存储介质内部结构示意图。
具体实施方式
本说明书实施例提供一种CDC数据库日志的同步方法、装置、设备及介质。
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
如图1所示,本说明书实施例提供了一种CDC数据库日志的同步方法流程示意图。由图1可知,本说明书一个或多个实施例中提供了一种CDC数据库日志的同步方法,方法包括:
S101:将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中。
为了实现对于数据库中数据的同步保证系统的正常运行,本说明书实施例中首先获取源数据库也就是需要传输的同步数据的来源数据库中的CDC数据库日志,并且将该CDC数据库日志加载到内存中,以便后续对于该CDC数据库日志的处理。其中,需要说明的是:CDC数据库日志为记录数据库变更信息的日志文件。
S102:对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块。
为了增强数据传输的可靠性与稳定性同时提高数据传输的效率,本说明书实施例中对上述步骤S101获取的内存中的CDC数据库日志进行分块处理,从而获得该CDC数据库日志所对应的分块信息文件与CDC数据库日志文件块。其中,可以理解的是,通过对于CDC数据库日志的分块处理使得CDC数据库日志以小块CDC数据库日志文件块的形式进行后续的传输同步,减少了由于网络延迟、系统负载等因素在数据同步过程中造成的数据拥堵和卡顿的可能性,从而保证了数据同步过程中数据传输的可靠性和稳定性。
具体地,在本说明书一个或多个实施例中,对内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块,具体包括以下过程:
首先,由于数据库中文件可能存在敏感信息而不同数据库又对应了不同的管理人员与使用人员,因此为了避免数据同步过程中导致的敏感信息泄露的问题,本说明书实施例中获取CDC数据库日志中各变化数据所对应的数据来源,从而根据数据来源提取到CDC数据库日志内的敏感数据。然后为了提高数据传输的效率降低数据卡顿的问题根据预置文件块配置信息对CDC数据库日志进行分块处理,获得多个CDC数据库日志文件块。然后判断各CDC数据库日志文件块内是否包含了敏感数据,进而根据敏感数据的类型确定出各个CDC数据库日志文件块的权限信息。然后获取各CDC数据库日志文件块的基本分块信息,以汇总各CDC数据库日志文件块的基本分块信息与权限信息,生成CDC数据库日志的分块信息文件。其中,需要说明的是基本分块信息至少包括:CDC数据库日志文件块的文件块大小、文件块数据量。
进一步地,在本说明书一个或多个实施例中,上述过程中基于数据来源提取CDC数据库日志内的敏感数据,具体包括以下实现过程:首先根据数据来源确定出各变化数据所对应的数据类型,从而基于预置敏感数据类型确定出CDC数据库日志中的疑似敏感数据。然后获取到各个数据来源中敏感数据的正则表达式,从而根据敏感数据的正则表达式对疑似敏感数据进行逐个对比判断。如果确定出该疑似敏感数据与敏感数据的正则表达式相匹配,则对该疑似敏感数据进行提取记录作为该CDC数据库日志内的敏感数据。
S103:将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库。
基于上述步骤S102完成对于源数据库中的CDC数据库日志的分块处理之后,为了方便对于数据传输过程中的CDC数据库日志文件块的完整性进行校验,本说明书实施例中在对CDC数据库日志进行传输前先将分块信息文件传输到当前的目标数据中,如果分块信息文件传输完成,那么将各个CDC数据库日志文件块同时传输到当前目标数据库中进行数据同步。其中,需要说明的是当前目标数据库为需要接收CDC数据库日志进行数据同步的目标数据库。
进一步地,在本说明书一个或多个实施例中,将各CDC数据库日志文件块传输到当前目标数据库之前,为了保证数据传输的可靠性避免数据传输过程中敏感信息泄露的问题,方法还包括以下过程:
首先,根据CDC数据库日志文件块中是否具有敏感数据,对CDC数据库日志文件进行划分获得,包含有敏感数据的第一CDC数据库日志文件块与不包含敏感数据的第二CDC数据库日志文件块。然后根据各第一CDC数据库日志文件块的权限信息确定出和第一CDC数据库日志文件块相对应的角色信息。再基于角色信息与源数据库的公钥对第一CDC数据库日志文件块进行加密,获得加密文件块。然后确定源数据库与当前目标数据库所对应的网络通道,从而通过网络通道将各第二CDC数据库日志文件块与加密文件块,并行传输到当前目标数据库中。通过对于CDC数据库日志文件块进行并行传输的方式提高了需要进行同步的数据的传输效率。
S104:基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
基于上述S103过程中将分块信息文件与CDC数据库日志文件块传输到当前目标文件块中之后,本说明书实施例中通过分块信息文件对当前目标数据库中的各所述CDC数据库日志文件块进行校验,判断数据的完整性确定是否需要对CDC数据库日志文件块进行重传,通过对于文件块进行完整性校验的方式,方便了对于不完整或者存在数据丢失的CDC数据库日志文件块进行重传,保证了数据的完整率,有效防止了数据传输过程中出现的数据损坏或数据丢失问题。
具体地,在本说明书一个或多个实施例中,基于分块信息文件对当前目标数据库中的各CDC数据库日志文件块进行校验,以确定是否重传CDC数据库日志文件块,具体包括以下步骤:基于分块信息文件对当前目标数据库中的各所述CDC数据库日志文件块进行完整性校验。如果根据分块信息文件确定该CDC数据库日志文件块与分块信息文件中的分块信息一致,那么可以确定CDC数据库日志文件块是完整的。如果根据分块信息文件确定CDC数据库日志文件块与分块信息文件中的分块信息不一致,那么就重传该CDC数据库日志文件块。
进一步地,在本说明书一个或多个实施例中,基于分块信息文件对当前目标数据库中的各CDC数据库日志文件块进行校验,以确定是否重传CDC数据库日志文件块之后,方法还包括:基于上述过程中当前目标数据库中接收到的分块信息文件,确定CDC数据库日志所对应的各CDC数据库日志文件块,是否完成传输,如果完成了传输那么就根据获取到的分块信息文件,确定出各个CDC数据库日志文件块的划分顺序。以便于根据划分顺序对各CDC数据库日志文件块进行拼接,合成待存储的CDC数据库日志文件进行存储。
进一步地,在本说明书一个或多个实施例中,为了确保当前目标数据库与源数据库中的存储空间能够得到合理的利用,基于划分顺序对各CDC数据库日志文件块进行拼接,以合成待存储的CDC数据库日志文件进行存储之后,方法还包括以下过程:
如果确定当前目标数据库已存储待存储的CDC数据库日志文件,那么就根据CDC数据库日志文件的id信息,生成源数据库的文件块删除指令与当前目标数据库的文件块删除指令。然后分别向源数据库与当前目标数据库发送对应的文件块删除指令,以删除CDC数据库日志所对应的各所述CDC数据库日志文件块。通过文件块删除指令删除源数据库与当前目标数据库中已经同步处理后的CDC数据库日志文件块,既可以确保数据库中的存储空间能够得到合理的利用,也能够防止已经处理后的CDC数据库日志文件块在后续操作过程中被错误重复使用的问题,提高了数据库的可靠性。
在本说明书某应用场景下上述方法在CDC数据库日志的同步场景中,通过以下步骤执行:
步骤S1:连接到源数据库,然后读取该源数据库中的CDC数据库日志文件,将这些CDC数据库日志文件数据加载到内存中以进行处理。
步骤S2:根据预设的文件块配置信息,例如文件块大小,生成文件分块信息。对S1步骤放入内存中的CDC数据库日志进行分块或合成处理,将每个文件块写入单独的文件中。并记录每个文件块的相关信息写入另一个文件中以备后续的文件块完整性校验。
步骤S3:传递文件分块信息文件,将S2加工生成的文件块信息文件通过适当的网络通道传递到目标数据库。
步骤S4:传递文件块,在S3步骤的文件块信息文件被传递到目标库后,使用适当的并行传输方法将所有分割的文件块文件传递到目标库。在这个过程中,无需考虑文件块的先后顺序。
步骤S5:检查文件块文件是否完整,在文件块被传递到目标库后,使用先前S3步骤传递的文件块信息文件对每个文件块进行检查。如果发现任何文件块不完整或丢失,对其进行重传。
步骤S6:合成CDC数据库日志,在所有文件块都已成功传递并检查后,使用这些文件块和文件块信息文件在目标库中合成CDC数据库日志文件。
步骤S7:向源库传递删除所有文件块指令,在确保目标库已成功接收并处理所有文件块后,向源库发送指令以删除所有已传输的文件块,从而确保源库的存储空间不会被无用的数据块占据。
步骤S8:向目标库传递删除所有文件块指令,同时,向目标库发送指令以删除所有已接收和处理的文件块。这既可以确保目标库的存储空间得到合理利用,也可以防止已处理的数据块在后续操作中被错误地重复使用。
如图2所示,本说明书实施例中提供了一种CDC数据库日志的同步装置内部结构示意图。由图2可知本说明书一个或多个实施例中,一种CDC数据库日志的同步装置,装置包括:
加载单元201,用于将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
分块单元202,用于对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
传输单元203,用于将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
校验单元204,用于基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
如图3所示,本说明书实施例中提供了一种CDC数据库日志的同步设备内部结构示意图,由图3可知,本说明书一个或多个实施例中,一种CDC数据库日志的同步设备,设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
如图4所示,本说明书实施例中提供了一种非易失性存储介质内部结构示意图,由图4可知,本说明书一个或多个实施例中提供了一种非易失性存储介质,存储有计算机可执行指令401,所述计算机可执行指令401能够:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述仅为本说明书的一个或多个实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书的一个或多个实施例可以有各种更改和变化。凡在本说明书的一个或多个实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。
Claims (10)
1.一种CDC数据库日志的同步方法,其特征在于,所述方法包括:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
2.根据权利要求1所述的一种CDC数据库日志的同步方法,其特征在于,对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块,具体包括:
获取所述CDC数据库日志中各变化数据所对应的数据来源,并基于所述数据来源提取所述CDC数据库日志内的敏感数据;
根据预置文件块配置信息对所述CDC数据库日志进行分块处理,获得多个CDC数据库日志文件块;
判断各所述CDC数据库日志文件块内是否包含所述敏感数据,以基于所述敏感数据的类型确定各所述CDC数据库日志文件块的权限信息;
获取各所述CDC数据库日志文件块的基本分块信息,以汇总各所述CDC数据库日志文件块的基本分块信息与权限信息,生成所述CDC数据库日志的分块信息文件;其中,所述基本分块信息至少包括:CDC数据库日志文件块的文件块大小、文件块数据量。
3.根据权利要求2所述的一种CDC数据库日志的同步方法,其特征在于,基于所述数据来源提取所述CDC数据库日志内的敏感数据,具体包括:
基于所述数据来源确定各所述变化数据所对应的数据类型,以基于预置敏感数据类型确定所述CDC数据库日志内的疑似敏感数据;
获取各所述数据来源中敏感数据的正则表达式,以基于所述敏感数据的正则表达式对所述疑似敏感数据进行逐个判断;
若确定所述疑似敏感数据为敏感数据,则对所述敏感数据进行提取记录。
4.根据权利要求2所述的一种CDC数据库日志的同步方法,其特征在于,将各所述CDC数据库日志文件块传输到所述当前目标数据库之前,所述方法还包括:
根据所述CDC数据库日志文件块中是否具有敏感数据,对所述CDC数据库日志文件进行划分获得第一CDC数据库日志文件块与第二CDC数据库日志文件块;
根据各所述第一CDC数据库日志文件块的权限信息确定与所述第一CDC数据库日志文件块相对应的角色信息;
基于所述角色信息与所述源数据库的公钥对所述第一CDC数据库日志文件块进行加密,获得加密文件块;
确定所述源数据库与所述当前目标数据库所对应的网络通道,以基于所述网络通道将各所述第二CDC数据库日志文件块与所述加密文件块,并行传输到所述当前目标数据库。
5.根据权利要求1所述的一种CDC数据库日志的同步方法,其特征在于,基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块,具体包括:
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行完整性校验;
若基于所述分块信息文件确定所述CDC数据库日志文件块与所述分块信息文件中的分块信息相一致,则确定所述CDC数据库日志文件块完整;
若基于所述分块信息文件确定所述CDC数据库日志文件块与所述分块信息文件中的分块信息不一致,则重传该CDC数据库日志文件块。
6.根据权利要求1所述的一种CDC数据库日志的同步方法,其特征在于,基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块之后,所述方法还包括:
基于所述分块信息文件,确定所述CDC数据库日志所对应的各所述CDC数据库日志文件块,是否完成传输;
若是,则基于所述分块信息文件确定各所述CDC数据库日志文件块的划分顺序;
基于所述划分顺序对各所述CDC数据库日志文件块进行拼接,以合成待存储的CDC数据库日志文件进行存储。
7.根据权利要求6所述的一种CDC数据库日志的同步方法,其特征在于,基于所述划分顺序对各所述CDC数据库日志文件块进行拼接,以合成待存储的CDC数据库日志文件进行存储之后,所述方法还包括:
若确定所述当前目标数据库已存储所述待存储的CDC数据库日志文件,则基于所述CDC数据库日志文件的id信息,生成所述源数据库的文件块删除指令与所述当前目标数据库的文件块删除指令;
分别向所述源数据库与所述当前目标数据库发送对应的文件块删除指令,以删除所述CDC数据库日志所对应的各所述CDC数据库日志文件块。
8.一种CDC数据库日志的同步装置,其特征在于,所述装置包括:
加载单元,用于将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
分块单元,用于对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
传输单元,用于将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
校验单元,用于基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
9.一种CDC数据库日志的同步设备,其特征在于,所述设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
10.一种非易失性存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令能够:
将源数据库中的CDC数据库日志,并将所述CDC数据库日志加载到内存中;
对所述内存中的CDC数据库日志进行分块处理,获取分块信息文件与CDC数据库日志文件块;
将所述分块信息文件传输到当前目标数据库,若所述分块信息文件传输完成则将各所述CDC数据库日志文件块传输到所述当前目标数据库;
基于所述分块信息文件对所述当前目标数据库中的各所述CDC数据库日志文件块进行校验,以确定是否重传所述CDC数据库日志文件块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311576847.XA CN117591602A (zh) | 2023-11-23 | 2023-11-23 | 一种cdc数据库日志的同步方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311576847.XA CN117591602A (zh) | 2023-11-23 | 2023-11-23 | 一种cdc数据库日志的同步方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117591602A true CN117591602A (zh) | 2024-02-23 |
Family
ID=89916217
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311576847.XA Pending CN117591602A (zh) | 2023-11-23 | 2023-11-23 | 一种cdc数据库日志的同步方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117591602A (zh) |
-
2023
- 2023-11-23 CN CN202311576847.XA patent/CN117591602A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109636388B (zh) | 区块链网络中的数据处理方法、装置、介质及电子设备 | |
US20150178170A1 (en) | Method and Apparatus for Recovering Data | |
WO2020151181A1 (zh) | 基于区块链的跨平台数据更新方法、装置和计算机设备 | |
CN111680008B (zh) | 日志处理方法、系统、可读存储介质及智能设备 | |
CN112822260B (zh) | 文件传输方法及装置、电子设备、存储介质 | |
WO2021135131A1 (zh) | 区块链的交易方法、装置、计算机设备及存储介质 | |
CN109743133B (zh) | 数据对账方法及装置 | |
CN110147354B (zh) | 批量数据编辑方法、装置、计算机设备及存储介质 | |
CN114612101A (zh) | 面向连接的可靠链间路由跨链方法及系统 | |
CN108572888A (zh) | 磁盘快照创建方法和磁盘快照创建装置 | |
CN113138880B (zh) | 区块链系统灰度发布方法、装置、设备及存储介质 | |
CN102523205A (zh) | 内容校验和的确定方法及装置 | |
CN109462661A (zh) | 数据同步方法、装置、计算机设备和存储介质 | |
CN109409659A (zh) | 风险预警方法、装置、计算机设备和存储介质 | |
CN117591602A (zh) | 一种cdc数据库日志的同步方法、装置、设备及介质 | |
CN110968899B (zh) | 一种基于区块链的数据分块确认方法、装置、设备和介质 | |
CN109587202B (zh) | 文件校验和数据处理之间的协同处理方法、装置及系统 | |
JP2012089049A (ja) | 計算機システム及びサーバ | |
CN112685077A (zh) | 数据修改方法、系统、计算机设备及计算机可读存储介质 | |
CN113315795B (zh) | 云主机镜像的同步方法、装置和存储介质 | |
CN110490005B (zh) | 资源转移请求的处理方法、装置和计算机可读存储介质 | |
CN111949738A (zh) | 基于区块链的数据存储去重方法、终端设备和存储介质 | |
CN111460436A (zh) | 一种基于区块链的非结构化数据操作方法和系统 | |
CN117435404B (zh) | 永久增量备份数据储存的处理方法、系统及数据恢复方法 | |
CN111310238B (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 |