掌桥专利:专业的专利平台
掌桥专利
首页

存储系统的数据核对方法、装置及设备

文献发布时间:2023-06-19 19:28:50


存储系统的数据核对方法、装置及设备

技术领域

本申请涉及数据领域,尤其涉及一种存储系统的数据核对方法、装置及设备。

背景技术

目前,为了方便用户对数据进行查询,可以将数据存储在多个数据库中,进而由多个数据库组成一个数据存储系统,以便不同的用户可以访问不同的数据库进行数据查询。并且,为了确保多个数据库在进行数据同步时的数据准确性,通常需要对数据进行数据核对。

相关技术中,可以采用人工抽检的方式对数据存储系统中的多个数据库中的数据进行核对。然而,上述方式效率较低,容易导致用户无法获取到准确的数据。

因此,亟需一种存储系统的数据核对方法,以避免上述技术问题。

发明内容

本申请提供一种存储系统的数据核对方法、装置及设备,用以解决相关技术中在存储系统中的数据库进行数据核对时的效率较低的问题。

第一方面,本申请提供一种存储系统的数据核对方法,包括:

获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,所述存储系统包括:多个数据库;所述多个数据库依次连接;所述数据库用于同步与其连接的前一数据库的数据;所述第一数据库为所述多个数据库中的首个数据库;所述第二数据库为所述多个数据库中的最后一个数据库;

若确定所述第二数据与所述第一数据不同,则确定剩余数据库集合为包括所述多个数据库中除第一数据库和第二数据库以外的数据库的集合;

重复以下步骤,直至达到预设停止条件:在所述剩余数据库集合中确定目标数据库,并将所述目标数据库中的目标数据与第一数据进行数据核对,确定核对结果;在所述剩余数据库集合中删除所述目标数据库。

在一种可能的实现方式中,在所述剩余数据库集合中确定目标数据库,包括:

若确定存在前一目标数据库,且所述前一目标数据库对应的核对结果表征一致,则在所述剩余数据库集合中,确定位于前一目标数据库的连接次序之后的数据库作为目标数据库;其中,所述前一目标数据库为本次重复过程的前一次重复过程中所确定的目标数据库。

在一种可能的实现方式中,将所述目标数据库中的目标数据与第一数据进行数据核对,确定核对结果,包括:

若确定所述目标数据库用于存储所述第一数据库的增量数据,则确定所述第一数据中的增量数据的变化率信息;其中,所述变化率信息用于指示单位时间内所产生的增量数据的数量;

若确定所述变化率信息大于预设阈值,则确定具有最大存储时间的第一数据的增量数据为第一比对数据;确定具有最大存储时间的目标数据为第二比对数据;

根据所述第一比对数据和所述第二比对数据,确定核对结果。

在一种可能的实现方式中,所述确定具有最大存储时间的第一数据的增量数据为第一比对数据,包括:

基于所述第一数据库对应的预设查询语句和所述最大存储时间,生成数据查询语句;

基于所述数据查询语句,在所述第一数据库中确定具有最大存储时间的第一数据的增量数据为第一比对数据。

在一种可能的实现方式中,所述方法还包括:

若确定所述变化率信息小于或等于预设阈值,则确定预设时段内存储的第一数据的增量数据为第三比对数据;确定所述预设时段存储的目标数据为第四比对数据;

根据所述第三比对数据和所述第四比对数据,确定核对结果。

在一种可能的实现方式中,根据所述第三比对数据和所述第四比对数据,确定核对结果,包括:

确定所述第三比对数据的第一总数量和所述第四比对数据的第二总数量;

若确定所述第一总数量和所述第二总数量不同,则确定所述核对结果表征所述第三比对数据与所述第四比对数据不同。

在一种可能的实现方式中,所述方法还包括:

若确定所述目标数据库用于存储所述第一数据库的基量数据,则确定至少一个数据生成时间;

确定具有所述数据生成时间的第一数据的基量数据为第五比对数据;确定具有所述数据生成时间的目标数据为第六比对数据;

根据所述第五比对数据和所述第六比对数据,确定核对结果。

在一种可能的实现方式中,若所述目标数据库与所述第一数据库的数据库类型不同,则根据所述第五比对数据和所述第六比对数据,确定核对结果,包括:

确定所述目标数据库的第一数据库类型和所述第一数据库的第二数据库类型;

根据所述第一数据库类型和所述第二数据库类型,确定转换信息,所述转换信息用于5将所述第一数据库类型中的数据格式转换为所述第二数据库类型的数据格式;

调用所述转换信息,对所述第六比对数据进行数据转换处理,得到转换后的第六数据;根据所述转换后的第六数据和所述第五比对数据,确定核对结果。

