CN110086660B - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN110086660B CN110086660B CN201910298373.4A CN201910298373A CN110086660B CN 110086660 B CN110086660 B CN 110086660B CN 201910298373 A CN201910298373 A CN 201910298373A CN 110086660 B CN110086660 B CN 110086660B
- Authority
- CN
- China
- Prior art keywords
- center
- centers
- subset
- data
- data subset
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Hardware Redundancy (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例涉及数据处理技术领域,尤其涉及一种数据处理方法及装置,用以减少灾备过程中的时间延迟,同时减少因中心闲置而造成的资源浪费。本发明实施例包括:第一中心确定第二中心发生故障;所述第一中心依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第一中心依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;所述第一中心对第一数据子集继续处理,得到第一最终结果子集;所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法及装置。
背景技术
出于灾备(Disaster Recovery)的目的,大型组织一般都会建设2个(或多个)数据中心来承载业务系统,从而实现应用服务的高可用性。通常使用主中心/备中心的构架来执行业务处理。
在这种架构模式下,所有的业务系统在主中心中运行,而备中心为业务系统提供冷备或热备。当主中心的应用出现短时间无法恢复的故障时,可以将单个子系统或者主中心整体切换到灾备中心。
如果主中心瘫痪,需要经过一定人工干预协调时间才能启动灾备中心,在这段长短不确定的时间内对外业务服务将受到一定程度影响。此外,备中心建设的投资巨大,当主中心正常运行时,备中心闲置,这会造成资源的浪费。
发明内容
本申请提供一种数据处理方法及装置,用以减少灾备过程中的时间延迟,同时减少因中心闲置而造成的资源浪费。
本发明实施例提供的一种数据处理方法,包括:
第一中心确定第二中心发生故障,所述第二中心为跨中心处理系统的N个中心的任一中心,所述第一中心为所述跨中心处理系统中所述第二中心的备中心;
所述第一中心依据灾备策略,从缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
所述第一中心依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
所述第一中心对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其他中心的最终结果子集进行合并,得到全量结果集。
一种可选的实施例中,所述第一中心对第一数据子集继续处理,得到第一最终结果子集之后,还包括:
所述第一中心依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
一种可选的实施例中,所述第一中心确定第二中心发生故障之前,还包括:
所述第一中心依据所述跨中心处理系统的N个中心,制定灾备策略;
所述第一中心将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
一种可选的实施例中,所述第一中心确定第二中心发生故障,包括:
所述第一中心向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
所述第一中心接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
所述第一中心统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
一种可选的实施例中,所述第一中心确定第二中心发生故障之后,还包括:
所述第一中心依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则所述第一中心对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
本发明实施例还提供一种数据处理装置,包括:
故障模块,用于确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2;
收发模块,用于依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
处理模块,用于依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
所述处理模块,还用于对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集。
一种可选的实施例中,所述收发模块,还用于:
依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
一种可选的实施例中,还包括策略模块,用于:
依据所述跨中心处理系统的N个中心,制定灾备策略;
将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
一种可选的实施例中,所述故障模块,具体用于:
向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
一种可选的实施例中,所述处理模块,还用于:
依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
本发明实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
本发明实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上所述的方法。
本发明实施例中,跨中心处理系统中包含多个中心,多个中心之间存在主备关系。本发明实施例将待处理的全量数据集划分为N个数据子集,第一中心对第一数据子集进行处理,第二中心对第二数据子集进行处理,以此类推。其中,第二中心为跨中心处理系统的N个中心的任一中心,第一中心为跨中心处理系统中第二中心的备中心。当第一中心确定第二中心发生故障后,根据灾备策略,从本地缓存中获取第二中心的第二数据子集,以及第二中心对第二数据子集处理得到的第二中间结果。第一中心依据第二中间结果对第二数据子集继续处理,得到第二最终结果子集。同时,第一中心对第一数据子集继续处理,得到第一最终结果子集。最后,将第一最终结果子集、第二最终结果子集以及跨中心处理系统中未发生故障的其它中心的最终结果子集合并,得到全量结果集。本发明实施例中,对全量数据集划分为数据子集并分给多个中心分别处理,得出处理结果后再汇总合并,因此,不存在闲置的中心,避免了资源浪费。当某个中心出现故障时,故障中心的备中心可以对故障中心的中间结果继续处理,无需中断对数据的处理,缩短了因故障而产生的延迟时间,对外业务服务几乎不受影响。此外,本发明实施例中的跨中心处理系统,中心规模便于在线扩展,且扩容升级可与现有架构保持良好兼容。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例所适用的一种系统架构的示意图;
图2为本发明实施例提供的一种数据处理方法的流程示意图;
图3为本发明实施例中一种故障探测过程的示意图;
图4为本发明具体实施例提供的一种数据处理方法的示意图;
图5为本发明具体实施例提供的一个中心故障的处理方法的流程示意图;
图6为本发明实施例提供的一种数据处理装置的结构示意图;
图7为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据处理方法。如图1所示,本发明实施例所适用的一种系统架构,包括数据库101和多个中心102,其中,每个中心包含有多个服务器,服务器可以是计算机等网络设备,服务器可以是一个独立的设备,也可以是多个服务器所形成的服务器集群。优选的,服务器可以采用云计算技术进行信息处理。数据库与中心之间、中心与中心之间可以通过INTERNET 网络进行通信,也可以通过全球移动通信系统(Global Systemfor Mobile Communications,简称GSM)、长期演进(long term evolution,简称LTE)系统等移动通信系统进行通信。
如图2所示,本发明实施例提供的数据处理方法,包括以下步骤:
步骤201、第一中心确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,所述第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2。
步骤202、所述第一中心依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集。
步骤203、所述第一中心依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集。
步骤204、所述第一中心对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集。
上述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集。
本发明实施例中,跨中心处理系统中包含多个中心,多个中心之间存在主备关系。本发明实施例将待处理的全量数据集划分为N个数据子集,第一中心对第一数据子集进行处理,第二中心对第二数据子集进行处理,以此类推。其中,第二中心为跨中心处理系统的N个中心的任一中心,第一中心为跨中心处理系统中第二中心的备中心。当第一中心确定第二中心发生故障后,根据灾备策略,从本地缓存中获取第二中心的第二数据子集,以及第二中心对第二数据子集处理得到的第二中间结果。第一中心依据第二中间结果对第二数据子集继续处理,得到第二最终结果子集。同时,第一中心对第一数据子集继续处理,得到第一最终结果子集。最后,将第一最终结果子集、第二最终结果子集以及跨中心处理系统中未发生故障的其它中心的最终结果子集合并,得到全量结果集。本发明实施例中,对全量数据集划分为数据子集并分给多个中心分别处理,得出处理结果后再汇总合并,因此,不存在闲置的中心,避免了资源浪费。当某个中心出现故障时,故障中心的备中心可以对故障中心的中间结果继续处理,无需中断对数据的处理,缩短了因故障而产生的延迟时间,对外业务服务几乎不受影响。此外,本发明实施例中的跨中心处理系统,中心规模便于在线扩展,且扩容升级可与现有架构保持良好兼容。
本发明实施例在故障发生之前,根据中心的数量和资源,制定灾备策略。灾备策略具体可以由跨中心处理系统的各个中心之外的设备制定,然后分发给各个中心,也可以是各中心相互协商出一个主中心,用于制定灾备策略,并分发给跨中心处理系统中的其余中心。灾备策略可以是每次根据各中心的实时情况进行制定,也可以是预先制定了几套方案后,实时选择一套方案执行,或者为依据以往的经验预先制定好方案执行。
较佳地,本发明实施例中,所述第一中心确定第二中心发生故障之前,还包括:
所述第一中心依据所述跨中心处理系统的N个中心,制定灾备策略;
所述第一中心将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
具体实施过程中,跨中心处理系统中的各中心之间相互协商,选取出一个中心制定灾备策略。具体实现可以通过在各个中心上部署centerproxy(中心代理)应用,各中心之间通过执行raft选举算法选出跨中心处理系统中的主 centerproxy,由于跨中心处理系统中,各中心之间互为主备,因此,第一中心可为主centerproxy。当然,其余跨中心处理系统中除第一中心之外的其余任一中心均可为主centerproxy。主centerproxy依据跨中心处理系统的N个中心的情况,制定灾备策略,并将该灾备策略向其余N-1个中心发送。这样,跨中心处理系统中的各中心即可根据灾备策略确定相互之间的主备关系,以及对数据子集和中间结果的备份方式。
灾备策略主要包括各中心之间的主备关系,对数据子集的备份方式以及对中间结果的备份方式。
依据跨中心处理系统的中心情况确定灾备策略,具体可以是,若各中心的资源较为充分,和/或中心个数较少,则增加对数据子集和中间结果的备份数量,以保证发生故障的中心数量较多时对数据处理的断点续作,减少故障处理时间成本;若中心的数量较多,和/或各中心的资源较少,则减少对数据子集和中间结果的备份数量,从而较多的中心处理全量数据集可以减少整体处理时间,且在少部分中心发生故障时也可以断点续作,减少故障对业务的影响。
下面举例说明灾备策略的具体内容。
若跨中心处理系统包括n个中心,分别为中心1、中心2……中心N,根据跨中心处理系统的中心情况,确定出的灾备策略如下 表所示。
对于方案一,每个中心均获取全量数据集,故每个数据子集均备份n份,针对任一中心,该中心将处理数据子集得到的中间结果向其余所有中心发送,故中间结果也存储n份,中间结果的发送方式为网状。由于每个中心均缓存有其余所有中心的中间结果,因此,即使只剩下一个中心未发生故障,该中心仍可根据缓存的中间结果继续处理其余中心的数据子集。此外,在部分中心发生故障后,正常工作的中心可以均摊处理故障中心的数据子集,因此这种情况下负载一直为均衡状态。虽然方案一在故障发生后,断点续作耗时最小,但由于数据子集和中间结果需要全部备份,因此,对于资源的使用量最大,适合于中心数量少且每个中心资源充分的情况。
对于方案二,跨中心处理系统中的每个中心依次为主备关系,即中心2为中心1的备中心,中心3为中心2的备中心……中心N为中心N-1的备中心,中心A为中心N的备中心,这种情况下,每个中心只需存储本中心和对应主中心的数据子集,且每个中心向其对应的备中心发送中间结果,此时中间结果的备份策略为环形。在方案二的备份策略下,由于中心间依次为主备关系,因此,其中一个中心出现故障后,只有该中心的备中心可以根据存储的中间结果继续处理故障中心的数据子集,因此,为了保证可以继续处理故障中心的数据子集,出现故障的中心数量需小于或等于且同时出现故障的中心不能为相邻中心,即最多只能为中心1、中心3、中心5……出现故障,或为中心2、中心4、中心6……出现故障。若仅剩1个中心未发生故障,由于该中心只缓存有其对应主中心的数据子集和中间结果,因此,该中心只能继续处理其主中心的数据子集,对于其余中心的数据子集,需该中心获取全量数据集,并对其余中心的数据子集重新处理。时间代价大的同时,若数据库中的全量数据集已失效会影响当前业务的处理。此外,由于某个中心出现故障后,该中心的数据子集交由对应的备中心进行处理,因此,该备中心的负载要大于其余中心的负载,中心间负载不再均衡。方案二只需缓存两份数据子集和两份中间结果,因此资源的使用量最小,但会出现多个中心故障后无法继续处理的问题,因此,续作时间代价最大,适应于中心数据多且每个中心资源较少的情况。
对于方案三,其效果位于方案一和方案二之间。
综合来说,根据表1可以看出,当中心数量少且每个中心的资源较为充分的时候,选择方案一;当中心数量多且每个中心的资源较少的时候,选择方案二;对于方案三,可以根据情况综合考虑。
当灾备策略制定完成,并分发给跨中心处理系统中的每一个中心后,各中心则根据灾备策略获取数据子集以及中间数据。
本发明实施例中,全量数据集存储在数据库中,可按照跨中心处理系统的中心数量划分为N份数据子集,每个中心根据灾备策略从数据库中获取需要自身处理的数据子集以及需要备份的数据子集。之后,中心对需要自身处理的数据子集进行处理,且各中心之间按照场次同步执行。每个场次结束后,各中心得到中间结果,将中间结果按照灾备策略向其备中心发送。数据子集处理结束后,将所有最终结果子集合并,得到全量结果集。这里,可以为跨中心处理系统的各正常工作的中心协商出一个中心,该中心获取所有中心的最终结果子集并进行合并;也可以是跨中心处理系统的各中心相互发送最终结果子集,所有正常工作的中心均进行最终结果子集合并的处理,即每个中心都生成全量结果集;也可以是设置其它的处理装置,该处理装置从每个正常工作的中心获取最终结果子集,并将所有最终结果子集合并得到全量结果集。
若在数据处理过程中,某中心出现故障,则该故障中心被隔离,由其备中心接管故障中心的数据处理任务。若根据灾备策略,故障中心的备中心不止一个,则可以从所有备中心中选择一个接管该故障中心的所有数据子集的处理任务,也可以是所有备中心均摊该故障中心的处理任务。
进一步地,所述第一中心对第一数据子集继续处理,得到第一最终结果子集之后,还包括:
所述第一中心依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
具体实施过程中,跨中心处理系统中的各中心同步处理各自的数据子集。在对数据子集处理的每个场次结束后,将得到的中间结果按照灾备策略向备中心发送。例如,若灾备策略为方案一,则各中心在每个场次结束后,向跨中心处理系统中的其余n-1个中心发送中间结果;若灾备策略为方案二,则各中心在每个场次结束后,向跨中心处理系统中的对应的一个备中心发送中间结果;若灾备策略为方案三,则各中心在每个场次结束后,向跨中心处理系统中的对应的i个备中心发送中间结果。这样,当某个中心故障后,其对应的备中心即可根据之前接收到的中间结果,继续处理故障中心的数据子集,从而减少故障处理时间,达到断点续做的效果。
在方案三中,由于数据子集备份了n份,中间结果集备份了j份,因此,会出现中心a备份了中心n的数据子集,但中心n并没有向中心a发送中间结果的情况。这种情况下,所述第一中心确定第二中心发生故障之后,还包括:
所述第一中心依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则所述第一中心对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
具体实施过程中,若中心n发生故障,且存储了中心n的中间结果的备中心也发生故障,则可以由中心a处理中心n的数据子集,这里的处理是中心a 对中心n的数据子集全量处理,而无法断点续作。这样,无需重新获取数据子集,一定程度上降低了故障处理的时间代价,同时避免了在数据库中存储的全量数据集失效对当前业务处理的影响。
需要说明的是,上述对数据子集的全量不仅适用于方案三的情况,只要是数据子集的备份数量大于中间结果的备份数量的方案,均可在未接收中间结果而缓存了对应数据子集的情况下,直接对数据子集进行全量处理,从而无需在中心故障后重新获取数据子集,避免了全量数据集失效的影响。
进一步地,本发明实施例中,所述第一中心确定第二中心发生故障,包括:
所述第一中心向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
所述第一中心接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
所述第一中心统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
具体实施过程中,每个场次执行之前,中心之间需要相互发送探测报文,确定是否有中心出现故障,并确定自身是否需要承担其它中心的处理任务。因此,针对一个中心,处理自身的数据子集一个场次结束后,向其备中心发送中间结果,并接收其它中心发送的中间结果。与此同时,跨中心处理系统中的每一个正常工作的中心还向其余中心发送探测报文,以通知其余中心本中心为正常工作状态,并探测是否有中心出现故障。需要说明的是,对于已经确认故障的中心,其余中心不会主动向其发送探测报文。可以是该中心恢复正常后,向其余中心发送探测报文,其余中心接到该中心的探测报文后,确定该中心已恢复正常,再向该中心发送探测报文。
下面举例说明具体的探测过程,如图3所示,跨中心处理系统中包括中心 A、中心B、中心C、中心D和中心E,其中,中心E为已被确认的故障中心,因此,其余中心不向中心E发送探测报文。对于中心A,向中心B、中心C和中心D分别发送探测报文,并接收回复报文。若中心A接收到中心B和中心 C的回复报文,则中心A可以确定中心B和中心C为正常工作状态。又中心 A在预定时间内未收到中心D的回复报文,则中心A将中心D设置为主观失效中心,并在发送的探测报文中写入确定中心D为主观失效中心的信息。其余中心也做同样处理。因此,中心A还会接收到中心B和中心C发送的探测报文。则中心A根据接收到的探测报文统计确定中心D为主观失效中心的个数,若大于阈值,则确定中心D发生故障。如,中心B确定中心D为主观失效中心,中心C未确定中心D为主观失效中心,又中心A也确定中心D为主观失效中心,若阈值为1,则可以认定中心D发生故障。
当某中心被判定为发生故障后,该中心将被隔离,即其余中心不再向该故障中心发送探测报文。其余正常工作的中心在下一场次执行之前可根据灾备策略,确定自身是否接管该故障中心的处理任务。
为了更清楚地理解本发明,下面以具体实施例对上述流程进行详细描述,该具体实施例的场景中,跨中心处理系统中包含三个中心,分别为中心A、中心B和中心C,灾备策略使用表1中的方案二。各中心均正常工作的示意图如图4所示,数据库中存储有全量数据集,该全量数据集按照中心数量划分为数据子集S1、S2和S3,其中数据子集S1为中心A对应处理的数据子集,数据子集S2为中心B对应处理的数据子集,数据子集S3为中心C对应处理的数据子集。中心A、中心B和中心C之间的主备关系为,中心B为中心A的备中心,中心C为中心B的备中心,中心A为中心C的备中心。因此,中心A 从数据库中获取数据子集S1和S3,中心B从数据库中获取数据子集S2和S1,中心C从数据库中获取数据子集S3和S2。
中心A、中心B和中心C场次同步处理数据子集。中心A对数据子集S1 进行处理,并在每个场次结束后,向中心B发送S1的中间结果。中心B对数据子集S2进行处理,并在每个场次结束后,向中心C发送S2的中间结果。中心C对数据子集S3进行处理,并在每个场次结束后,向中心A发送S3的中间结果。
中心A对数据子集S1处理结束后,得到最终结果子集M1;中心B对数据子集S2处理结束后,得到最终结果子集M2;中心C对数据子集S3处理结束后,得到最终结果子集M3。中心A、中心B和中心C相互发送最终结果子集,则中心A、中心B和中心C均将所有的最终结果子集进行合并,得到全量结果集。
若中心A在场次3的处理过程中发生故障,如图5所示。由于中心B为中心A的备中心,则中心B接替中心A的处理工作。中心B依据缓存的S1 的中间结果,对数据子集S1继续处理,同时,中心B还继续处理数据子集S2。
中心B对数据子集S1处理得到最终结果子集M1,对数据子集S2处理得到最终结果子集M2;中心C对数据子集S3处理得到最终结果子集M3。中心 B将最终结果子集M1和M2向中心C发送;中心C将最终结果子集M3向中心B发送。中心B和中心C将所有的最终结果子集进行合并,得到全量结果集。
本发明实施例还提供了一种数据处理装置,如图6所示,包括:
故障模块601,用于确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2;
收发模块602,用于依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
处理模块603,用于依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
所述处理模块603,还用于对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集。
可选的,所述收发模块602,还用于:
依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
可选的,还包括策略模块604,用于:
依据所述跨中心处理系统的N个中心,制定灾备策略;
将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
可选的,所述故障模块601,具体用于:
向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
可选的,所述处理模块603,还用于:
依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
基于相同的原理,本发明还提供一种电子设备,如图7所示,包括:
包括处理器701、存储器702、收发机703、总线接口704,其中处理器701、存储器702与收发机703之间通过总线接口704连接;
所述处理器701,用于读取所述存储器702中的程序,执行下列方法:
确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,所述第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2;
依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集。
进一步地,所述处理器701具体用于:
依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
进一步地,所述处理器701具体用于:
依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
进一步地,所述处理器701具体用于:
依据所述跨中心处理系统的N个中心,制定灾备策略;
将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
进一步地,所述处理器701具体用于:
向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
进一步地,所述处理器701具体用于:
依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则所述第一中心对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
第一中心确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,所述第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2;
所述第一中心依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
所述第一中心依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
所述第一中心对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集;
所述第一中心确定第二中心发生故障,包括:
所述第一中心向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
所述第一中心接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
所述第一中心统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
2.如权利要求1所述的方法,其特征在于,所述第一中心对第一数据子集继续处理,得到第一最终结果子集之后,还包括:
所述第一中心依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
3.如权利要求1所述的方法,其特征在于,所述第一中心确定第二中心发生故障之前,还包括:
所述第一中心依据所述跨中心处理系统的N个中心,制定灾备策略;
所述第一中心将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
4.如权利要求1所述的方法,其特征在于,所述第一中心确定第二中心发生故障之后,还包括:
所述第一中心依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则所述第一中心对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
5.一种数据处理装置,其特征在于,包括:
故障模块,用于确定第二中心发生故障;所述第二中心为跨中心处理系统的N个中心的任一中心,第一中心为所述跨中心处理系统中所述第二中心的备中心,N≥2;
收发模块,用于依据灾备策略,从本地缓存中获取所述第二中心的第二数据子集,以及所述第二中心对所述第二数据子集处理得到的第二中间结果;所述第二数据子集为将待处理的全量数据集划分为N个数据子集中所述第二中心对应处理的数据子集;
处理模块,用于依据所述第二中间结果对所述第二数据子集继续处理,得到第二最终结果子集;
所述处理模块,还用于对第一数据子集继续处理,得到第一最终结果子集;所述第一数据子集是将待处理的所述全量数据集划分为N个数据子集中所述第一中心对应处理的数据子集;
所述第二最终结果子集以及第一最终结果子集用于与所述跨中心处理系统中未发生故障的其它中心的最终结果子集进行合并,得到全量结果集;
所述故障模块,具体用于:
向所述跨中心处理系统中的其余N-1个中心发送第一探测报文,并接收所述其余N-1个中心发送的第二探测报文;所述第一探测报文中包括所述第一中心的工作情况以及所述第一中心确定的其余N-1个中心中的主观失效中心;
接收所述第一探测报文对应的第一回复报文,并将超时未收到第一回复报文的中心设置为第一主观失效中心;
统计所述第二探测报文中确定所述第一主观失效中心失效的个数,若个数大于阈值,则确定所述第一主观失效中心发生故障。
6.如权利要求5所述的装置,其特征在于,所述收发模块,还用于:
依据所述灾备策略,将处理所述第一数据子集得到的第一中间结果向i个第三中心发送,所述第三中心为所述跨中心处理系统中所述第一中心的备中心;其中,1≤i≤N。
7.如权利要求5所述的装置,其特征在于,还包括策略模块,用于:
依据所述跨中心处理系统的N个中心,制定灾备策略;
将所述灾备策略进行存储,并将所述灾备策略向所述跨中心处理系统中其余N-1个中心发送,以使所述跨中心处理系统中的N个中心依据所述灾备策略至少确定相互间的主备关系以及对数据子集和中间结果的备份方式。
8.如权利要求5所述的装置,其特征在于,所述处理模块,还用于:
依据灾备策略,若从缓存中获取所述第二数据子集,但未获取到所述第二中间结果,则对所述第二数据子集进行处理,得到所述第二最终结果子集;并对所述第一数据子集继续处理,得到所述第一最终结果子集。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-4任一所述的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1-4任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910298373.4A CN110086660B (zh) | 2019-04-15 | 2019-04-15 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910298373.4A CN110086660B (zh) | 2019-04-15 | 2019-04-15 | 一种数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110086660A CN110086660A (zh) | 2019-08-02 |
CN110086660B true CN110086660B (zh) | 2021-09-21 |
Family
ID=67415067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910298373.4A Active CN110086660B (zh) | 2019-04-15 | 2019-04-15 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110086660B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679376A (zh) * | 2022-02-22 | 2022-06-28 | 兴业证券股份有限公司 | 一种多数据中心灾备方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897472B (zh) * | 2016-04-05 | 2019-06-14 | 中国银联股份有限公司 | 提供业务连续性保护的数据处理系统 |
CN107453929B (zh) * | 2017-09-22 | 2020-02-14 | 中国联合网络通信集团有限公司 | 集群系统自构建方法、装置及集群系统 |
-
2019
- 2019-04-15 CN CN201910298373.4A patent/CN110086660B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110086660A (zh) | 2019-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951559B (zh) | 分布式文件系统中数据恢复方法及电子设备 | |
CN105933407B (zh) | 一种实现Redis集群高可用的方法及系统 | |
CN110581782B (zh) | 一种容灾数据的处理方法、装置及系统 | |
CN106487486B (zh) | 业务处理方法和数据中心系统 | |
CN110457176B (zh) | 用于分布式系统的监控方法、装置、存储介质及电子设备 | |
CN112506702B (zh) | 数据中心容灾方法、装置、设备及存储介质 | |
CN110784331B (zh) | 一种共识流程恢复方法及相关节点 | |
CN112671928B (zh) | 设备集中管理架构、负载均衡方法、电子设备及存储介质 | |
CN112346899B (zh) | 微服务性能优化方法及装置 | |
CN107943617B (zh) | 数据的修复方法、装置及服务器集群 | |
CN115562911B (zh) | 虚拟机数据备份方法及装置、系统、电子设备、存储介质 | |
CN106572137A (zh) | 一种分布式服务资源管理方法和装置 | |
CN104484167A (zh) | 任务处理方法及装置 | |
CN110086660B (zh) | 一种数据处理方法及装置 | |
CN114554593A (zh) | 数据处理方法及装置 | |
CN113407340A (zh) | 业务控制系统、网关服务方法、业务请求转发方法及装置 | |
CN110351122B (zh) | 容灾方法、装置、系统与电子设备 | |
CN113297318B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN112367386B (zh) | 基于Ignite的自动化运维方法、装置及计算机设备 | |
CN112269693B (zh) | 一种节点自协调方法、装置和计算机可读存储介质 | |
CN110489208B (zh) | 虚拟机配置参数核查方法、系统、计算机设备和存储介质 | |
CN114385366A (zh) | 容器云平台的容器组弹性扩容方法、系统、介质和设备 | |
CN113987065A (zh) | 数据库漂移方法、系统、电子设备和存储介质 | |
WO2016086579A1 (zh) | 一种网管系统中网元数据智能备份恢复的方法及装置 | |
CN112801769B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |