数据的核查方法、装置及系统转让专利

申请号 : CN200710123223.7

文献号 : CN100583787C

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 郭子玉

申请人 : 华为技术有限公司

摘要 :

本发明实施例公开了一种数据的核查方法和两种数据的核查装置和系统,均可保证针对数据或命令分配的事务标识,由系统主控单元和单板分别维护所分配的事务标识,并根据所述事务标识之间的一致性确定系统主控单元和单板之间配置数据的一致性。因而,本发明实施例所提供的方法和装置不会使单板上的正常业务受到影响,更不会因数据不一致的情况维持较长时间而产生数据处理异常等问题,而是可以快速确定单板的配置数据与系统主控单元中所维护的该单板配置数据的一致性,所以可明显提高用户满意度。

权利要求 :

1、一种数据核查的方法,其特征在于,第二侧接收来自第一侧的第一已执 行事务标识,比较第二侧的第二已执行事务标识与第一侧的第一已执行事务标 识,根据所述事务标识之间的一致性确定第一侧与第二侧的数据是否一致;

其中,所述第一侧为系统主控单元,所述第二侧为单板;所述第二已执行 事务标识针对第二侧当前数据或当前命令操作而建立,所述第一已执行事务标 识针对第一侧上一次数据或上一次命令操作而建立。

2、如权利要求1所述的方法,其特征在于,所述第一已执行事务标识由第 一侧维护,且包括:用针对第一侧当前数据或当前命令操作而建立的第一事务标识更新所述第 一已执行事务标识,保存为更新的第一已执行事务标识。

3、如权利要求2所述的方法,其特征在于,所述比较的步骤还包括,第一 侧接收第二侧在启动过程中或故障恢复后发送的事务标识核查请求,比较所述 更新的第一已执行事务标识和携带在所述事务标识核查请求中的第二已执行事 务标识。

4、如权利要求2所述的方法,其特征在于,如果第二侧与第一侧的数据一 致,所述第二已执行事务标识由第二侧维护,并包括:用所述第一事务标识更新所述第二已执行事务标识,并将该更新的第二已 执行事务标识返回给第一侧。

5、如权利要求4所述的方法,其特征在于,该方法还包括,当第一侧接收 到所述第二侧返回的第二已执行事务标识时,第一侧将所述第二侧返回的第二 已执行事务标识作为第一已响应标识保存。

6、如权利要求5所述的方法,其特征在于,该方法还包括,当第一侧超时 未收到所述第二侧返回的第二已执行事务标识时,如果第一侧自身保存有第一 已响应事务标识,则比较所述更新的第一已执行事务标识和第一已响应事务标 识,根据所述事务标识之间的一致性确定第一侧与第二侧之间的通信是否有故 障。

7、如权利要求2所述的方法,其特征在于,该方法还包括,如果第二侧与 第一侧的数据不一致,则第一侧通过计算CRC校验和获取不一致数据的详细信 息,并保存。

8、如权利要求1所述的方法,其特征在于,所述系统主控单元保存有与其 相连的所有单板的第一已执行事务标识,所述命令操作为数据配置命令操作。

9、一种实现数据核查的装置,其特征在于,所述装置包括,

存储器,存储有针对第二侧当前数据或当前命令操作而建立的第二已执行 事务标识;

比较模块,比较从存储器中读取的所述第二已执行事务标识和来自第一侧 的第一已执行事务标识,根据所述事务标识之间的一致性确定第一侧与第二侧 的数据是否一致,一致时输出比较结果;其中,所述第一已执行事务标识针对 第一侧上一次数据或上一次命令操作而建立;

其中,所述第一侧为系统主控单元,所述第二侧为单板。

10、如权利要求9所述的装置,其特征在于,所述装置还包括命令执行模 块,接收到来自所述比较模块的比较结果时,用来自第一侧的、且针对第一侧 当前数据或当前命令操作而建立的第一事务标识更新所述存储器器中存储的所 述第二已执行事务标识。

11、如权利要求10所述的装置,其特征在于,所述装置还包括:

