数据处理方法、设备和系统的制作方法

文档序号:6486314阅读:133来源:国知局
数据处理方法、设备和系统的制作方法
【专利摘要】本申请公开了一种数据处理方法、设备和系统,应用于包括协调器和多个节点设备的分布式系统,该方法包括:协调器对各节点设备进行监测;当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上对应的第二业务数据。通过采用本申请提供的技术方案,提高了分布式系统内数据存储的安全性,并提高了节点设备的资源利用率。
【专利说明】数据处理方法、设备和系统
【技术领域】
[0001]本申请涉及互联网技术应用领域,特别是涉及一种数据处理方法、设备和系统。
【背景技术】
[0002]随着互联网技术的高速发展,计算机软件应用需求已经逐渐向响应时间、可升级性以及快速数据增长等方向转变。为了适应这些需求,应用部署模式已经从使用直接附带存储器的单个主机上运行应用发展到分布式环境中,其中,在该分布式环境中将应用工作负荷分布在使用集中式存储模型的多个主机上。
[0003]在分布式系统中每个主机设备都称为“节点”,为保证系统数据具备容灾能力,数据需要备份(冗余)到一个或多个节点上。
[0004]在现有的一种分布式系统数据备份方案中,新数据被写入系统中时,为保证写入的一致性,系统中只有一个节点对外提供写入接口,这个节点称为Master节点(主节点),但数据写入Master节点的同时,Master节点保证将同样的数据写入至少另一个节点,该节点称为Slave节点(从节点)。
[0005]在该技术方案中,由于Slave节点在Master节点正常工作时,不提供对外的写服务,以一个Master节点对应一个Slave节点为例,若分布式系统中节点数为N,则其中有N/2的节点资源利用率会很低;同时,一旦Master节点不可用后,此时系统虽然可用,但现有数据已陷入单点的危机中,需人工介入恢复Master或新增节点。

【发明内容】

[0006]本申请的目的在于,提供一种数据处理方法、设备和系统,以提高分布式系统内数据存储的安全性,并提高节点设备的资源利用率,为此,本申请实施
[0007]—种数据处理的方法,应用于包括协调器和多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该方法包括:
[0008]协调器对所述各节点设备进行监测;
[0009]当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上对应的第二业务数据。
[0010]一种协调器,应用于包括多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,该协调器包括:[0011]记录模块,用于记录所述节点设备之间的数据备份关系信息;
[0012]监测模块,用于对所述节点设备进行监测;
[0013]确定模块,用于当所述监测模块监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息确定用于该业务数据发生变化的节点设备的备份节点设备;
[0014]指示模块,用于向所述第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上的对应的第二业务备份数据。
[0015]一种数据处理方法,应用于包括协调器和多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该方法包括:
[0016]节点设备接收所述协调器发送的第一指示信息;其中,当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该业务数据发生变化的节点设备发送第一指示信息;
[0017]所述节点设备根据所述第一指示信息更新其备份节点设备上对应的第二业务数据。
[0018]一种节点设备,应用于包括协调器的分布式系统,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该节点设备包括:
[0019]存储模块,用于存储第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据;
[0020]接收模块,用于接收协调器发送的第一指示信息;其中,当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该业务数据发生变化的节点设备发送第一指示信息;
[0021]处理模块,用于根据接收到的第一指示信息更新其备份节点设备上对应的第二业务数据。
[0022]一种分布式系统,包括上述协调器和节点设备。
[0023]本申请的上述实施例,通过协调器对系统内的节点设备进行监测,并当协调器监测到节点设备上的业务数据发生变化时,根据数据备份关系信息确定该业务数据发生变化的节点设备的备份节点设备,该备份节点设备用于备份该业务数据发生变化的节点设备的业务数据,并向该业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上的备份数据,提高了分布式系统内数据存储的安全性,并提高了节点设备的资源利用率。
【专利附图】