在一种可能的实现方式中,所述预设停止条件为依次连接的相邻两个数据库中,前一数据库的核对结果表征一致,且后一数据库的核对结果表征不一致。

0第二方面,本申请提供一种存储系统的数据核对装置,包括:

获取单元,用于获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,所述存储系统包括:多个数据库;所述多个数据库依次连接;所述数据库用于同步与其连接的前一数据库的数据;所述第一数据库为所述多个数据库中的首个数据库;所述第

二数据库为所述多个数据库中的最后一个数据库;

5第一确定单元,用于若确定所述第二数据与所述第一数据不同,则确定剩余数据库集

合为包括所述多个数据库中除第一数据库和第二数据库以外的数据库的集合;

重复以下第二确定单元、核对单元和删除单元,直至达到预设停止条件:

第二确定单元,用于在所述剩余数据库集合中确定目标数据库;

核对单元,用于将所述目标数据库中的目标数据与第一数据进行数据核对,确定核对0结果;

删除单元,用于在所述剩余数据库集合中删除所述目标数据库。

在一种可能的实现方式中,第二确定单元,具体用于:

若确定存在前一目标数据库,且所述前一目标数据库对应的核对结果表征一致,则在

所述剩余数据库集合中,确定位于前一目标数据库的连接次序之后的数据库作为目标数据5库;其中,所述前一目标数据库为本次重复过程的前一次重复过程中所确定的目标数据库。

在一种可能的实现方式中,核对单元,包括:

第一确定模块,用于若确定所述目标数据库用于存储所述第一数据库的增量数据,则确定所述第一数据中的增量数据的变化率信息;其中,所述变化率信息用于指示单位时间

内所产生的增量数据的数量;

0第二确定模块,用于若确定所述变化率信息大于预设阈值,则确定具有最大存储时间的第一数据的增量数据为第一比对数据;

第三确定模块,用于确定具有最大存储时间的目标数据为第二比对数据;

第一核对模块,用于根据所述第一比对数据和所述第二比对数据,确定核对结果。

在一种可能的实现方式中,所述第二确定模块,具体用于:

基于所述第一数据库对应的预设查询语句和所述最大存储时间,生成数据查询语句;

基于所述数据查询语句,在所述第一数据库中确定具有最大存储时间的第一数据的增量数据为第一比对数据。

在一种可能的实现方式中,所述装置还包括:

第四确定模块,用于若确定所述变化率信息小于或等于预设阈值,则确定预设时段内存储的第一数据的增量数据为第三比对数据;

第五确定模块,用于确定所述预设时段存储的目标数据为第四比对数据;

第二核对模块,用于根据所述第三比对数据和所述第四比对数据,确定核对结果。

在一种可能的实现方式中,第二核对模块,具体用于:

确定所述第三比对数据的第一总数量和所述第四比对数据的第二总数量;

若确定所述第一总数量和所述第二总数量不同,则确定所述核对结果表征所述第三比对数据与所述第四比对数据不同。

在一种可能的实现方式中,所述装置还包括:

第六确定模块,用于若确定所述目标数据库用于存储所述第一数据库的基量数据,则确定至少一个数据生成时间;

第七确定模块,用于确定具有所述数据生成时间的第一数据的基量数据为第五比对数据;

第八确定模块,用于确定具有所述数据生成时间的目标数据为第六比对数据;

第三核对模块,用于根据所述第五比对数据和所述第六比对数据,确定核对结果。

在一种可能的实现方式中,若所述目标数据库与所述第一数据库的数据库类型不同,则第三核对模块,具体用于:

确定所述目标数据库的第一数据库类型和所述第一数据库的第二数据库类型;

根据所述第一数据库类型和所述第二数据库类型,确定转换信息,所述转换信息用于将所述第一数据库类型中的数据格式转换为所述第二数据库类型的数据格式;

调用所述转换信息,对所述第六比对数据进行数据转换处理,得到转换后的第六数据;

根据所述转换后的第六数据和所述第五比对数据,确定核对结果。

在一种可能的实现方式中,所述预设停止条件为依次连接的相邻两个数据库中,前一数据库的核对结果表征一致,且后一数据库的核对结果表征不一致。

第三方面,本申请提供一种电子设备,包括:存储器,处理器;

存储器;用于存储所述处理器可执行指令的存储器;

其中,所述处理器,用于根据所述可执行指令执行如第一方面任一项所述的方法。

第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面任一项所述的方法。

第五方面,本申请提供一种计算机程序产品,所述计算机程序产品包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法。