发送模块,将存储器中更新的第二已执行事务标识返回给第一侧。

12、如权利要求11所述的装置,其特征在于,该装置还包括:

CRC检验和计算模块,接收来自第一侧的获取不一致数据详细信息消息, 针对对象数据计算CRC检验和,并将计算的CRC校验和通过所述发送模块返 回给第一侧。

13、一种实现数据核查的装置,其特征在于,该装置包括,

存储器,存储有针对第一侧上一次数据或上一次命令操作而建立的第一已 执行事务标识;

事务标识分配模块,针对第一侧当前数据或当前命令操作而建立所述第一 事务标识,并作为更新的第一已执行事务标识保存到存储器;

第一比较模块,将所述更新的第一已执行事务标识与来自第二侧的第二已 执行事务标识比较,根据所述事务标识之间的一致性确定第二侧与第一侧的数 据是否一致,一致时输出比较结果;其中,所述第二已执行事务标识针对第二 侧当前数据或当前命令操作而建立。

14、如权利要求13所述的装置,其特征在于,所述装置还包括发送模块, 将所述第一比较模块的比较结果发送至第一侧外部。

15、如权利要求13所述的装置,其特征在于,

所述存储模块还存储有第一已响应标识,该第一已响应标识为来自第二侧 的第二已执行事务标识;

所述第一比较模块,还用于在超时未收到所述来自第二侧的第二已执行事 务标识时,比较所述更新的第一已执行事务标识和所述第一已响应事务标识, 根据所述事务标识之间的一致性确定第一侧与第二侧之间的通信是否有故障, 并通过所述发送模块输出提示信息。

16、如权利要求13、14或15所述的装置,其特征在于,所述装置还包括判断模块,根据所述第一比较模块输出的比较结果以及来自外部的获取不 一致数据详细信息命令,确定是否向获取不一致数据的详细信息单元发送触发 信号,当比较结果表明系统主控单元的数据与单板的数据一致时,则不向获取 不一致数据详细信息单元发送触发信号,否则,有获取不一致数据详细信息命 令输入的情形下,向获取不一致数据详细信息单元发送触发信号,获取不一致数据详细信息子单元,接收判断模块输出的触发信号,启动获 取不一致数据详细信息。

17、如权利要求16所述的装置,其特征在于,所述获取不一致数据详细信 息子单元包括,CRC校验和计算模块,接收判断模块输出的触发信号后,针对第一侧数据 对象计算CRC检验和,第二比较模块,将CRC校验和计算模块计算的CRC检验和与来自第二侧 的CRC校验和进行比较,将CRC校验和不一致的对象数据的标识通过发送模 块发送至第二侧。

18、如权利要求13所述的装置,其特征在于,所述装置还包括,

命令执行模块,接收第一侧外部的命令,将命令操作后的数据保存至所述 存储器中。

19、一种分布式系统,该系统中至少包含一个系统主控单元和若干个由其 管理的单板,其特征在于,所述系统主控单元包括,第一存储器,存储有针对系统主控单元侧上一次数据或上一次命令操作而 建立的第一已执行事务标识;

所述单板包括,

第二存储器,存储有针对单板侧当前数据或当前命令操作而建立的第二已 执行事务标识;

所述系统主控单元还包括,

事务标识分配模块,针对系统主控单元侧当前数据或当前命令操作而建立 所述第一事务标识,并作为更新的第一已执行事务标识保存到所述第一存储器 中;第一比较模块,将所述更新的第一已执行事务标识与来自单板侧的第二已 执行事务标识比较,根据所述事务标识之间的一致性确定单板侧与系统主控单 元侧的数据是否一致,一致时输出比较结果;

所述单板还包括,

比较模块,用于将从第二存储器中读取的所述第二已执行事务标识和来自 系统主控单元侧的第一已执行事务标识进行比较,根据所述事务标识之间的一 致性确定单板侧与系统主控单元侧的数据是否一致,一致时输出比较结果。

说明书 :

技术领域