【附图说明】
[0024]图1为本申请实施例提供的技术方案的应用场景的系统架构图;
[0025]图2为本申请实施例提供的一种实现数据备份的方法的流程示意图;
[0026]图3A为本申请实施例提供的一种应用场景的系统架构图;
[0027]图3B为本申请实施例提供的一种应用场景的系统架构图;[0028]图3C为本申请实施例提供的一种应用场景的系统架构图;
[0029]图4为本申请实施例提供的一种协调器的结构示意图;
[0030]图5为本申请实施例提供的一种节点设备的结构示意图。
【具体实施方式】
[0031]针对上述现有技术中存在的缺陷,本申请提供了一种数据处理的技术方案,应用于包括协调器和多个节点设备的分布式系统。在该技术方案中,各节点设备中存储有第一业务数据和第二业务数据,第一业务数据为节点设备自身的业务数据,第二业务数据为节点设备作为其他节点设备的备份节点设备时,存储的该其他节点设备的第一业务数据的备份数据,协调器中记录有系统内各节点设备之间的数据备份关系信息;当协调器监测到节点设备上的第一业务数据发生变化时,根据数据备份关系信息,确定该业务数据发生变化的节点设备的备份节点设备,并向该第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上对应的第二业务数据,提高了系统内节点设备的资源利用率,并提高了分布式系统中数据存储的安全性。
[0032]其中,协调器可以通过设置在系统内各节点设备中的监控客户端对系统内各节点设备进行监控,系统内各节点设备可以通过相应的监控客户端以一定的频率向协调器发送报文(如心跳报文),以使协调器获知相应节点设备的可用状态。
[0033]在本申请实施例提供的技术方案中,当一个节点设备(如节点设备A)的第一业务数据在另一个节点设备中进行备份时,则该节点设备(节点设备A)称为该另一个节点设备(节点设备B)的上游节点设备(即节点设备B中存储的第二业务数据所归属的节点设备);相应地,节点设备B即称为该节点设备A的下游节点设备(即节点设备A的备份节点设备)。协调器中记录有系统内各节点的数据存储状态信息,即各节点设备之间的数据备份关信息,根据该数据备份关系信息,协调器可以获知系统任一节点设备的上游节点设备和下游节点设备,并当系统内节点设备之间的数据备份关系发生变化时,更新自身记录的数据备份关系信息。
[0034]需要注意的是,在本申请实施例提供的技术方案中,一个节点设备中存储的业务数据可以在多个设备中进行备份。例如,系统内包括节点设备1-5,则节点设备1的第一业务数据可以在节点设备2和3上备份,节点设备2的第一业务数据可以在节点设备3和节点设备4上备份,依次类推,节点设备5的第一业务数据可以在节点设备1和节点设备2上备份。为了便于描述,在本申请的实施例中,均以一个节点设备在另一个节点设备上进行数据备份为例进行描述。
[0035]下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0036]如图1所示,其为本申请实施例提供的技术方案的应用场景的结构图,其中包括协调器和多个节点设备;其中:
[0037]在本申请实施例中,节点设备之间形成环链式数据备份,即节点设备1中存储的第一业务数据备份在节点设备2中,同时,节点设备1中存储有对应节点设备N的第二业务数据(相应地,节点设备1可以称为节点设备2的上游节点设备,同时也可以称为节点设备N的下游节点设备);
[0038]协调器中存储有分布式系统内各节点设备之间的数据备份关系信息,用于对系统内各节点设备进行监控,并当监控到某节点设备不可用(如发生故障)时,通知该节点设备的上游节点设备和下游节点设备进行相应的数据备份处理,并更新自身记录的系统内各节点设备之间的数据备份关系信息。
[0039]基于图1所示的系统架构,本申请实施例提供了一种数据处理方法。
[0040]如图2所示,其为本申请实施例提供的一种数据处理方法的流程示意图,可以包括以下步骤:
[0041]步骤201、协调器对各节点设备进行监测。
[0042]具体的,在本申请实施例中,协调器可以通过心跳机制对系统内各节点设备进行监测。当协调器在预设时间内未接收到节点设备发送的心跳报文时,则确定该节点设备不可用。
[0043]步骤202、当协调器监测到节点设备上的第一业务数据发生变化时,根据数据备份关系信息确定该第一业务数据发生变化的节点设备的下游节点设备,并向该第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其下游节点设备上对应的第二业务数据。
[0044]具体的,在本申请实施例中,第一业务数据发生变化可以包括:节点设备中有第一业务数据写入,节点设备中有第一业务数据被删除,或节点设备中第一业务数据发生更新。
[0045]当协调器监测到节点设备上的第一业务数据发生变化时,协调器可以向该节点设备发送指示信息(第一指示信息),指示该节点设备更新其下游节点设备上对应的第二业务数据。
[0046]相应地,当节点设备接收到协调器发送的第一指示信息时,该节点设备可以根据该第一指示信息更新其下游节点上对应的第二业务数据。
[0047]其中,当所述第一业务数据的变化为第一业务数据写入时,所述协调器指示所述节点设备将写入的第一业务数据备份到其下游节点设备;或,
[0048]当所述第一业务数据的变化为第一业务数据删除时,所述协调器指示所述节点设备删除其下游节点设备中对应的第二业务数据;或,
[0049]当所述业务数据的变化为业务数据更新时,所述协调器指示所述节点设备更新其下游节点设备中对应的第二业务数据。
[0050]进一步地,在本申请实施例中,当协调器监测到系统内节点设备不可用时,协调器可以根据自身存储的数据备份关系确定该不可用节点设备的上游节点设备、该不可用节点设备的下游节点设备以及该不可用节点设备的下游节点设备的下游节点设备,协调器可以向该不可用节点设备的上游节点发送指示信息(第二指示信息),指示该不可用节点设备的上游节点设备将自身的第一业务数据备份到该不可用节点设备的下游节点设备;协调器还可以向该不可用节点设备的下游节点设备发送指示信息(第三指示信息),指示该不可用节点设备的下游节点设备将自身存储的对应该不可用节点设备的第二业务数据备份到自身的下游节点设备(即不可用节点设备的下游节点设备的下游节点设备),并更新系统内各节点设备之间的数据备份关系信息。[0051]相应地,当节点设备接收到协调器发送的第二指示信息时,根据该第二指示信息将自身存储的第一业务数据备份到不可用节点设备的下游节点设备;当节点设备接收到协调器发送的第三指示信息时,根据该第三指示信息将自身存储的对应不可用节点设备的第二业务数据备份到自身的下游节点设备。
[0052]以图3A所示的应用场景为例。系统中每个节点设备都可以对外提供数据服务(读或写),其自身存储的业务数据都会备份给环链中顺时针的下一个节点设备。其中,节点设备(节点)1中存储的业务数据(实线圈1)备份给节点2 (虚线圈1);节点2中存储的业务数据(实线圈2)备份给节点3 (虚线圈2);节点3中存储的业务数据(实线圈3)备份给节点4(虚线圈3);节点4中存储的业务数据(实线圈4)备份给节点1(虚线圈4),其中,协调器中存储的数据备份关系信息可以如表1所示:
[0053]表1
[0054]
【权利要求】
1.一种数据处理的方法,其特征在于,应用于包括协调器和多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该方法包括: 协调器对所述各节点设备进行监测; 当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上对应的第二业务数据。
2.如权利要求1所述的方法,其特征在于,该方法还包括: 当所述协调器监测到节点设备不可用时,根据所述数据备份关系信息,确定该不可用节点设备中存储的第二业务数据所归属的节点设备、该不可用节点设备的备份节点设备、以及该不可用节点设备的备份节点设备的备份节点设备; 所述协调器指示所述不可用节点设备中存储的第二业务数据所归属的节点设备,将该不可用节点设备中存储的第二业务数据所归属的节点设备的第一业务数据备份到该不可用节点设备的备份节点设备,并指示所述不可用节点设备的备份节点设备,将该不可用节点设备的备份节点设备存储的对应该不可用节点设备的第二业务数据备份到该不可用节点设备的备份节点设备的备份节点设备上; 所述协调器更新各对应节点设备之间的数据备份关系信息。
3.如权利要求2所述的`方法,其特征在于,该方法还包括: 当所述协调器监测到对所述不可用节点设备的数据访问请求时,根据所述数据备份关系信息确定该不可用节点设备的备份节点设备,并将所述数据访问请求迁移至所确定出的备份节点设备。
4.如权利要求1所述的方法,其特征在于,该方法还包括: 当所述协调器监测到系统内有新的节点设备加入时,所述协调器确定需要将自身存储的第一业务数据备份到该新加入的节点设备的节点设备,以及该新加入的节点设备的备份节点设备; 所述协调器指示所述需要将自身存储的第一业务数据备份到该新加入的节点设备的节点设备,将自身的第一业务数据备份到该新加入的节点设备;以及,指示该新加入的节点设备将自身的第一业务数据备份到该新加入的节点设备的备份节点设备; 所述协调器更新各对应节点设备之间的数据备份关系信息。
5.如权利要求4所述的方法,其特征在于,还包括: 所述协调器指示该新加入的节点设备的备份节点设备,删除其自身存储的对应所述需要将自身存储的第一业务数据备份到的该新加入的节点设备的节点设备的第二业务数据。
6.如权利要求4或5所述的方法,其特征在于,所述协调器中存储有各节点设备的编号,其中,编号为N的节点设备为编号为N-X的节点设备的备份节点设备,且编号为X的节点设备为编号为N的节点设备的备份节点设备,所述节点设备之间形成环链式数据备份,N为分布式系统为节点设备数量;当所述协调器监测到系统内有新的节点设备加入时,所述协调器确定该新加入的节点设备的编号为N+X,并将该编号为N+X的节点设备确定为编号为N的节点设备的备份节点设备,将编号为X的节点设备确定为该编号为N+X的节点设备的备份节点设备;其中,X为正整数。
7.一种协调器,其特征在于,应用于包括多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,该协调器包括: 记录模块,用于记录所述各节点设备之间的数据备份关系信息; 监测模块,用于对所述节点设备进行监测; 确定模块,用于当所述监测模块监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息确定用于该业务数据发生变化的节点设备的备份节点设备; 指示模块,用于向所述第一业务数据发生变化的节点设备发送指示信息,以指示该节点设备更新其备份节点设备上的对应的第二业务数据。
8.如权利要求7所述的协调器,其特征在于, 所述记录模块还用于,记录各节点设备的编号,其中,编号为N的节点设备为编号为N-X的节点设备的备份节点设备,且编号为X的节点设备为编号为N的节点设备的备份节点设备,所述节点设备之间形成环链式数据备份,N为分布式系统为节点设备数量,X为小于N的正整数; 所述确定模块具体用于,当所述监 测模块监测到系统内有新的节点设备加入时,确定该新加入的节点设备的编号为N+X,并将编号为N+X的节点设备确定为编号为N的节点设备的备份节点设备,将编号为X的节点设备确定为该编号为N+X的节点设备的备份节点设备。
9.一种数据处理方法,其特征在于,应用于包括协调器和多个节点设备的分布式系统,各节点设备中存储有第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该方法包括: 节点设备接收所述协调器发送的第一指示信息;其中,当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述业务数据发生变化的节点设备的备份节点设备,并向该业务数据发生变化的节点设备发送第一指示信息; 所述节点设备根据所述第一指示信息更新其备份节点设备上对应的第二业务数据。
10.一种节点设备,其特征在于,应用于包括协调器的分布式系统,所述协调器中记录有系统内各节点设备之间的数据备份关系信息;该节点设备包括: 存储模块,用于存储第一业务数据和第二业务数据,所述第一业务数据为所述节点设备自身的业务数据,所述第二业务数据为所述节点设备作为其他节点设备的备份节点设备时,存储的所述其他节点设备的第一业务数据的备份数据; 接收模块,用于接收协调器发送的第一指示信息;其中,当所述协调器监测到节点设备的第一业务数据发生变化时,根据所述数据备份关系信息,确定所述第一业务数据发生变化的节点设备的备份节点设备,并向该第一业务数据发生变化的节点设备发送第一指示信息; 处理模块,用于根据接收到的第一指示信息更新其备份节点设备上对应的第二业务数据。
11.一种分布式系统,其特征在于,包括如权利要求7或8所述的协调器和如权利要求10所述的节点设备。`
【文档编号】G06F11/14GK103516734SQ201210204318
【公开日】2014年1月15日 申请日期:2012年6月20日 优先权日:2012年6月20日
【发明者】钟伦甫 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1