本申请提供的存储系统的数据核对方法、装置及设备,包括:获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,所述存储系统包括:多个数据库;所述多个数据库依次连接;所述数据库用于同步与其连接的前一数据库的数据;所述第一数据库为所述多个数据库中的首个数据库;所述第二数据库为所述多个数据库中的最后一个数据库;若确定所述第二数据与所述第一数据不同,则确定剩余数据库集合为包括所述多个数据库中除第一数据库和第二数据库以外的数据库的集合;重复以下步骤,直至达到预设停止条件:在所述剩余数据库集合中确定目标数据库,并将所述目标数据库中的目标数据与第一数据进行数据核对,确定核对结果;在所述剩余数据库集合中删除所述目标数据库。通过上述方法,可以避免将目标数据库与其余数据库中的数据进行核对时,无法确保目标数据库中的数据是否准确的问题,并且,相比于人工进行数据库的数据核对的方式,可以提高数据核对效率。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1为本申请实施例提供的一种数据核对方法的流程示意图;

图2为本申请实施例提供的一种存储系统的示意图;

图3为本申请实施例提供的第二种数据核对方法的流程示意图;

图4为本申请实施例提供的第三种数据核对方法的流程示意图;

图5为本申请实施例提供的又一种存储系统的结构示意图;

图6为本申请实施例提供一种存储系统的数据核对装置的结构示意图;

图7为本申请实施例提供的第二种存储系统的数据核对装置的结构示意图;

图8为本申请实施例中提供的一种电子设备的结构示意图。

通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与本申请的一些方面相一致的装置和方法的例子。

目前,随着信息技术的不断发展,越来越多的用户都将数据存储到数据库中,以便后续进行数据处理。并且,为了便于用户进行数据查询,也可以选择数据存储在多个数据库中,进而由多个数据库组成一个数据存储系统,以便不同的用户可以选择访问不同的数据库进行数据查询。在多个数据库组成的数据存储系统中,所包含的数据库类型可以相同,也可以不同,以便符合用户的访问需求。为了便于多个数据库确保多个数据库中的数据存储准确性,通常需要对不同数据库之间所同步的数据进行数据核对处理。

相关技术中,可以采用人工抽检的方式对数据存储系统中的多个数据库中的数据进行核对。然而,上述方式效率较低,容易导致用户无法获取到准确的数据

本申请提供的存储系统的数据核对方法,用以解决上述技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

图1为本申请实施例提供的一种数据核对方法的流程示意图,如图1所示,该方法包括以下步骤:

S101、获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,存储系统包括:多个数据库;多个数据库依次连接;数据库用于同步与其连接的前一数据库的数据;第一数据库为多个数据库中的首个数据库;第二数据库为多个数据库中的最后一个数据库。

示例性地,图2为本申请实施例提供的一种存储系统的示意图。如图2所示该存储系统中包括多个依次连接的数据库,例如,图中的数据库1-n,其中,n为正整数;其中,首个数据库中存储的数据为初始数据,多个数据库中除首个数据库以外的其余数据库中的数据均采用同步与其连接的前一数据库中的数据得到,即图中,第二个数据库中的数据为从第一个数据库中所获取的,第三个数据库中的数据为从第二个数据库中所获取的,以此类推,完成多个数据库中的数据同步,进而,可以理解的是,每个数据库中存储的数据在多个数据库中的首个数据库中均存在。

其中,本实施例中的第一数据库为多个数据库中的首个数据库,本实施例中的第二数据库为多个数据库中的最后一个数据库。第一数据库中存储的数据称为第一数据,且第二数据库中存储的数据称为第二数据。

因此,本实施例中,为了对存储系统中的数据库进行数据核对,首先会将第一数据库中的第一数据与第二数据库中的第二数据进行比对,并确定第二数据是否与第一数据相同。

若确定出第二数据与第一数据相同,则表明在多个依次连接数据库在依次进行数据同步时,所同步的数据为准确的,则此时无需在进行其余数据库与数据库之间的数据核对处理。

需要说明的是,本实施例中在比对第一数据和第二数据时,可以参照相关技术中的数据核对方式,本实施例中不做具体限制。

S102、若确定第二数据与第一数据不同,则确定剩余数据库集合为包括多个数据库中除第一数据库和第二数据库以外的数据库的集合。

示例性地,本实施例中,若确定第二数据与第一数据不同,则表明多个数据库依次进行数据库与数据库之间的数据同步时,存在同步错误,则需要继续对剩余的数据库进行数据核对,以便确定出数据同步出现错误的其余数据库。即,将多个数据库中除第一数据库和第二数据库以外的剩余数据库作为剩余数据库集合中所包含的数据库。

重复以下步骤S103和步骤S104,直至达到预设停止条件:

S103、在剩余数据库集合中确定目标数据库,并将目标数据库中的目标数据与第一数据进行数据核对,确定核对结果。