本发明涉及通信领域,具体涉及一种数据的核查方法、装置和系统。

背景技术

由于硬件处理能力限制,通信系统往往采用分布式设计,也就是系统由 多个处理器系统(如多块单板)组成。为满足分布式设计时的访问性能需求, 单板需要在本地就可访问到数据,这就产生了数据的分布需求,也就是一份 数据需要同时分布到多个单板上。在这种情况下,各单板之间如果数据不一 致,可能造成系统处理故障或异常,这时就需要由图1所示的系统主控单元 以其数据作为基准,对各单板进行数据管理。
如图1所示,例如,对于配置数据,系统主控单元针对每块单板都维护 有一份单板数据文件,单板则在本地保存一份自身的单板数据文件以支持从 本地快速启动。当系统主控单元故障或者通信故障时,单板可以应用本地所 保存的单板数据文件启动,而该单板数据文件可能和系统主控单元所维护的 相应单板的单板数据文件不一致,这使得单板在启动后所运行的数据和系统 主控单元中所维护的相应单板数据不一致。另外,当系统主控单元到单板方 向的链路发生故障时,在系统主控单元中,针对单板的数据无法下发到单板, 这必然导致系统主控单元上的数据与单板上所保存的数据不一致。上述的数 据不一致问题将导致单板可能无法正常工作。
为了核查系统主控单元和单板上的数据一致性,目前通常进行图2所 示流程以实现数据校验。由图2可见,系统主控单元发送数据核查请求到单 板,单板针对其内存中每一个对象(例如,一条记录)的数据来计算每个校 验和。每个对象标识及其校验和构成一个二元组,单板侧的所有二元组携带 于核查响应消息中发送给系统主控单元;系统主控单元按照与单板相同的算 法计算本地内存中所维护的该单板数据的校验和,并比较收到的每个校验和 以及自身计算出的每个校验和,以判断自身维护数据与单板数据的是否一 致。
通过上述的数据校验过程虽然可以检查系统主控单元所维护的数据与 单板数据的一致性,但需要在单板和系统主控单元上分别针对单板数据计算 每一对象的数据的CRC校验和,导致该数据校验过程非常耗时,而且占用 较多的CPU资源,为此,操作人员一般会选择在系统相对空闲时进行数据 校验过程,以避免对正常业务造成影响,这反而会使数据不一致的情况维持 较长时间后才被发现,因而极易产生单板数据处理异常等问题。

发明内容

