1.本发明涉及分布式对象存储技术领域,尤其涉及一种数据一致性维护方法、装置及设备。
背景技术:
2.smr(叠瓦式磁记录)是一种领先的下一代磁盘技术,相邻磁道之间按序部分重叠,能提高单位存储介质的存储密度,降低存储成本。正是由于smr磁盘上面物理上的特点,导致了它的读行为虽然与普通hdd(hard disk drive,硬盘驱动器)机械硬盘无异,但是它的写行为却有着巨大的变化,它不支持随机写和原地更新写,因为这样会导致相重叠磁道数据被覆盖。因此smr磁盘仅支持从头到尾的顺序写入。
3.smr磁盘将磁道划分为多个带(band),即连续磁道所构成的壳连续写入的区域,每个区域成为一个需要顺序写入的基本单元。band是smr磁盘物理概念,对应的逻辑概念称为“区域”(zone),一个zone的大小为256mb。
4.由于smr磁盘在价格上有着无法规避的优势,但如何实现smr磁盘上zone的管理进行数据写入,和所有系统所有zone信息在管理节点元数据的构建和维护,负载均衡、空间的复用,zone的恢复等都有着巨大的挑战。
技术实现要素:
5.本发明提供了一种数据一致性维护方法,用于解决数据不一致问题。
6.第一方面,本发明提供一种数据一致性维护方法,该方法包括:
7.接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
8.根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
9.根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
10.更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。
11.在一种可能实现的方式中,该方法还包括:
12.响应于数据写入指令,根据所述zg的元数据,选择zone数量与对象的对象分片数量一致的zg作为目标zg;
13.指示目标zg中目标zone所在存储节点写入对应的对象分片,并接收对应的存储节点将对应的对象分片分别写入目标zone后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据;或者
14.响应于数据删除指令,根据所述zg的元数据,确定待删除的对象所在的目标zg;
15.指示目标zg中目标zone所在存储节点删除对应的对象分片,并接收对应的存储节
点将对应的对象分片从目标zone删除后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据。
16.在一种可能实现的方式中,所述zone的元数据还包括zone数据存储信息,所述zg的元数据还包括zone数据存储信息,接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据之后,还包括:
17.根据各zone所属的zg,在zg的元数据中查找对应zg中包括对应的zone时,或者,根据所述各zg中所包括的zone,在所述zone的元数据中查到对应zone时,确定查到的zone在所述zone的元数据和zg的元数据中的zone数据存储信息是否一致;
18.确定不一致时,更新所述zg的元数据,以将所述zg的元数据中对应zone数据存储信息,更新为所述zone的元数据中对应zone数据存储信息。
19.在一种可能实现的方式中,该方法还包括:
20.更新所述zg的元数据时,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件;
21.确定所述日志文件中的数据量到达设定阈值或所述日志文件到达设定周期,将所述日志文件序列化压缩存储为元数据镜像文件,其中,在序列化压缩存储过程中根据所述日志文件中记录的操作日志生成对应的zg的元数据。
22.在一种可能实现的方式中,该方法还包括:
23.响应于zg的元数据恢复指令,确定仅存在元数据镜像文件时,对所述元数据镜像文件进行解析,并利用所述元数据镜像文件中存储的zg的元数据进行数据恢复;
24.确定仅存在未存储为元数据镜像文件的新日志文件时,对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,生成对应的zg的元数据;
25.确定同时存在元数据镜像文件和新日志文件时,对所述元数据镜像文件进行解析,利用所述元数据镜像文件中存储的zg的元数据进行数据恢复,得到当前zg的元数据,并对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,对所述当前zg的元数据进行更新。
26.在一种可能实现的方式中,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件时,还包括:
27.将所述日志文件序列化压缩发送给备机管理节点,以使备机管理节点在未存储zg元数据时,根据解析所述日志文件后获取的操作日志,在内存中生成zg元数据,或者,在存储zg元数据时,根据解析所述日志文件后获取的操作日志,更新所述zg元数据。
28.在一种可能实现的方式中,更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中时,还包括:
29.生成记录所述第一zone与对应的存储节点的对应关系的关联信息,并将所述关联信息存入zg的元数据中。
30.在一种可能实现的方式中,该方法还包括:
31.确定存储节点被删除时,根据所述存储节点的标识,在zg的元数据中删除属于所述存储节点的zone对应的元数据。
32.在一种可能实现的方式中,该方法还包括:
33.确定存储节点离线时,根据所述存储节点的标识,在zg的元数据中查找与所述存
储节点的标识相匹配的zone对应的元数据,并将找到的zone对应元数据中的zone状态更新为离线状态。
34.第二方面,本发明提供一种数据一致性维护装置,该装置包括:
35.元数据获取模块,用于接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
36.第一zone获取模块,用于根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
37.第二zone获取模块,用于根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
38.元数据更新模块,用于更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。
39.第三方面,本发明提供一种数据一致性维护设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时执行以下步骤:
40.接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
41.根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
42.根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
43.更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。
44.第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序指令,该计算机程序指令被处理器执行时执行上述数据一致性维护方法对应的步骤。
45.基于以上本发明提供的数据一致性维护方法,本发明具有以下有益效果:
46.通过将存储节点全量上报的zone的元数据与管理节点zg缓存中的元数据进行双向对比,确定待删除和添加的zone,并针对这两类zone对应zg状态进行针对性重置,避免了全表扫描进行zg状态的修正,较现有技术中重置流程循环遍历,极大提高了效率。同时,通过双向比对,解决了v1版本管理节点构建zg缓存数据强依赖存储节点上报的缺点,并避免了管理节点zg缓存中出现zone脏数据的情况,最终维护了存储节点和管理节点zg缓存元数据的实时一致性和正确性。
附图说明
47.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
48.图1为本发明实施例提供的一种系统模块框图;
49.图2为本发明实施例提供的一种数据一致性维护方法的流程图;
50.图3为本发明实施例提供的一种管理节点与存储节点中zone元数据双向比对操作的示意图;
51.图4为本发明实施例提供的一种管理节点基于持久化文件恢复zg缓存的示意图;
52.图5为本发明实施例提供的一种存储节点异常时重置zg元数据的示意图;
53.图6为本发明实施例提供的一种数据一致性维护装置的示意图;
54.图7为本发明实施例提供的一种数据一致性维护设备的示意图。
具体实施方式
55.为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
56.下面对文中出现的一些词语进行解释:
57.1、本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
58.2、本发明实施例中术语“smr硬盘”,是大容量、高性价比硬盘,通过减少扇区间隔的方式提升存储密度。支持连续读写、删除和随机读,但不支持随机写入和删除,要求业务层以区域(zone)为单位进行连续写入和整个zone数据的删除。目前常见的zone长度是256兆字节(mb)。smr硬盘存储空间大,在顺序写入的场景中,性能优于cmr盘。
59.3、本发明实施例中术语“分布式存储系统”,是指将数据分散存储在多台独立的设备上一种存储方式,在分布式存储系统中,文件(file)被划分为不同的对象(object),每个对象划分为不同的数据块(block)。这种存储方式可以提高系统的可靠性、可用性和存取效率,并且易于扩展。
60.4、本发明实施例中术语“zg”,是指多个zone组成的群组(zonegroup)的简称,本发明实施例应用于利用zg的形式数据存储和管理的分布式存储系统中,即,在进行文件数据写入时,一个文件数据可以划分为多个对象,一个对象可以划分为m+n个对象分片,在接收到对象数据写入指令,将对应的m+n个对象分片并写入m+n个zone时,以上述m+n个zone作为一个zg(zonegroup,一组zone的集合)进行存储和管理,其中,一个zg内包含m+n个zone,每个zone分别映射到不同存储节点上的固定smr盘的某个具体zone区域。
61.5、本发明实施例中术语“数据一致性”,是指smr磁盘中zone状态的一致性。这里的一致性有两方面含义:一方面是指分布式对象存储系统管理节点集群(主机管理节点和备机管理节点)之间的元数据一致性;另一方面是指管理节点和系统内存储节点(datanode,dn)中zone元数据(即zone的属性信息,zone内写指针位置等数据)的一致性。
62.本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应
用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
63.本发明实施例主要为了实现分布式对象存储系统中对于smr磁盘zone空间的管理和设计统一的负载均衡技术;按照一定策略实现zone空间的数据写入,结合zone空间的写入特点,最大化的利用zone的空间,根据抽象出来的zg(zonegroup)逻辑概念,实现一组zone的写入管理。结合分布式对象存储的特性,管理节点抽象管理所有zg的元数据信息,并且在sdk客户端进行业务写入时,整个请求信令链路携带zg信息,传递给存储节点,实现zone和zg的一个关系绑定,最终实现分布式对象存储基于smr裸盘的一个数据写入和空间管理。
64.本发明实施例通过对每台存储节点zone元数据缓存,并进行zg元数据持久化存储和zg元数据双向比对,快速响应和解决一些异常场景下的zg状态重置。实现整个系统zone数据的一致性和正确性的更新和维护工作。
65.本发明实施例提供的数据一致性维护方法应用于图1所示的分布式存储系统中,当sdk客户端申请空间进行文件数据写入时,通过信令流将获取文件数据写入空间的指令发送给主机管理节点,主机管理节点根据该指令从对应的存储节点获取与指令对应的可容纳文件数据写入的zone的相关信息,并反馈给sdk客户端,以使sdk客户端将文件数据写入对应的zone中。其中,主机管理节点同时将信息传输给备机管理节点,以使在主机管理节点发生异常时,备机管理节点可以及时代替主机管理节点执行相应的功能。
66.本发明涉及的分布式对象存储系统支持smr磁盘设计v1版本中,管理节点对于集群内所有zone信息按照zg为单位进行统一缓存、管理和调度。但这些zg数据仅在主机管理节点内存态进行数据缓存,并未进行持久化存储到相应存储介质。管理节点故障重启后这些zg数据的恢复强依赖存储节点的上报,因为存储节点zone信息上报并不及时(不能在管理节点重启后一次性全量上报,会增加管理节点负担)与分批分时调度等相关策略,可能导致管理节点故障恢复后,部分可复用的zg在短时间内因为存储节点zone上报的不及时导致无法复用的场景出现。
67.同时,因为管理节点没有缓存每个存储节点与该存储节点对应的zone的关联信息,在存储节点发生异常(删除/离线)时,管理节点只能全表扫描遍历所有zg元数据,进行状态重置,而无法根据缓存的存储节点内zone元数据的映射关系快速重置对应zg状态,严重增加zg重置一轮的耗时。
68.最后,在存储节点进行zone元数据全量上报时,现有技术中管理节点的zg缓存中的zg元数据强依赖存储节点的上报,并未进行管理节点与数据节点的zone元数据双向全量比对,也就无法快速删除过期zone元数据(zone脏数据),保障管理节点zg数据的实时准确性。
69.为解决以上问题,本发明实施例提供一种数据一致性维护方法,以使管理节点通过按照存储节点为单位分别记录每台存储节点上的zone元数据信息,并进行zg元数据的持久化存储。在存储节点异常故障时,能快速重置其上zone对应zg的状态,保证zg状态的实时正确性;在管理节点异常故障时,能基于持久化的元数据文件快速恢复zg缓存元数据,解决短时间内因为存储节点上报zone数据不全导致zg复用失败的问题;结合管理节点持久化记录的zg缓存信息,在存储节点进行zone全量上报时,进行zone元数据双向全量比对,实时添加和删除管理节点内zone元数据信息,保证管理节点内部zg元数据缓存与存储节点真实数
据的一致性,和准确性。
70.实施例1
71.如图2所示,本发明实施例提供一种数据一致性维护方法,该方法包括以下步骤:
72.步骤201,接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
73.上述全量上报的zone元数据是指存储节点周期性上报的该存储节点对应的全部已使用zone的元数据,其中除各zone所属的zg外,还包括各zone的存储信息,即zone在对应的存储节点的具体位置,zone内写指针位置,zone内剩余空间及zone的属性信息等多种信息。
74.上述zg元数据中除了该zg中各zone的元数据,还包括zg的一些属性信息,如zg中剩余空间等。
75.步骤202,根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
76.实施中,根据全量上报的zone的元数据中各zone所述的zg的标识,在zg元数据中查找对应的zone,若未查到该zone,则表示该zone在存储节点中存在,在管理节点中不存在,因此需要在管理节点的zg的元数据中添加该zone的元数据。
77.实施中,在确定未查到的第一zone后,首先将上述第一zone添加到待新增zone队列中,待存储节点上报的zone的元数据与管理节点的zg的元数据对比结束后,再进行zg元数据中数据的新增。
78.步骤203,根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
79.实施中,在判断完待新增的zone后,再根据管理节点中各zg中包含的zone的标识,在全量上报的zone的元数据中查找对应的zone,若未查到该zone,则表示该zone在管理节点存在,而在存储节点中不存在,则需要在管理节点中对应删除。
80.实施中,在确定未查到的第二zone后,首先将上述第二zone添加到待删除zone队列中,待存储节点上报的zone的元数据与管理节点的zg的元数据对比结束后,再进行zg元数据中数据的删除。
81.步骤204,更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg;
82.如图3所示,在存储节点上报的zone的元数据与管理节点的zg的元数据对比结束后,根据待新增zone队列和待删除zone队列中记录的zone,在zg缓存中对应增加或删除上述zone。
83.根据以上方法,通过将存储节点全量上报的zone的元数据与管理节点zg缓存中的元数据进行双向对比,确定待删除和添加的zone,并针对这两类zone对应zg状态进行针对性重置,避免了全表扫描进行zg状态的修正,较现有技术中重置流程循环遍历,极大提高了效率。同时,通过双向比对,解决了v1版本管理节点构建zg缓存数据强依赖存储节点上报的缺点,并避免了管理节点zg缓存中出现zone脏数据的情况,最终维护存储节点和管理节点
zg缓存元数据的实时一致性和正确性。
84.上述双向比对过程中,除了确定待新增和待删除的zone外,还需要确定待更新的zone,即存储节点全量上报的zone元数据与管理节点zg的元数据中同时存在且数据存储信息不一致的zone,例如写指针位置不一致,并且根据存储节点全量上报的zone元数据中该zone的数据存储信息,更新zg的元数据。
85.作为一种可选的实施方式,所述zone的元数据还包括zone数据存储信息,所述zg的元数据还包括zone数据存储信息,接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据之后,还包括:
86.根据各zone所属的zg,在zg的元数据中查找对应zg中包括对应的zone时,或者,根据所述各zg中所包括的zone,在所述zone的元数据中查到对应zone时,确定查到的zone在所述zone的元数据和zg的元数据中的zone数据存储信息是否一致;
87.确定不一致时,更新所述zg的元数据,以将所述zg的元数据中对应zone数据存储信息,更新为所述zone的元数据中对应zone数据存储信息。
88.实施中,存储节点除周期性进行全量zone元数据的上报外,还进行实时的上报,即当对象分片数据写入该节点的目标zone或从该节点的目标zone中删除时,存储节点在对象分片的数据写入完成或删除完成后,向管理节点上报该目标zone的元数据,管理节点根据存储节点上报的目标zone的元数据中各目标zone所属的zg,在zg缓存中检索到对应的zg的元数据,并在zg的元数据中对应增加或删除该目标zone的元数据。
89.作为一种可选的实施方式,该方法还包括:
90.响应于数据写入指令,根据所述zg的元数据,选择zone数量与对象的对象分片数量一致的zg作为目标zg;
91.指示目标zg中目标zone所在存储节点写入对应的对象分片,并接收对应的存储节点将对应的对象分片分别写入目标zone后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据;或者
92.响应于数据删除指令,根据所述zg的元数据,确定待删除的对象所在的目标zg;
93.指示目标zg中目标zone所在存储节点删除对应的对象分片,并接收对应的存储节点将对应的对象分片从目标zone删除后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据。
94.管理节点发生异常故障后重启时,内存中zg缓存丢失,只能依赖于存储节点的上报,但为避免存储节点上报风暴,增加管理节点处理压力,存储节点会分批分时上报zone的元数据,因此管理节点无法快速的恢复出故障前的管理节点元数据的完整镜像,为解决上述问题,本发明实施例通过对zg的元数据进行持久化文件存储,在管理节点故障恢复时,可以直接解析加载持久化的元数据文件,快速恢复管理节点到崩溃前zg的缓存状态。
95.管理节点中存在两类元数据持久化文件,分别为日志文件(editlog)和元数据镜像文件(image)。针对zg元数据来说,管理节点中每次的对zone的元数据进行增删改的操作,都会落一条操作日志到日志文件。为避免日志文件长期追加导致数据量过大,管理节点会周期性进行的序列化压缩存储为元数据镜像文件,或者当日志文件中数据量达到设定阈值时,管理节点会将该日志文件序列化压缩存储为元数据镜像文件,本发明实施例中通过上述两个文件来实现管理节点元数据的维护和同步。
96.实施中,如图4所示,管理节点以存储节点为单位,进行zg的元数据的持久化存储,所有涉及zg中zone元数据的增加/删除/更改的操作,管理节点都会落一条对应的操作日志到日志文件中以进行持久化记录,并周期性进行的序列化压缩存储为元数据镜像文件,或者当日志文件中数据量达到设定阈值时将该日志文件序列化压缩存储为元数据镜像文件。最终实现内存态的zg元数据和持久化文件记录的zg的元数据保持一致,保证上述管理节点故障时,依据持久化文件记录的zg的元数据恢复出的内存中zg的元数据的正确性和准确性。
97.作为一种可选的实施方式,该方法还包括:
98.更新所述zg的元数据时,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件;
99.确定所述日志文件中的数据量到达设定阈值或所述日志文件到达设定周期,将所述日志文件序列化压缩存储为元数据镜像文件,其中,在序列化压缩存储过程中根据所述日志文件中记录的操作日志生成对应的zg的元数据。
100.同时,为了保证在主机管理节点出现故障后,备机管理节点可以迅速代替主机管理节点执行相应的功能,需要保证备机管理节点与主机管理节点中数据的实时一致性,本发明实施例中,为了保证主备机管理节点中数据一致,在主机管理节点生成日志文件后,会对应将该日志文件进行序列化压缩后通过网络发送给备机管理节点,备机管理节点根据解析日志文件同步实现zone操作的回放,并进行对应的zg元数据的更新,以此到达主备机zg元数据的一致性。
101.作为一种可选的实施方式,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件时,还包括:
102.将所述日志文件序列化压缩发送给备机管理节点,以使备机管理节点在未存储zg元数据时,根据解析所述日志文件后获取的操作日志,在内存中生成zg元数据,或者,在存储zg元数据时,根据解析所述日志文件后获取的操作日志,更新所述zg元数据。
103.在上述持久化文件存储的基础上,当管理节点故障重启后,响应于zg的元数据恢复指令,从持久化文件中获取zg的元数据进行内存中zg的元数据的恢复,保证了管理节点故障重启后管理节点与存储节点数据的一致性。
104.作为一种可选的实施方式,该方法还包括:
105.响应于zg的元数据恢复指令,确定仅存在元数据镜像文件时,对所述元数据镜像文件进行解析,并利用所述元数据镜像文件中存储的zg的元数据进行数据恢复;
106.确定仅存在未存储为元数据镜像文件的新日志文件时,对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,生成对应的zg的元数据;
107.确定同时存在元数据镜像文件和新日志文件时,对所述元数据镜像文件进行解析,利用所述元数据镜像文件中存储的zg的元数据进行数据恢复,得到当前zg的元数据,并对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,对所述当前zg的元数据进行更新。
108.上述通过序列化和反序列化技术,将管理节点内存态的zg元数据持久化存储到元数据文件中,并且在系统重启恢复时加载元数据文件恢复系统zg元数据,解决了v1版本中zg数据未持久化时,管理节点故障恢复数据构建强依赖存储节点的周期性和全量zone上
报,导致的zg对应的某些存储节点zone上报动作没有完成时,对应真实状态可以复用的zg因zone上报未完全导致暂时不可复用,极端场景下发生业务中断的问题。
109.结合实际项目测试,在管理节点发生故障重启时,能快速根据持久化的元数据镜像文件结合日志文件等元数据文件,快速恢复出系统异常前的zg元数据状态。镜像文件和操作日志加载完成后,系统所有zg的元数据即确定,不再存在某些zg因为zone上报不完全导致的暂时不可复用的场景出现。
110.现有技术中,当存储节点发生异常故障(删除/离线)时,管理节点只能通过全表扫描遍历的形式进行zg元数据中状态的重置,耗时久、效率低。本发明实施例为解决以上问题,在管理节点zg的元数据中存储了每个存储节点与对应的zone的关联信息,实现了管理节点对存储节点zone元数据的精确化管理。
111.当引入上述管理节点缓存每台存储节点与对应的zone的关联信息后,在存储节点再发生异常故障宕机时,可根据管理节点存储的关联信息实现快速重置对应zg内zone状态,以维护管理节点zg状态的正确性和一致性。
112.作为一种可选的实施方式,更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中时,还包括:
113.生成记录所述第一zone与对应的存储节点的对应关系的关联信息,并将所述关联信息存入zg的元数据中。
114.如图5所示,当存储节点发生异常时,根据存储节点的标识和存储节点与对应的zone的关联关系,快速确定该存储节点对应的zone的所属的zg,并在对应的zg的元数据中进行zone元数据的删除或状态更改。
115.作为一种可选的实施方式,该方法还包括:
116.确定存储节点被删除时,根据所述存储节点的标识,在zg的元数据中删除属于所述存储节点的zone对应的元数据。
117.作为一种可选的实施方式,该方法还包括:
118.确定存储节点离线时,根据所述存储节点的标识,在zg的元数据中查找与所述存储节点的标识相匹配的zone对应的元数据,并将找到的zone对应元数据中的zone状态更新为离线状态。
119.经实际项目测试,300台存储节点36盘位(14tb:7万zone),预估系统在长期运行后,内部的zg缓存数量可能达到数亿级别。数亿级别的全表扫描一次重置耗时在分钟甚至小时级别。但在管理节点缓存每个存储节点对应的zone的关联信息后,因为管理节点缓存的zg元数据,随存储节点周期性全量/增量上报、实时上报进行实时更新,保障了管理节点内部缓存zone数据的真实性和有效性,因此当存储节点异常故障时,只要针对性重置本存储节点zone对应zg的元数据即可,避免了对亿级别zg缓存中zg元数据的全表扫描,提升了系统性能。
120.实施例2
121.以上对本发明实施例中一种数据一致性维护方法进行说明,以下对执行上述数据一致性维护的装置进行说明。
122.请参阅图6,本发明实施例提供一种数据一致性维护装置,应用于主机管理节点,该装置包括:
123.元数据获取模块601,用于接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
124.第一zone获取模块602,用于根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
125.第二zone获取模块603,用于根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
126.元数据更新模块604,用于更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。
127.可选的,所述元数据更新模块,还用于:
128.响应于数据写入指令,根据所述zg的元数据,选择zone数量与对象的对象分片数量一致的zg作为目标zg;
129.指示目标zg中目标zone所在存储节点写入对应的对象分片,并接收对应的存储节点将对应的对象分片分别写入目标zone后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据;或者
130.响应于数据删除指令,根据所述zg的元数据,确定待删除的对象所在的目标zg;
131.指示目标zg中目标zone所在存储节点删除对应的对象分片,并接收对应的存储节点将对应的对象分片从目标zone删除后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据。
132.可选的,所述zone的元数据还包括zone数据存储信息,所述zg的元数据还包括zone数据存储信息,元数据获取模块接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据之后,还用于:
133.根据各zone所属的zg,在zg的元数据中查找对应zg中包括对应的zone时,或者,根据所述各zg中所包括的zone,在所述zone的元数据中查到对应zone时,确定查到的zone在所述zone的元数据和zg的元数据中的zone数据存储信息是否一致;
134.确定不一致时,更新所述zg的元数据,以将所述zg的元数据中对应zone数据存储信息,更新为所述zone的元数据中对应zone数据存储信息。
135.可选的,该装置还包括元数据持久化模块,所述元数据持久化模块用于:
136.更新所述zg的元数据时,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件;
137.确定所述日志文件中的数据量到达设定阈值或所述日志文件到达设定周期,将所述日志文件序列化压缩存储为元数据镜像文件,其中,在序列化压缩存储过程中根据所述日志文件中记录的操作日志生成对应的zg的元数据。
138.可选的,该装置还包括元数据恢复模块,所述元数据恢复模块用于:
139.响应于zg的元数据恢复指令,确定仅存在元数据镜像文件时,对所述元数据镜像文件进行解析,并利用所述元数据镜像文件中存储的zg的元数据进行数据恢复;
140.确定仅存在未存储为元数据镜像文件的新日志文件时,对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,生成对应的zg的元数据;
141.确定同时存在元数据镜像文件和新日志文件时,对所述元数据镜像文件进行解析,利用所述元数据镜像文件中存储的zg的元数据进行数据恢复,得到当前zg的元数据,并对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,对所述当前zg的元数据进行更新。
142.可选的,元数据持久化模块用于记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件时,还包括:
143.将所述日志文件序列化压缩发送给备机管理节点,以使备机管理节点在未存储zg元数据时,根据解析所述日志文件后获取的操作日志,在内存中生成zg元数据,或者,在存储zg元数据时,根据解析所述日志文件后获取的操作日志,更新所述zg元数据。
144.可选的,元数据更新模块用于更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中时,还包括:
145.生成记录所述第一zone与对应的存储节点的对应关系的关联信息,并将所述关联信息存入zg的元数据中。
146.可选的,元数据更新模块还用于:
147.确定存储节点被删除时,根据所述存储节点的标识,在zg的元数据中删除属于所述存储节点的zone对应的元数据。
148.可选的,元数据更新模块还用于:
149.确定存储节点离线时,根据所述存储节点的标识,在zg的元数据中查找与所述存储节点的标识相匹配的zone对应的元数据,并将找到的zone对应元数据中的zone状态更新为离线状态。
150.实施例3
151.在介绍了本发明示例性实施方式的数据一致性维护方法和装置之后,接下来,介绍根据本发明的另一示例性实施方式的设备。
152.所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
153.在一些可能的实施方式中,根据本发明的设备可以至少包括至少一个处理器、以及至少一个存储器。其中,存储器存储有程序代码,当程序代码被处理器执行时,使得处理器执行本说明书上述描述的根据本发明各种示例性实施方式的数据一致性维护方法中的步骤。例如,处理器可以执行如下步骤:
154.接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;
155.根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;
156.根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;
157.更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。
158.下面参照图7来描述根据本发明的这种实施方式的设备700。图7显示的设备700仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
159.如图7所示,设备700以通用设备的形式表现。设备700的组件可以包括但不限于:上述至少一个处理器701、上述至少一个存储器702、连接不同系统组件(包括存储器702和处理器701)的总线703。
160.总线703表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
161.存储器702可以包括易失性存储器形式的可读介质,例如随机存取存储器(ram)7021和/或高速缓存存储器7022,还可以进一步包括只读存储器(rom)7023。
162.存储器702还可以包括具有一组(至少一个)程序模块7024的程序/实用工具7025,这样的程序模块7024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
163.设备700也可以与一个或多个外部设备704(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与设备700交互的设备通信,和/或与使得该设备700能与一个或多个其它设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口705进行。并且,设备700还可以通过网络适配器706与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器706通过总线703与用于设备700的其它模块通信。应当理解,尽管图中未示出,可以结合设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
164.可选的,所述处理器还用于:
165.响应于数据写入指令,根据所述zg的元数据,选择zone数量与对象的对象分片数量一致的zg作为目标zg;
166.指示目标zg中目标zone所在存储节点写入对应的对象分片,并接收对应的存储节点将对应的对象分片分别写入目标zone后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据;或者
167.响应于数据删除指令,根据所述zg的元数据,确定待删除的对象所在的目标zg;
168.指示目标zg中目标zone所在存储节点删除对应的对象分片,并接收对应的存储节点将对应的对象分片从目标zone删除后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据。
169.可选的,所述zone的元数据还包括zone数据存储信息,所述zg的元数据还包括zone数据存储信息,所述处理器接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据之后,还用于:
170.根据各zone所属的zg,在zg的元数据中查找对应zg中包括对应的zone时,或者,根据所述各zg中所包括的zone,在所述zone的元数据中查到对应zone时,确定查到的zone在所述zone的元数据和zg的元数据中的zone数据存储信息是否一致;
171.确定不一致时,更新所述zg的元数据,以将所述zg的元数据中对应zone数据存储信息,更新为所述zone的元数据中对应zone数据存储信息。
172.可选的,所述处理器还用于:
173.更新所述zg的元数据时,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件;
174.确定所述日志文件中的数据量到达设定阈值或所述日志文件到达设定周期,将所述日志文件序列化压缩存储为元数据镜像文件,其中,在序列化压缩存储过程中根据所述日志文件中记录的操作日志生成对应的zg的元数据。
175.可选的,所述处理器还用于:
176.响应于zg的元数据恢复指令,确定仅存在元数据镜像文件时,对所述元数据镜像文件进行解析,并利用所述元数据镜像文件中存储的zg的元数据进行数据恢复;
177.确定仅存在未存储为元数据镜像文件的新日志文件时,对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,生成对应的zg的元数据;
178.确定同时存在元数据镜像文件和新日志文件时,对所述元数据镜像文件进行解析,利用所述元数据镜像文件中存储的zg的元数据进行数据恢复,得到当前zg的元数据,并对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,对所述当前zg的元数据进行更新。
179.可选的,所述处理器记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件时,还用于:
180.将所述日志文件序列化压缩发送给备机管理节点,以使备机管理节点在未存储zg元数据时,根据解析所述日志文件后获取的操作日志,在内存中生成zg元数据,或者,在存储zg元数据时,根据解析所述日志文件后获取的操作日志,更新所述zg元数据。
181.可选的,所述处理器用于更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中时,还包括:
182.生成记录所述第一zone与对应的存储节点的对应关系的关联信息,并将所述关联信息存入zg的元数据中。
183.可选的,所述处理器还用于:
184.确定存储节点被删除时,根据所述存储节点的标识,在zg的元数据中删除属于所述存储节点的zone对应的元数据。
185.可选的,所述处理器还用于:
186.确定存储节点离线时,根据所述存储节点的标识,在zg的元数据中查找与所述存储节点的标识相匹配的zone对应的元数据,并将找到的zone对应元数据中的zone状态更新为离线状态。
187.在一些可能的实施方式中,本发明提供的一种数据一致性维护方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码用于使计算机设备执行本说明书上述描述的根据本发明各种示例性实施方式的一种数据一致性维护方法中的步骤。
188.程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑盘只读存储器
(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。
189.本发明的实施方式的用于监控的程序产品可以采用便携式紧凑盘只读存储器(cd-rom)并包括程序代码,并可以在设备上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
190.可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
191.可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。
192.可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行、或者完全在远程设备或服务端上执行。在涉及远程设备的情形中,远程设备可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户设备,或者,可以连接到外部设备(例如利用因特网服务提供商来通过因特网连接)。
193.应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
194.此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
195.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
196.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和方框图来描述的。应理解可由计算机程序指令实现流程图和方框图中的每一流程和/或方框、以及流程图和方框图中的流程和方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和方框图一个方框或多个方框中指定的功能的装置。
197.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和方框图一个方框或多个方框中指定的功能。
198.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和方框图一个方框或多个方框中指定的功能的步骤。
199.尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
200.显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
技术特征:
1.一种数据一致性维护方法,其特征在于,该方法包括:接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。2.根据权利要求1所述的方法,其特征在于,还包括:响应于数据写入指令,根据所述zg的元数据,选择zone数量与对象的对象分片数量一致的zg作为目标zg;指示目标zg中目标zone所在存储节点写入对应的对象分片,并接收对应的存储节点将对应的对象分片分别写入目标zone后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据;或者响应于数据删除指令,根据所述zg的元数据,确定待删除的对象所在的目标zg;指示目标zg中目标zone所在存储节点删除对应的对象分片,并接收对应的存储节点将对应的对象分片从目标zone删除后,上报的目标zone的元数据,根据上报的目标zone的元数据更新zg的元数据。3.根据权利要求1所述的方法,其特征在于,所述zone的元数据还包括zone数据存储信息,所述zg的元数据还包括zone数据存储信息,接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据之后,还包括:根据各zone所属的zg,在zg的元数据中查找对应zg中包括对应的zone时,或者,根据所述各zg中所包括的zone,在所述zone的元数据中查到对应zone时,确定查到的zone在所述zone的元数据和zg的元数据中的zone数据存储信息是否一致;确定不一致时,更新所述zg的元数据,以将所述zg的元数据中对应zone数据存储信息,更新为所述zone的元数据中对应zone数据存储信息。4.根据权利要求1~3任一所述的方法,其特征在于,还包括:更新所述zg的元数据时,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件;确定所述日志文件中的数据量到达设定阈值或所述日志文件到达设定周期,将所述日志文件序列化压缩存储为元数据镜像文件,其中,在序列化压缩存储过程中根据所述日志文件中记录的操作日志生成对应的zg的元数据。5.根据权利要求4所述的方法,其特征在于,还包括:响应于zg的元数据恢复指令,确定仅存在元数据镜像文件时,对所述元数据镜像文件进行解析,并利用所述元数据镜像文件中存储的zg的元数据进行数据恢复;确定仅存在未存储为元数据镜像文件的新日志文件时,对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,生成对应的zg的元数据;确定同时存在元数据镜像文件和新日志文件时,对所述元数据镜像文件进行解析,利
用所述元数据镜像文件中存储的zg的元数据进行数据恢复,得到当前zg的元数据,并对所述新日志文件进行解析,根据所述新日志文件中存储的操作日志,对所述当前zg的元数据进行更新。6.根据权利要求4所述的方法,其特征在于,记录更新所述zg的元数据所执行的操作,生成操作日志信息并存入日志文件时,还包括:将所述日志文件序列化压缩发送给备机管理节点,以使备机管理节点在未存储zg元数据时,根据解析所述日志文件后获取的操作日志,在内存中生成zg元数据,或者,在存储zg元数据时,根据解析所述日志文件后获取的操作日志,更新所述zg元数据。7.根据权利要求1所述的方法,其特征在于,更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中时,还包括:生成记录所述第一zone与对应的存储节点的对应关系的关联信息,并将所述关联信息存入zg的元数据中。8.根据权利要求7所述的方法,其特征在于,还包括:确定存储节点被删除时,根据所述存储节点的标识,在zg的元数据中删除属于所述存储节点的zone对应的元数据。9.根据权利要求7所述的方法,其特征在于,还包括:确定存储节点离线时,根据所述存储节点的标识,在zg的元数据中查找与所述存储节点的标识相匹配的zone对应的元数据,并将找到的zone对应元数据中的zone状态更新为离线状态。10.一种数据一致性维护装置,其特征在于,该装置包括:元数据获取模块,用于接收存储节点全量上报的zone的元数据,并获取zg缓存中的zg的元数据,所述zone的元数据包括各zone所属zg,所述zg的元数据用于记录至少一个zg所包括的zone;第一zone获取模块,用于根据各zone所属的zg,在zg的元数据中查找对应zg中是否包括对应zone,并确定未查到的第一zone;第二zone获取模块,用于根据所述至少一个zg中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;元数据更新模块,用于更新zg的元数据,以在zg缓存中将所述第一zone增加到第一zg中,及将所述第二zone从对应的zg中删除,所述第一zg为根据所述元数据确定的第一zone所属的zg。11.一种数据一致性维护设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9任一项所述的方法。12.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至9任一项所述的步骤。
技术总结
本发明提供一种数据一致性维护方法、装置及设备,该方法包括:接收存储节点全量上报的zone的元数据,并获取ZG缓存中的ZG的元数据;根据各zone所属的ZG,在ZG的元数据中查找对应ZG中是否包括对应zone,并确定未查到的第一zone;根据所述至少一个ZG中所包括的zone,在所述zone的元数据中检查是否能查到所述所包括的zone,并确定未查到的第二zone;更新ZG的元数据,以在ZG缓存中将所述第一zone增加到第一ZG中,及将所述第二zone从对应的ZG中删除,保证了管理节点和数据节点数据实时一致性和正确性。正确性。正确性。
技术研发人员:徐涛 罗心 江文龙 周明伟
受保护的技术使用者:浙江大华技术股份有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8