示例性地,本实施例中,在对剩余数据库集合中的数据库进行数据核对时,首先可以在剩余数据库中选择一个数据库作为目标数据库。其中,在首次从剩余数据库集合中选择目标数据库时,可以随机选择一个数据库作为目标数据库,也可以选择第二数据库的前一个连接的数据库为目标数据库。本实施例中,对于目标数据库的选择不作具体限制。

并且,在确定出目标数据库之后,由于第一数据库中所存储的数据为该存储系统中的原始的数据,因此可以将目标数据库中的目标数据与第一数据库中的第一数据进行比对,进而确定目标数据库中的数据是否存在同步错误的问题。

S104、在剩余数据库集合中删除目标数据库。

示例性地,本实施例中,若确定第一数据库中的第一数据与目标数据之间的数据核对结果表征第一数据和目标数据相同,则表明目标数据库所存储的数据准确;若确定第一数据库中的第一数据与目标数据之间的数据核对结果表征第一数据和目标数据不相同,则表明目标数据库所存储的数据不准确。

并且,在确定出核对结果之后,可以在剩余数据库集合中删除该目标数据库。

此时,可以判断是否达到预设停止条件,若确定达到预设停止条件,则此时,停止数据核对过程,否则,则重复步骤S103和步骤S104。

一个示例中,预设停止条件可以为剩余数据库集合中的数据库的数量为0,即,通过不断重复上述数据核对过程,将多个数据库中的每一数据库中的数据均与第一数据库中的第一数据进行核对,进而确定出每一数据库中的数据同步的准确性。

可以理解的是,本实施例中,首先可以比对多个数据库中的最后一个数据库(即,第二数据库)和首个数据库(即,第一数据库)的数据,若确定二者数据相同,则表明存储系统中的各个数据库之间的数据存储为准确的。若不一致,则可以在剩余数据库集合中,选择目标数据库与第一数据库中的数据进行数据核对,以避免将目标数据库与其余数据库中的数据进行核对时,无法确保目标数据库中的数据是否准确的问题,并且,相比于人工进行数据库的数据核对的方式,可以提高数据核对效率。

图3为本申请实施例提供的第二种数据核对方法的流程示意图,如图3所示,该方法包括以下步骤:

S301、获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,存储系统包括:多个数据库;多个数据库依次连接;数据库用于同步与其连接的前一数据库的数据;第一数据库为多个数据库中的首个数据库;第二数据库为多个数据库中的最后一个数据库。

S302、若确定第二数据与第一数据不同,则确定剩余数据库集合为包括多个数据库中除第一数据库和第二数据库以外的数据库的集合。

示例性地,步骤S301与步骤S302的具体原理可以参见步骤S101与步骤S102,此处不再赘述。

重复以下步骤,直至达到预设停止条件:

S303、若确定存在前一目标数据库,且前一目标数据库对应的核对结果表征一致,则在剩余数据库集合中,确定位于前一目标数据库的连接次序之后的数据库作为目标数据库;其中,前一目标数据库为本次重复过程的前一次重复过程中所确定的目标数据库。

示例性地,本实施例中,在剩余数据库集合中确定目标数据库时,若本次步骤S303与步骤S304为重复过程中所执行的步骤,则在确定目标数据库时,可以根据前一次重复过程中所得到的数据核对结果(即,前一次重复过程所确定的目标数据库)确定当前所选择的目标数据库。具体地,当前一目标数据库的核对结果表征数据核对一致,则表明位于前一目标数据库的连接顺序之前的数据库的存储数据均为准确的,因此,可以在剩余数据库中选择位于前一目标数据库之后的数据库作为本次重复过程中的目标数据库。

一个示例中,当不存在前一目标数据库时,可以随机选择任一数据库为目标数据库。

可以理解的是,本实施例中,通过上述选择目标数据库的方式,可以避免在数据库的数据核对过程中,需要比对每一数据库与第一数据库中的数据的复杂步骤,进而提高存储系统的数据核对效率。

一个示例中,当前一目标数据库的核对结果表征数据核对不一致,则表明位于前一目标数据库的连接顺序之前的数据库的存储数据存在误差,因此,可以在剩余数据库中选择位于前一目标数据库之前的数据库作为本次重复过程中的目标数据库。

S304、若确定目标数据库用于存储第一数据库的增量数据,则确定第一数据中的增量数据的变化率信息;其中,变化率信息用于指示单位时间内所产生的增量数据的数量。

示例性地,本实施例中,在比对目标数据库的目标数据和第一数据库的第一数据时,此时,首先需要确定目标数据库中所存储的数据的数据类型,即,目标数据库中所存储的数据为第一数据库中的基量数据还是第一数据库中的增量数据。