本发明实施例在于提供一种数据的核查方法,能快速完成第二侧与第一侧 中所维护的数据的一致性检查。
本发明实施例在于提供一种数据的核查装置,分别设置在第二侧和第一侧, 能快速完成其所维护的数据的一致性检查。
本发明实施例在于提供一种分布式系统,能快速完成单板侧与系统主控单 元侧之间所维护的数据的一致性检查。
为达到上述目的,本发明实施例的技术方案是这样实现的:
一种数据核查的方法,第二侧接收来自第一侧的第一已执行事务标识, 比较第二侧的第二已执行事务标识与第一侧的第一已执行事务标识,根据所 述事务标识之间的一致性确定第一侧与第二侧的数据是否一致;
其中,所述第一侧为系统主控单元,所述第二侧为单板;所述第二已执行 事务标识针对第二侧当前数据或当前命令操作而建立,所述第一已执行事务标 识针对第一侧上一次数据或上一次命令操作而建立。
一种实现数据核查的装置,其特征在于,所述装置包括,
存储器,存储有针对第二侧当前数据或当前命令操作而建立的第二已执行 事务标识;
比较模块,比较从存储器中读取所述第二已执行事务标识和来自第一侧 的第一已执行事务标识,根据所述事务标识之间的一致性确定第一侧与第二 侧的数据是否一致,一致时输出比较结果;其中,所述第一已执行事务标识 针对第一侧上一次数据或上一次命令操作而建立;
其中,所述第一侧为系统主控单元,所述第二侧为单板。
一种实现数据核查的装置,包括,
存储器,存储有针对第一侧上一次数据或上一次命令操作而建立的第一已 执行事务标识;
事务标识分配模块,针对第一侧当前数据或当前命令操作而建立所述第一 事务标识,并作为更新的第一已执行事务标识保存至所述存储器,
第一比较模块,将所述更新的第一已执行事务标识与来自第二侧的第二已 执行事务标识比较,根据所述事务标识之间的一致性确定第二侧与第一侧的数 据是否一致,一致时输出比较结果;其中,所述第二已执行事务标识针对第二 侧当前数据或当前命令操作而建立。
一种分布式系统,该系统中至少包含一个系统主控单元和若干个由其管理 的单板,其特征在于,所述系统主控单元包括,
第一存储器,存储有针对系统主控单元侧上一次数据或上一次命令操作而 建立的第一已执行事务标识;
所述单板包括,
第二存储器,存储有针对单板侧当前数据或当前命令操作而建立的第二已 执行事务标识;
所述系统主控单元还包括,
事务标识分配模块,针对单板侧当前数据或当前命令操作而建立所述第一 事务标识,并作为更新的第一已执行事务标识保存至所述第一存储器,
第一比较模块,将所述更新的第一已执行事务标识与来自单板侧的第二已 执行事务标识比较,根据所述事务标识之间的一致性确定单板侧与系统主控单 元侧的数据是否一致,一致时输出比较结果;
所述单板还包括,比较模块,用于从存储器中读取的所述第二已执行事务 标识和来自系统主控单元侧的第一已执行事务标识,并进行比较,根据所述事 务标识之间的一致性确定单板侧与系统主控单元侧的数据是否一致,一致时输 出比较结果。
本发明实施例所提供的方法和装置、系统能尽量避免使第二侧上的正常 业务受到影响,更不会因数据不一致的情况维持较长时间而产生数据处理异 常等问题,而是通过比较第一侧和第二侧之间的事务标识号,可以快速完成 对第二侧与第一侧所维护的数据的一致性检查,减少对核查过程中对资源的 占用,提高用户满意度。

附图说明

图1为系统数据管理原理图;
图2为现有技术的配置数据核查流程图;
图3是本发明实施例的系统配置数据快照示意图;
图4为本发明实施例中具体事务信息的示意图;图5为系统主控单元中 的事务标识存储格式示意图;
图6为本发明一实施例中在线数据配置过程的配置数据核查流程图;
图7为本发明另一实施例中单板启动时的配置数据核查流程图;
图8为本发明一实施例中判断是否获取不一致数据详细信息的流程图;
图9为关于不一致数据详细信息的获取流程图;
图10为系统主控单元的数据一致性核查装置的示意图;
图11为本发明实施例增加了获取不一致数据的详细信息子单元的系统 主控单元的数据一致性核查装置示意图;
图12为本发明实施例的单板数据一致性核查装置的示意图。

具体实施方式