若确定目标数据库为用于存储第一数据库中的增量数据的数据库,则此时,根据第一数据中的增量数据的变化率信息来选择不同的数据核对方式。其中,增量数据的变化率信息可以理解为第一数据库中增量数据的更新效率,即单位时间内新存入第一数据库中的增量数据的数量。

一个示例中,第一数据库中的第一数据包括增量数据和基量数据,并且,增量数据和基量数据具有不同的标识信息,则可以根据数据所携带的标识信息确定目标数据为增量数据还是基量数据。

一个示例中,变化率信息可以根据历史时段内的变化率信息来确定当前时段内的变化率信息。

S305、若确定变化率信息大于预设阈值,则确定具有最大存储时间的第一数据的增量数据为第一比对数据;确定具有最大存储时间的目标数据为第二比对数据。

示例性地,本实施例中,当变化率信息大于预设阈值时,此时,则表明当前时段内所产生的增量数据的数量较大,则此时,可以选择第一数据中的增量数据具有最新存储时间(即,最大存储时间)的数据为第一比对数据,并确定目标数据中具有最大存储时间的数据为第二比对数据。

一个示例中,步骤S305中的“确定具有最大存储时间的第一数据的增量数据为第一比对数据”包括以下步骤:基于第一数据库对应的预设查询语句和最大存储时间,生成数据查询语句;基于数据查询语句,在第一数据库中确定具有最大存储时间的第一数据的增量数据为第一比对数据。

示例性地,本实施例中,在第一数据库中的增量数据中查找具有最大存储时间的存储数据时,此时,可以确定出第一数据库中的增量数据中的最大存储时间,其中,最大存储时间可以根据第一数据库的运行日志确定。并且,本实施例中还预先设置有第一数据库所对应的预设查询语句,用于查找第一数据中的增量数据中的数据。在查找第一比对数据时,可以通过将最大存储时间写入预设查询语句的预设位置处,进而得到数据查询语句,以便通过调用该数据查询语句查找出第一比对数据。

可以理解的是,本实施例中,通过预先查询语句,以便可以自动查询第一数据中具有最大存储时间的增量数据作为第一比对数据,以便提高数据查询效率以及后续的数据核对效率。

S306、根据第一比对数据和第二比对数据,确定核对结果。

示例性地,在确定出第一比对数据和第二比对数据之后,可以将第一比对数据和第二比对数据所对应的比对结果,作为第一数据库和目标数据库二者的核对结果。

一个示例中,在比对第一比对数据和第二比对数据时,可以分别提取第一比对数据和第二比对数据中所对应的关键指标所对应的数据,进而降低数据核对过程中的复杂度,进而提高数据比对效率、

可以理解的是,本实施例中,在确定出目标数据库用于第一数据库中的增量数据时,此时,首先可以确定第一数据库中的增量数据的变化率信息,若变化率信息大于预设阈值时,则采用直接比对两个数据库中的具有最大存储的数据进行比对,进而提高数据核对效率。

S307、若确定变化率信息小于或等于预设阈值,则确定预设时段内存储的第一数据的增量数据为第三比对数据;确定预设时段存储的目标数据为第四比对数据。

示例性地,本实施例中,当确定出第一数据库中的增量数据的变化率信息小于或等于预设阈值时,则表明当前第一数据库中的增量数据的更新率较低,此时,则可以分别在第一数据的增量数据和目标数据库中的目标数据中选择预设时间内所对应存储的数据,作为第三比对数据和第四比对数据。

S308、根据第三比对数据和第四比对数据,确定核对结果。

示例性地,本实施例中,在获取到第三比对数据和第四比对数据时,可以逐一比对对应相同的生成时间的第三比对数据和第四比对数据,进而确定出第一数据库和目标数据库的数据会结果。

可以理解的是,本实施例中,当第一数据库中的增量数据的变化率信息小于或等于预设阈值时,此时,由于增量数据的变化率较小,因此,为了确保数据核对的准确性,可以选取预设时段内的数据进行数据核对,进而提高数据核对的准确性。

一个示例中,在比对第三比对数据和第四比对数据时,也可以通过提取预设关键字所对应的取值的方式进行比对,进而确定比对结果。

一个示例中,步骤S308包括以下步骤:“确定第三比对数据的第一总数量和第四比对数据的第二总数量;若确定第一总数量和第二总数量不同,则确定核对结果表征第三比对数据与第四比对数据不同。”

示例性地,在实际比对过程中,当预设时间段内的第三比对数据存在多条,且第四比对数据也存在多条时,在比对第三比对数据和第四比对数据时,首先可以确定第三比对数据的总数量,即第一总数量,并确定第四比对数据的总数量,即第二总数量。之后,将第一总数量和第二总数量进行比较,若确定第一总数量和第二总数量不同时,此时,则表明在数据同步过程中出现错误,即第三比对数据和第四比对数据不同。进而,通过上述比对数量的方式,可以提高数据核对的效率。

一个示例中,当确定第一总数量和第二总数量相同时,此时,可以将多条第三数据中的关键字与多条第四数据中的关键字逐一进行比对,或者,抽取部分关键词进行比对,以提高数据核对的准确性。

S309、在剩余数据库集合中删除目标数据库。

示例性地,步骤S309的技术原理可以参见步骤S104,此处不再赘述。

一个示例中,预设停止条件为依次连接的相邻两个数据库中,前一数据库的核对结果表征一致,且后一数据库的核对结果表征不一致。

示例性地,本实施例中,在进行数据核对的重复过程时,此时,所设置的预设停止条件可以为在多个依次连接的数据库中,查找出了一对相邻的数据库,并且在该对数据库中,前一个数据库(即,连接次序在两个相邻数据库中靠前的数据库)所对应的核对结果(即,前一数据库与第一数据库两个数据库之间的数据核对结果)表征前一数据库和第一数据库的数据核对结果一致,并且,相邻的两个数据库中的后一个数据库(即,相邻的两个数据库中的除上述前一数据库的剩余数据库)的数据核对结果表征该数据库与第一数据库之间的数据核对结果为不一致,则此时可以确定出后一数据库为出现数据同步错误的首个数据库,则此时可以停止数据核对过程。

可以理解的是,通过上述预设停止条件的设置,可以查找出出现数据同步问题的首个数据库,并且,无需对每一数据库均进行一次与第一数据库之间的数据核对处理,进而提高数据库核对的效率。

在一些实施例中,在上述数据核对过程中,在将目标数据库中的数据与第一数据库中的数据进行核对之后,也无需将目标数据库从剩余数据库集合中删除,即,剩余数据库集合中始终包括有除第一数据库和第二数据库以外的剩余全部的数据库。进而,当剩余数据库集合中的数据库数量保持不变时,在确定目标数据库时,可以采用二分查找的方式进行查找,举例来说,首先选择剩余数据库中连接次序位于中间的数据库为目标数据库,之后,根据本次确定的目标数据库所对应的核对结果,若核对结果表征一致,则对位于本次目标数据库的连接顺序之后的剩余全部数据库继续进行二分查找的方式,确定目标数据库;若本次确定的目标数据库所对应的核对结果表征不一致,则对位于本次目标数据库的连接顺序之后的剩余全部数据库继续进行二分查找的方式,确定目标数据库,以便快速查找到出现数据同步问题的首个数据库。

图4为本申请实施例提供的第三种数据核对方法的流程示意图,如图4所示,该方法包括以下步骤:

S401、获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,存储系统包括:多个数据库;多个数据库依次连接;数据库用于同步与其连接的前一数据库的数据;第一数据库为多个数据库中的首个数据库;第二数据库为多个数据库中的最后一个数据库。

S402、若确定第二数据与第一数据不同,则确定剩余数据库集合为包括多个数据库中除第一数据库和第二数据库以外的数据库的集合。

示例性地,步骤S401与步骤S402的具体原理可以参见步骤S101和步骤S102,此处不再赘述。

重复以下步骤S403、S404、S405和S406,直至达到预设停止条件:

S403、在剩余数据库集合中确定目标数据库,若确定目标数据库用于存储第一数据库的基量数据,则确定至少一个数据生成时间。

示例性地,本实施例中,当确定出目标数据库时,若进一步的确定出目标数据库用于存储第一数据库中的基量数据,由于基量数据在一段时间内不会发生更新,因此,此时,首先可以确定至少一个数据生成时间。其中,数据生成时间可以理解为某一条数据所对应的产生的时间。

S404、确定具有数据生成时间的第一数据的基量数据为第五比对数据;确定具有数据生成时间的目标数据为第六比对数据。

示例性地,在确定出数据生成时间之后,可以在第一数据库中的基量数据和目标数据中的基量数据中,分别确定出该数据生成时间所对应的第五比对数据和第六比对数据。

S405、根据第五比对数据和第六比对数据,确定核对结果。

示例性地,在确定出第五比对数据和第六比对数据之后,可以将第五比对数据和第六比对数据所对应的数据核对结果,作为第一数据库和目标数据库之间的数据核对结果。

可以理解的是,本实施例中,若目标数据库用于存储第一数据库中的基量数据,则此时,由于基量数据通常数据量较大,且一定时间内不会发生变化,则此时,可以随机确定至少一个数据生成时间,来确定出该数据生成时间所对应的第五比较数据和第六比较数据进行数据比较,以便提高数据核对结果。