下面结合附图及具体实施例对本发明详细说明。
为清楚地描述本发明的具体实施例,以下以核查作为第一侧的系统主控 单元与作为第二侧的单板之间配置数据的一致性为例来予以说明,所应理解 的是,本发明的具体实施例并不局限于核查配置数据的一致性,对于第二侧 与第一侧之间需要核查一致性的任何数据同样适用。
在软件运行过程中,为满足访问性能需求,需要在单板本地可访问到配 置数据。由于牵涉到数据量、单板数量等原因,单板之间的配置数据相互进 行比较几乎不可行,通常是以系统主控单元内的配置数据作为基准,和各单 板的配置数据分别进行比较。
在系统主控单元第一次上电初始化后,建立系统能够正常运行的最小配 置数据的集合,该集合在系统主控单元侧形成系统配置数据的初始数据。当 系统配置数据每次发生变化后,均形成相应的数据快照。如图3所示,图3 是系统配置数据快照示意图,在t0时刻形成系统配置数据快照0,在t1时 刻形成系统配置数据快照1,...在tn时刻形成系统配置数据快照n。这些数 据快照的内容形成数据文件并存储。
由于后续系统配置数据的变化只能通过配置命令来进行,每次配置命令 执行成功后的数据快照和前一数据快照不同,换言之,数据快照是由初始数 据、一系列配置命令而建立的,因此,针对配置命令对应的数据配置操作设 置至少包括事务号的事务标识(事务ID),其中,事务号是为初始数据、 每条配置命令设置的唯一号码,可以采用持连续递增方式分配。事务标识除 了在内存中保存外,还可作为数据快照的标识与对应数据文件绑定并保存。 较佳地,事务标识还可进一步包括时间戳,用以指示数据快照的生成时间, 以增加事务标识的唯一性,避免插入到本系统主控单元的、且原受控于其他 系统主控单元的单板上的出现事务标识冲突。时间戳通常在系统主控单元向 单板下发配置数据的命令时被生成,并且与事务标识、配置数据一同向单板 下发。
之所以提出事务标识这个概念,是因为系统主控单元与单板之间的数据 不一致是由数据配置没能同步所造成的。因此,只要能够获知系统主控单元 与单板是否同步实现了数据配置操作(即:数据配置具有一致性),就可以 快速地确定系统主控单元与单板之间的数据一致性。另一方面,无论是系统 主控单元还是单板都可以将每次的数据配置操作视为一个新的事务;因此, 只需要为每次的数据配置操作分配事务标识,并比较系统主控单元所实现事 务的事务标识与单板所实现事务的事务标识的一致性,就能确定系统主控单 元与单板之间数据配置操作的一致性,进而最终确定系统主控单元与单板之 间的数据一致性。可见,由事务标识的一致性就可以直接得出数据的一致性。
参见图4所示,图4为本发明实施例中具体事务信息的示意图。系统主 控单元分别与单板1...单板n等单板相连。在实际应用中,对于系统主控单 元所采用的操作系统没有限制,如:系统主控单元基于Linux操作系统,单 板基于Linux、vxworks等操作系统,对于是否采用数据库保存数据也没有 限制,如:系统主控单元和单板均采用内存数据库管理数据。
系统主控单元中保存有各单板的单板事务信息,所述单板事务信息包括 单板地址、已执行事务标识、以及已响应事务标识,其中,所述单板地址用 以供系统主控单元获得对应单板的配置数据;所述已执行事务标识在系统主 控单元成功执行配置命令,即,配置数据已经永久保存于系统主控单元后, 针对系统主控单元命令单板进行数据配置操作时生成并保存,且随配置数据 一起被下发至单板;所述已响应事务标识是系统主控单元收到来自单板所响 应的事务标识而保存的。
上述单板事务信息可保存在事务号文件中,存储格式如图5所示,图5 示出了系统主控单元存储事务标识的格式。由图5可见,系统主控单元存储 有单板个数和已分配的最新事务标识,其中,最新事务标识存储有系统主控 板中分配的所有事务标识,表示事务标识分配的全局情况;还按顺序存储有 各单板的事务信息,包括单板的地址、已执行事务标识、已响应事务标识。
在单板侧,当单板应用收到的配置数据进行自身的配置时,将收到的最 新所述已执行事务标识作为本单板已执行事务标识而保存起来,同时将该事 务标识以响应的方式返回给系统主控单元。该保存的已执行事务标识作为单 板的事务信息,在单板自身保存的单板数据文件中保存。
参见图6,图6为本发明一实施例中在线数据配置过程的配置数据核查 流程图,该流程包括以下步骤:
步骤501:系统主控单元接收针对单板的数据配置命令,该命令中通常 包括针对该单板的配置数据。
步骤502:系统主控单元为收到的数据配置命令所针对的本次数据配置 操作分配第一事务标识,并且针对自身所维护的单板数据执行所述数据配置 命令。
步骤503:系统主控单元用分配的所述第一事务标识更新自身为所述单 板保存的第一已执行事务标识,并将更新后的第一已执行事务标识写入单板 数据文件和/或事务号文件中;还更新自身为该单板保存的单板数据文件。
步骤504:系统主控单元将所述单板更新前的第一已执行事务标识和分 配的所述第一事务标识连同所述数据配置命令中的配置数据携带在数据配 置消息中一起发送给所述单板,所述更新前的第一已执行事务标识、第一事 务标识和配置数据通常是携带于数据配置消息中发送给所述单板的。
步骤505:单板收到来自系统主控单元的所述更新前的第一已执行事务 标识、第一事务标识和配置数据时,判断自身保存的当前第二已执行事务标 识是否与收到的所述更新前的第一已执行事务标识一致。
步骤506:针对所述判断操作,如果判断结果为一致,说明配置命令没 有发生过通信丢失的情况,单板上一次所执行的数据配置与系统主控单元命 令单板所进行的数据配置是一致的,单板因此确定自身的数据与系统主控单 元的数据具有一致性,进而应用收到的所述配置数据在自身进行数据配置操 作,单板通常还用收到的第一事务标识更新自身原来存储的第二已执行事务 标识;否则,说明单板上一次所执行的数据配置与系统主控单元命令单板所 进行的数据配置是不一致的,单板因此确定自身的数据与系统主控单元的数 据不具有一致性,并且不应用收到的所述配置数据在自身进行数据配置。
步骤507:针对不同的判断结果,单板向系统主控单元发送包含不同内 容的数据配置响应。具体而言,当单板与系统主控单元具有数据一致性时, 所述数据配置响应中包含有单板更新后的第二已执行事务标识;当单板与系 统主控单元不具有数据一致性时,所述数据配置响应中包含有失败标识。
步骤508:收到来自单板的数据配置响应时,系统主控单元根据该响应 中所包含的内容确定自身与单板之间的配置数据是否一致,并发出提示。
具体而言,当所述数据配置响应中包含更新后的第二已执行事务标识 时,系统主控单元比较自身保存的更新后的第一已执行事务标识和该所述第 二已执行事务标识,当两者一致时,确定自身与单板之间具有数据一致性, 并将该第二已执行事务标识作为最新的第一已响应事务标识保存,而且可进 一步以发出音视频等方式提示数据配置成功以及数据一致性;当所述数据配 置响应中包含失败标识时,系统主控单元确定自身与单板之间不具有数据一 致性,并以发出音视频等方式提示数据配置失败。
步骤509:如果超时未收到数据配置响应,系统主控单元可通过比较更 新的第一已执行事务标识和自身存储的第一已响应事务标识,当两者一致 时,判定单板与系统主控单元之间的数据一致,否则,则输出提示。因此, 应用已执行事务标识和已响应事务标识可区分不同方向的通信链路故障。
上述实施例仅描述了在线进行数据配置时进行核查的方法,类似地,在 系统主控单元检测到单板状态正常或通信链路恢复时,步骤504还可以是这 样的:系统主控单元主动将单板更新前的第一已执行事务标识和分配的所述 第一事务标识发送给单板。
参见图7,图7为本发明另一实施例中单板启动或故障恢复时的配置数 据核查流程图,该流程包括以下步骤:
步骤601:在启动或故障恢复后,单板向系统主控单元请求加载单板数 据文件。
步骤602:当单板自身设置的定时器已经超时,但尚未收到来自系统主 控单元的配置数据时,单板直接应用本地所保存的单板数据文件(单板配置 数据的存储载体)中的配置数据恢复自身的数据配置。当然,如果单板及时 收到了来自系统主控单元的配置数据,单板则应用收到的配置数据进行自身 的数据配置。
步骤601至步骤602描述的是单板在启动时的数据配置策略,与后续各 步骤之间没有严格的时间先后顺序。
步骤603至步骤604:在启动完成或者故障恢复时,系统主控单元向单 板发送系统主控开工事件通知。
步骤605:收到来自系统主控单元的系统主控开工事件通知时,单板将 自身保存的当前第二已执行事务标识携带于事务标识核查请求中发送给系 统主控单元。
步骤606:系统主控单元比较本地保存的所述单板的当前第一已执行事 务标识和来自该单板的第二已执行事务标识,当比较结果为已执行事务标识 一致时,说明单板上次所执行的数据配置与系统主控单元命令单板所进行的 数据配置是一致的,系统主控单元因此确定自身的数据与单板的数据具有一 致性;当比较结果为已执行事务标识不一致时,说明单板上次所执行的数据 配置与系统主控单元命令单板所进行的数据配置是不一致的,系统主控单元 因此确定自身的数据与单板的数据不具有一致性。
步骤607:当比较结果为已执行事务标识不一致时,系统主控单元发出 提示,如:以发出音视频等方式提示数据不一致性。当然,当比较结果为已 执行事务标识一致时,系统主控单元也可以发出提示,如:以发出音视频等 方式提示数据一致性。
由于上述核查过程简单,因此可以支持周期或者命令触发而进行数据核 查。
如图8所示,数据核查启动,当系统主控单元应用图6或图7所示流程 确定系统主控单元与单板的数据不具有一致性时,可选的,还可以获取不一 致数据的详细信息,可通过计算CRC校验和获取不一致数据的详细信息, 以及,利用复位单板,或者同步数据方式等进行数据同步操作,使单板数据 恢复到和系统主控单元一致;当应用图6或图7所示流程确定系统主控单元 与单板的数据具有一致性时,无须复位单板或者进行数据文件的同步操作。 由于本发明实施例中事务标识的检验过程非常快,而且在核查出系统主控单 元与单板的数据不一致时才通过计算CRC校验和获取关于不一致数据的详 细信息,即在核查出系统主控单元与单板的数据一致时无须通过计算CRC 校验和获取关于不一致数据的详细信息,避免了现有技术中每次都计算数据 CRC校验和,从而从整体上节约了系统CPU的资源。
上述通过计算CRC校验和获取关于不一致数据的详细信息的流程如图 9所示。参见图9,图9为关于不一致数据详细信息的获取流程图,该流程 包括以下步骤:
步骤701:系统主控单元接收来自其外部的、且针对与系统主控单元具 有不一致数据的单板的获取不一致数据详细信息命令。可选地,所述获取不 一致数据详细信息命令也可以是来自系统主控单元内部。
步骤702:系统主控单元向单板发送请求消息。
步骤703:收到来自系统主控单元的请求消息时,单板计算本地数据的 CRC校验和。
步骤704:单板将计算所得的CRC校验和携带于响应中发送给系统主 控单元。
步骤705:系统主控单元应用与单板相同的算法计算本地数据的CRC 校验和。
步骤706:系统主控单元比较来自单板的CRC校验和与自身计算所得 的CRC校验和。
步骤707:系统主控单元将CRC校验和不一致的对象数据的标识发送 给单板,以获取不一致数据的详细信息。
具体而言,所述CRC校验和通常是针对一个对象数据计算一个,对象 数据的标识以及校验和共同构成一个二元组;所述响应中所包含的CRC校 验和是上述的二元组列表,系统主控单元通过将该二元组列表以及自身计算 所得的CRC校验和进行比较,即可得出对象数据的缺少、多余和不相同情 况。
步骤708:单板根据来自系统主控单元的对象数据的标识获取相对应的 配置数据的详细信息,并将获取的配置数据详细信息发送给系统主控单元。
步骤709:系统主控单元保存来自单板的不一致数据详细信息,以供察 看。
步骤710:系统主控单元输出获取不一致数据详细信息响应,还可以以 发出音视频等方式提示不一致性数据的详细信息。
进一步地,还可利用单板复位或者同步数据方式,使单板数据恢复到与 系统主控单元数据一致。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步 骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算 机可读取存储介质中,该程序执行以上所有步骤。所述的存储介质为 ROM/RAM、磁碟、光盘等。
本发明实施例不仅提供了数据核查方法,而且还提供了数据核查装置。
参见图10所示,图10为系统主控单元实现数据一致性核查的装置示意 图。其中,
来自系统主控单元和单板外部的数据配置命令,分别送至命令执行模块 和事务标识分配模块;来自单板返回的数据配置响应送至存储器,以将单板 反馈的已响应标识存入到存储器中。
命令执行模块执行数据配置命令,并将执行后的数据存入到存储器中, 以更新系统主控单元为单板保存的单板数据文件,作为基准数据。
事务标识分配模块为收到的数据配置命令所针对的本次数据配置操作 分配第一事务标识,在命令执行模块执行数据配置命令后,将第一事务标识 存入到存储器,以用分配的所述第一事务标识更新自身为单板保存的第一已 执行事务标识,作为更新的第一已执行事务标识保存。
发送模块从存储器中读取所述第一事务标识、更新前的第一已执行事务 标识以及数据配置命令中的配置数据,携带在数据配置消息中发送给所述单 板。
在第一比较模块收到系统主控单元内部的超时启动信号后,比较从存储 器中读取的更新的第一已执行事务标识和第一已响应事务标识,当更新的第 一已执行事务标识和第一已响应事务标识一致时,通过发送模块向外部输出 关于数据一致的提示,否则,通过发送模块向外部输出关于数据不一致的提 示。
在单板启动时,第一比较模块接收到来自单板的事务标识核查请求后, 将该请求中携带的第二已执行事务标识与存储器中存储的更新的第一已执 行事务标识比较,当两者一致时,通过发送模块向外部输出关于数据一致的 提示,否则,通过发送模块向外部输出关于数据不一致的提示。
参见图11所示,图11为本发明实施例增加了获取不一致数据的详细信 息子单元的系统主控单元的数据一致性核查子单元示意图。在系统主控单元 中,还包括判断模块、以及获取不一致数据详细信息单元。其中,
判断模块根据第一比较模块输出的比较结果以及来自外部的获取不一 致数据详细信息命令,确定是否向获取不一致数据的详细信息单元发送触发 信号,当比较结果表明系统主控单元的数据与单板的数据一致时,则判断模 块不向获取不一致数据详细信息单元发送触发信号,否则,判断模块在有核 查数据命令输入的情形下,向获取不一致数据详细信息单元发送触发信号。
获取不一致数据详细信息子单元包括CRC校验和计算模块和第二比较 模块。CRC校验和计算模块接收到来自判断模块的触发信号后,计算本地 数据的CRC校验和,第二比较模块将CRC校验和计算模块计算的CRC校 验和与来自单板的CRC校验和进行比较,通过发送模块将CRC校验和不一 致的对象数据的标识发送给单板,以获取不一致数据的详细信息。
参见图12所示,图12为本发明实施例的单板数据一致性核查装置的示 意图。来自系统主控单元的数据配置消息中更新前的第一已执行事务标识、 以及第一事务标识缓存于存储器中。比较单元将来自系统主控单元的数据配 置消息中的更新前的第一已执行事务标识与从存储器中读取的第二已执行 事务标识进行比较,如果两者一致,则向命令执行模块输出比较结果,通过 命令执行模块执行配置操作,并将第一事务标识保存为第二已执行事务标 识,否则,命令执行模块不执行配置操作。发送模块用于从存储器中读取第 二已执行事务标识,携带在数据配置响应中返回给系统主控单元,以及在单 板启动或故障恢复时将事务标识核查请求发送给系统主控单元。
进一步还包括:CRC校验和计算模块接收到来自系统主控单元的请求 消息时,计算单板数据的CRC校验和,将计算结果通过发送模块携带在响 应中返回至系统主控单元。
在应用中,单板上的各种业务进程也需核查业务进程中的数据与系统主 控单元中的数据的一致性,这些业务进程可视为业务单元,参照本发明的实 施例也可实现数据一致性的核查,获取不一致数据的详细信息。
由以上所述可以看出,本发明实施例所提供的数据的核查方法和装置, 均可以快速确定单板侧的数据与系统主控单元中所维护的该单板配置数据 的一致性,因而不会使单板上的正常业务受到影响,更不会因数据不一致的 情况维持较长时间而产生数据处理异常等问题,因而可明显提高用户满意 度。