一个示例中,若目标数据库与第一数据库的数据库类型不同,则步骤S405包括以下步骤:确定目标数据库的第一数据库类型和第一数据库的第二数据库类型;根据第一数据库类型和第二数据库类型,确定转换信息,转换信息用于将第一数据库类型中的数据格式转换为第二数据库类型的数据格式;调用转换信息,对第六比对数据进行数据转换处理,得到转换后的第六数据;根据转换后的第六数据和第五比对数据,确定核对结果。

示例性地,本实施例中,在多个依次连接的数据库中会存在数据库类型不同的多个数据库。当数据库类型不同时,此时,所对应的数据存储格式也会不同。因此,在进行数据核对时,此时,首先也可以先确定目标数据库与第一数据库是否为同一类型的数据库,若为同一类型的数据库,则可以直接对第五比对数据和第六比对数据进行比对。若目标数据库和第一数据库并非同一类型的数据库时,此时,在比较第五比对数据和第六比对数据时,此时首先需要进行数据转换处理。具体地,首先可以查找目标数据库的数据库类型所对应的转换信息,以便在确定出转换信息之后,可以将第六比对数据转换为与第五比对数据具有相同格式的数据。之后,再将得到的转换后的第六比对数据与第五比对数据进行比较,进而得到第五比对数据和第六比对数据之间的数据核对结果,并将该数据核对结果作为两个数据库之间的核对结果。需要说明的是,在对增量数据进行比对时,也可以在进行数据转换处理之后,再进行比对,此处仅仅采用基量数据核对为例,进行数据核对说明。

S406、在剩余数据库集合中删除目标数据库。

示例性地,步骤S309的技术原理可以参见步骤S104,此处不再赘述。

可以理解的是,本实施例中,通过对不同数据库类型的数据进行格式转换之后,在进行数据比对,以确保后续数据核对的准确性。

图5为本申请实施例提供的又一种存储系统的结构示意图。如图所示,图中,存储系统中包括:5个依次连接的数据库,其中,第一个数据库的数据类型为informix数据库,其中,informix数据库作为多个依次连接的数据库中的首个数据库,可以用于存储需要存储的基量数据以及实时更新的增量数据。与informix数据库连接的第一kafka数据库用于对informix数据库中的增量数据进行数据同步,即第一kafka数据库用于存储informix数据库中的增量数据。在数据同步过程中,informix中的一个表格对应第一kafka数据库中的一个topic主题,此处数据同步过程可以参照相关技术中的原理描述,此处不再赘述。

之后,第一kafka数据库中的数据,通过以列式存储的方式存储至与第一kafka数据库所连接的hbase数据库中,并且,informix数据库也可以与hbase数据库连接,以便informix数据库中的基量数据也可以以列式存储的方式存储至hbasa数据库中。

此外,hbase数据库中的增量数据会转换为json格式之后,同步至与其连接的第二kafka数据库中,并且通过第二kafka数据库还可以将其所包含的数据同步至与第二kafka连接的Elasticsearch数据库。并且,Elasticsearch(简称,ES)数据库中还与informix数据库连接,用于存储从informix数据库中同步过来的基量数据。

进而,在对上述存储系统进行数据核对时,此时,可以将Elasticsearch数据库和informix数据库中的基量数据和增量数据分别进行核对,进而,两个数据库的核对结果。之后,若核对结果表征不一致,则可以在ES数据库之前的数据库中查找目标数据库,继续进行数据核对,以便查找出出现数据同步问题的其余数据库。

图6为本申请实施例提供一种存储系统的数据核对装置的结构示意图,如图6所示,该装置包括:

获取单元601,用于获取存储系统中第一数据库的第一数据和第二数据库的第二数据,其中,存储系统包括:多个数据库;多个数据库依次连接;数据库用于同步与其连接的前一数据库的数据;第一数据库为多个数据库中的首个数据库;第二数据库为多个数据库中的最后一个数据库;

第一确定单元602,用于若确定第二数据与第一数据不同,则确定剩余数据库集合为包括多个数据库中除第一数据库和第二数据库以外的数据库的集合;

重复以下第二确定单元603、核对单元604和删除单元605,直至达到预设停止条件:

第二确定单元603,用于在剩余数据库集合中确定目标数据库;

核对单元604,用于将目标数据库中的目标数据与第一数据进行数据核对,确定核对结果;

删除单元605,用于在剩余数据库集合中删除目标数据库。

本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。

图7为本申请实施例提供的第二种存储系统的数据核对装置的结构示意图,如图7所示,在图6所示的装置结构的基础上,本实施例中第二确定单元603,具体用于:

若确定存在前一目标数据库,且前一目标数据库对应的核对结果表征一致,则在剩余数据库集合中,确定位于前一目标数据库的连接次序之后的数据库作为目标数据库;其中,前一目标数据库为本次重复过程的前一次重复过程中所确定的目标数据库。

在一种可能的实现方式中,核对单元604,包括:

第一确定模块6041,用于若确定目标数据库用于存储第一数据库的增量数据,则确定第一数据中的增量数据的变化率信息;其中,变化率信息用于指示单位时间内所产生的增量数据的数量;

第二确定模块6042,用于若确定变化率信息大于预设阈值,则确定具有最大存储时间的第一数据的增量数据为第一比对数据;

第三确定模块6043,用于确定具有最大存储时间的目标数据为第二比对数据;

第一核对模块6044,用于根据第一比对数据和第二比对数据,确定核对结果。

在一种可能的实现方式中,第二确定模块6042,具体用于:

基于第一数据库对应的预设查询语句和最大存储时间,生成数据查询语句;

基于数据查询语句,在第一数据库中确定具有最大存储时间的第一数据的增量数据为第一比对数据。

在一种可能的实现方式中,装置还包括:

第四确定模块6045,用于若确定变化率信息小于或等于预设阈值,则确定预设时段内存储的第一数据的增量数据为第三比对数据;

第五确定模块6046,用于确定预设时段存储的目标数据为第四比对数据;

第二核对模块6047,用于根据第三比对数据和第四比对数据,确定核对结果。

在一种可能的实现方式中,第二核对模块6047,具体用于:

确定第三比对数据的第一总数量和第四比对数据的第二总数量;

若确定第一总数量和第二总数量不同,则确定核对结果表征第三比对数据与第四比对数据不同。

在一种可能的实现方式中,装置还包括:

第六确定模块6048,用于若确定目标数据库用于存储第一数据库的基量数据,则确定至少一个数据生成时间;

第七确定模块6049,用于确定具有数据生成时间的第一数据的基量数据为第五比对数据;

第八确定模块60410,用于确定具有数据生成时间的目标数据为第六比对数据;

第三核对模块60411,用于根据第五比对数据和第六比对数据,确定核对结果。

在一种可能的实现方式中,若目标数据库与第一数据库的数据库类型不同,则第三核对模块60411,具体用于:

确定目标数据库的第一数据库类型和第一数据库的第二数据库类型;

根据第一数据库类型和第二数据库类型,确定转换信息,转换信息用于将第一数据库类型中的数据格式转换为第二数据库类型的数据格式;

调用转换信息,对第六比对数据进行数据转换处理,得到转换后的第六数据;

根据转换后的第六数据和第五比对数据,确定核对结果。

在一种可能的实现方式中,预设停止条件为依次连接的相邻两个数据库中,前一数据库的核对结果表征一致,且后一数据库的核对结果表征不一致。

本实施例提供的装置,用于实现上述方法提供的技术方案,其实现原理和技术效果类似,不再赘述。

本申请提供一种电子设备,包括:存储器,处理器;

存储器;用于存储处理器可执行指令的存储器;

其中,处理器,用于根据可执行指令执行方法。

图8为本申请实施例中提供的一种电子设备的结构示意图,如图8所示,该电子设备包括:

处理器(processor)291,电子设备还包括了存储器(memory)292;还可以包括5通信接口(Communication Interface)293和总线294。其中,处理器291、存储器292、通信接口293、可以通过总线294完成相互间的通信。通信接口293可以用于信息传输。处理器291可以调用存储器294中的逻辑指令,以执行上述实施例的方法。

此外,上述的存储器292中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。

0存储器292作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行

程序,如本申请实施例中的方法对应的程序指令/模块。处理器291通过运行存储在存储器292中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。

存储器292可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、5至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据

等。此外,存储器292可以包括高速随机存取存储器,还可以包括非易失性存储器。

本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现任一项的方法。

本申请提供一种计算机程序产品,计算机程序产品包括计算机程序,该计算机程序被0处理器执行时实现任一项的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或

惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由所附的权5利要求书指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

相关技术
  • 财务数据核对方法、装置、计算机设备及存储介质
  • 业务关联数据表的筛选及核对方法、装置、电子设备
  • 音频数据或视频数据的存储方法、存储系统及计算机设备
  • 核对保单中房价的方法、装置、计算机设备和存储介质
  • 一种存储系统的状态检测方法、装置、设备及存储介质
  • 账务数据核对方法及账务数据核对装置
  • 图像核对装置、图像核对方法及图像数据输出处理装置
技术分类

06120115919692