CN113590383A - 数据恢复方法及装置、特征比对系统、电子设备 - Google Patents
数据恢复方法及装置、特征比对系统、电子设备 Download PDFInfo
- Publication number
- CN113590383A CN113590383A CN202110836238.8A CN202110836238A CN113590383A CN 113590383 A CN113590383 A CN 113590383A CN 202110836238 A CN202110836238 A CN 202110836238A CN 113590383 A CN113590383 A CN 113590383A
- Authority
- CN
- China
- Prior art keywords
- service node
- snapshot
- data
- feature data
- characteristic data
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000011084 recovery Methods 0.000 title claims abstract description 42
- 239000012634 fragment Substances 0.000 claims description 113
- 238000012545 processing Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 18
- 230000008859 change Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013139 quantization Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000013467 fragmentation Methods 0.000 description 1
- 238000006062 fragmentation reaction Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1469—Backup restoration techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
Abstract
本申请公开了一种数据恢复方法及装置、特征比对系统、电子设备、存储介质,所述方法包括:基于第一存储系统中的第一特征数据,生成第二特征数据;基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据恢复方法及装置、特征比对系统、电子设备和存储介质。
背景技术
特征比对系统通常采用预写日志的技术来记录系统的状态,预写日志也常常被称为操作日志,是特征比对系统收到的写操作请求的持久化存储。操作日志通常和快照结合使用,快照是对特征比对系统上的数据在某一时间点拷贝的持久化存储。在快照或操作日志丢失或损坏的情况下,如何恢复特征比对系统上的数据是个需要解决的问题。
发明内容
为解决上述技术问题,本申请实施例提供了一种数据恢复方法及装置、特征比对系统、电子设备和存储介质。
本申请实施例提供了一种数据恢复方法,包括:
基于第一存储系统中的第一特征数据,生成第二特征数据;
基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。
本申请一可选实施方式中,所述方法还包括:
为所述系统中的至少一个服务节点创建对应的分片,其中,一个服务节点创建的分片数量为至少一个;
将所述第二特征数据加载到所述至少一个服务节点对应的分片中。
本申请一可选实施方式中,所述为所述系统中的至少一个服务节点创建对应的分片,包括:
基于所述第一存储系统中记录的第一信息,为所述系统中的至少一个服务节点创建对应的分片;
其中,所述第一信息包括以下至少之一:分片和服务节点之间的对应关系、分片的名称、分片的容量、服务节点的名称、服务节点的容量。
本申请一可选实施方式中,所述为所述系统中的至少一个服务节点创建对应的分片,包括:
基于第二存储系统中记录的元文件,确定已完成快照生成的分片;
基于已完成快照生成的分片,确定未完成快照生成的分片;
基于所述未完成快照生成的分片确定至少一个服务节点待创建的分片,并对所述待创建的分片进行创建。
本申请一可选实施方式中,所述基于所述第二特征数据生成系统的快照,包括:
基于所述第二特征数据,生成系统中的至少一个服务节点的快照;
基于所述至少一个服务节点的快照,确定所述系统的快照。
本申请一可选实施方式中,所述基于所述第二特征数据,生成系统中的至少一个服务节点的快照,包括:
针对所述系统中的至少一个服务节点中的每个服务节点,基于该服务节点对应的至少一个分片上的所述第二特征数据生成该服务节点对应的至少一个拷贝文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述服务节点的一个分片的快照。
本申请一可选实施方式中,所述方法还包括:
针对所述系统中的至少一个服务节点中的每个服务节点,生成该服务节点对应的元文件,所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。
本申请一可选实施方式中,所述方法还包括:
针对所述至少一个服务节点中的每个服务节点,将该服务节点的对应的至少一个拷贝文件和元文件存储至第二存储系统中。
本申请一可选实施方式中,所述基于所述系统的快照在所述系统上恢复出所述第二特征数据,包括:
将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中。
本申请一可选实施方式中,所述将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中之后,所述方法还包括:
初始化所述至少一个服务节点对应的操作日志,其中,所述操作日志用于记录服务节点的写操作请求。
本申请实施例还提供了一种数据恢复装置,包括:
处理单元,用于基于第一存储系统中的第一特征数据,生成第二特征数据;
生成单元,用于基于所述第二特征数据生成系统的快照;
恢复单元,用于基于所述系统的快照在所述系统上恢复出所述第二特征数据。
本申请一可选实施方式中,所述装置还包括:
创建单元,用于为所述系统中的至少一个服务节点创建对应的分片,其中,一个服务节点创建的分片数量为至少一个;
加载单元,用于将所述第二特征数据加载到所述至少一个服务节点对应的分片中。
本申请一可选实施方式中,所述创建单元,用于基于所述第一存储系统中记录的第一信息,为所述系统中的至少一个服务节点创建对应的分片;其中,所述第一信息包括以下至少之一:分片和服务节点之间的对应关系、分片的名称、分片的容量、服务节点的名称、服务节点的容量。
本申请一可选实施方式中,所述创建单元,用于基于第二存储系统中记录的元文件,确定已完成快照生成的分片;基于已完成快照生成的分片,确定未完成快照生成的分片;基于所述未完成快照生成的分片确定至少一个服务节点待创建的分片,并对所述待创建的分片进行创建。
本申请一可选实施方式中,所述生成单元,用于基于所述第二特征数据,生成系统中的至少一个服务节点的快照;基于所述至少一个服务节点的快照,确定所述系统的快照。
本申请一可选实施方式中,所述生成单元,用于针对所述系统中的至少一个服务节点中的每个服务节点,基于该服务节点对应的至少一个分片上的所述第二特征数据生成该服务节点对应的至少一个拷贝文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述服务节点的一个分片的快照。
本申请一可选实施方式中,所述生成单元,还用于针对所述系统中的至少一个服务节点中的每个服务节点,生成该服务节点对应的元文件,所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。
本申请一可选实施方式中,所述装置还包括:存储单元,用于针对所述至少一个服务节点中的每个服务节点,将该服务节点的对应的至少一个拷贝文件和元文件存储至第二存储系统中。本申请一可选实施方式中,所述恢复单元,用于将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中。
本申请一可选实施方式中,所述恢复单元,还用于初始化所述至少一个服务节点对应的操作日志,其中,所述操作日志用于记录服务节点的写操作请求。
本申请实施例还提供了一种特征比对系统,所述系统包括一个或多个服务节点,其中,
所述服务节点,用于存储第二特征数据,所述第二特征数据由第一存储系统中的第一特征数据进行压缩处理后得到;
其中,所述服务节点上存储的所述第二特征数据用于从所述第一存储系统中索引出所述第一特征数据。
本申请一可选实施方式中,所述服务节点上存储的第二特征数据的数目为多个,所述第一存储系统中存储的第一特征数据的数目为多个;所述系统还包括:代理节点,其中,
所述代理节点,用于将目标对象的特征数据与所述服务节点中存储的第二特征数据进行比对,确定出与所述目标对象的特征数据最相似的n个第二特征数据,n为正整数;根据所述n个第二特征数据从所述第一存储系统中索引出与所述n个第二特征数据对应的n个第一特征数据;计算所述目标对象的特征数据与所述n个第一特征数据的相似度,基于相似度计算结果确定所述目标对象的比对结果。
本申请实施例还提供了一种计算机存储介质,所述存储介质上存储有可执行指令,该可执行指令被处理器执行时实现上述任意所述的数据恢复方法。
本申请实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器上存储有计算机可执行指令,所述处理器运行所述存储器上的计算机可执行指令时可实现上述任意所述的数据恢复方法。
本申请实施例的技术方案,基于第一存储系统中的第一特征数据,生成第二特征数据;基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。由于第二特征数据是基于第一存储系统中的第一特征数据生成的,因而基于第二特征数据生成的快照能够反映系统的最新状态,正是如此,在对系统进行数据恢复时,可以在不重新录入第一特征数据的情况下基于快照对系统进行数据恢复,系统恢复的耗费时间较短且避免了敏感的特征数据被接触。
附图说明
图1是本申请实施例提供的一种系统架构示意图;
图2是本申请实施例提供的服务节点的分片的示意图;
图3是本申请实施例提供的服务节点的快照的示意图;
图4是本申请实施例提供的服务节点的状态的示意图;
图5是本申请实施例提供的数据恢复方法的流程示意图;
图6是本申请实施例提供的创建分片的示意图;
图7是本申请实施例提供的数据加载的示意图;
图8是本申请实施例提供的生成快照的示意图;
图9是本申请实施例提供的数据恢复的框架图;
图10是本申请实施例提供的数据恢复装置的结构组成示意图;
图11是本申请实施例提供的电子设备的结构组成示意图。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为便于理解本申请实施例的技术方案,以下对本申请实施例的相关技术进行说明,以下相关技术作为可选方案与本申请实施例的技术方案可以进行任意结合,其均属于本申请实施例的保护范围。
随着智慧城市的建设,城市级的图像、视频分析系统使用越来越频繁。这些系统每天都要处理和录入大量的目标对象的特征数据,并且用于目标对象比对的特征数据是需要长期保存的。随着人们对功能多样性、容量、性能和准确性等方面的要求越来越高,这些系统不断被升级改造,变得越来越庞大复杂,在稳定性和可靠性方面也面临越来越大的考验。
图1是本申请实施例提供的一种系统架构示意图,本申请实施例中,系统也可以称为特征比对系统,作为示例,系统可以是图像分析系统或者视频分析系统。系统包括一个或多个服务节点,所述服务节点,用于存储第二特征数据,所述第二特征数据由第一存储系统中的第一特征数据进行压缩处理后得到;其中,所述服务节点上存储的所述第二特征数据用于从所述第一存储系统中索引出所述第一特征数据。本申请一可选实施方式中,所述服务节点上存储的第二特征数据的数目为多个,所述第一存储系统中存储的第一特征数据的数目为多个;所述系统还包括:代理节点,用于将目标对象的特征数据与所述服务节点中存储的第二特征数据进行比对,确定出与所述目标对象的特征数据最相似的n个第二特征数据,n为正整数;根据所述n个第二特征数据从所述第一存储系统中索引出与所述n个第二特征数据对应的n个第一特征数据;计算所述目标对象的特征数据与所述n个第一特征数据的相似度,基于相似度计算结果确定所述目标对象的比对结果。
以系统包括N个服务节点为例,N为正整数,这里,N为大于1的正整数的情况下,N个服务节点可以分布在同一物理设备上,也可以分布在不同的物理设备上,作为示例,物理设备可以是服务器。需要说明的是,本申请实施例中,“服务节点”的描述也可以替换为“工作节点(worker)”。
系统的每个服务节点上可以存储一定容量的特征数据,为便于描述,将服务节点上存储的特征数据称为第二特征数据。相对于系统之外的数据库上也可以存储特征数据,为便于描述,将数据库上存储的特征数据称为第一特征数据。这里,第一特征数据也可以称为第二特征数据的原始特征数据,换言之,第二特征数据由第一特征数据进行压缩处理后得到,其中,所述服务节点上存储的所述第二特征数据用于从所述第一存储系统中索引出所述第一特征数据。以下对第一特征数据和第二特征数据之间的关系以及用途进行说明。
数据库中存储有第一特征数据(也即原始特征数据)。在一些可选实施方式中,原始特征数据是对目标对象的数据采用基于深度神经网络的算法提取得到的,通常是以一个多维向量表示,通过计算向量距离可以得到对应特征数据之间的相似度,进而可结合其它手段进行目标对象比对、目标对象的属性判断等更高层次的分析。由于数据库中存储的原始特征数据的规模常常可以达到上亿,直接对这些原始特征数据进行相似度比对的效率极低,为了提高目标对象比对的效率,将原始特征数据进行一定的压缩处理后存储在各个服务节点的显卡中,其中,压缩处理后的特征数据以数据块的形式存储,一个数据块常常被称为一个分片,可以容纳一定数量的特征数据。
图2是本申请实施例提供的服务节点的分片的示意图,需要说明的是,图2是以系统中的一个服务节点为例进行说明,系统中的其他服务节点同理,特别说明的是,系统中的不同服务节点具有的分片的数量可以相同也可以不同,一个服务节点具有的分片的数量可以依据该服务节点的容量和权重来确定。参照图2,服务节点具有M个分片,M为正整数,M个分片中的每个分片可以容纳一定数量的数据。M为大于1的正整数的情况下,M个分片的容量可以相同,也可以不同。需要说明的是,对于一个分片来说,其容量是指其能够容纳的最大数据量,一个分片内实际存储的数据量小于等于该分片的容量。数据库中的第一特征数据(也即原始特征数据)经过压缩处理后存储在服务节点的各个分片上,分片上存储的经过压缩处理后的特征数据被称为第二特征数据。在一些可选实施方式中,第二特征数据是在第一特征数据的基础上采用倒排索引和乘积量化等方法处理后得到,第二特征数据相比第一特征数据会丢失一些信息,如此可以提高搜索速率。系统在进行目标对象比对时,先将目标对象的特征数据与系统的显卡中的第二特征数据进行粗略比对,再基于粗略比对结果将目标对象的特征数据与数据库中的第一特征数据进行精确比对。具体地,先从系统的显卡中确定出与目标对象的特征数据最相似的n个第二特征数据,n为正整数;再从数据库中取出与这n个第二特征数据对应的n个第一特征数据,计算目标对象的特征数据与这n个第一特征数据的相似度,从而基于相似度确定目标对象比对结果。需要说明的是,由于第二特征数据是由第一特征数据处理得到,因而第二特征数据与第一特征数据之间具有对应关系,例如特征数据1由特征数据2处理得到,特征数据1和特征数据2是对应的。本申请实施例中,第二特征数据可以索引出与该第二特征数据对应的第一特征数据,因此,第二特征数据也可以称为特征索引。
系统是有状态的,系统的状态可以通过系统中的各个服务节点的状态来体现,系统中任意一个服务节点的状态改变都可以导致系统的状态改变。对于一个服务节点来说,服务节点的状态通过服务节点内存储的第二特征数据来体现,换句话说,服务节点内存储的第二特征数据不同时,服务节点的状态不同。
系统发生异常时需要重启,例如系统断电或者发生硬件故障时需要重启,由于系统内的各个服务节点上的分片数据(即第二特征数据)是存储在显卡中的,因此在系统重启后,系统内的各个服务节点上的分片数据会丢失,因此,需要恢复系统内的各个服务节点上的分片数据,也即需要恢复系统内的各个服务节点的状态。服务节点的状态的恢复基于该服务节点的快照和操作日志来实现。
图3是本申请实施例提供的服务节点的快照的示意图,服务节点具有M个分片,M为正整数,针对M个分片中的每个分片,将分片上的数据导出成一定格式的文件(以下称为拷贝而件),作为示例,拷贝文件为二进制格式的文件。M个分片分别导出对应的M个拷贝文件,其中,一个拷贝文件对应于一个分片的快照,也可以理解为,一个拷贝文件是一个分片的快照。M个分片的快照形成了服务节点的快照。需要指出的是,对于系统来说,系统的快照包括该系统内的N个服务节点的快照。
一般,服务节点的快照是定期生成的,服务节点的快照可以反映出该服务节点在某一时间点的状态,在这一时间点之后服务节点还会收到写操作请求,导致该服务节点的状态发生改变,引起状态改变的写操作会请求会记录在该服务节点的操作日志中。这里,在一些可选实施方式中,针对某个服务节点的写操作请求来说,写操作请求用于请求服务节点执行以下至少一种写操作:写入新的特征数据、删除原有的特征数据、更新原有的特征数据。可见,服务节点收到写操作请求后,服务节点上的分片数据(即第一特征数据)会发生改变,从而导致服务节点的状态发生改变。
对于一个服务节点来说,服务节点的状态通过该服务节点的快照和操作日志确定。其中,服务节点的操作日志记录了该服务节点的全部写操作请求,可以理解,操作日志是服务节点收到的全部写操作请求的持久化存储。作为示例,操作日志记录了K条写操作请求,K为正整数,每条写操作请求都对应一个时间点的信息。服务节点的快照包括该服务节点的M个分片的快照,可以理解,服务节点的快照是该服务节点的M个分片上的数据在某一时间点的持久化存储。
图4是本申请实施例提供的服务节点的状态的示意图,如图4所示,系统在时间点t1生成了一次服务节点的快照,在时间点t2接收到了写操作请求1并记录在操作日志中,在时间点t3接收到了操作请求2并记录在操作日志中,写操作请求1和写操作请求2会导致服务节点的状态发生改变。在恢复服务节点的状态的时候,根据服务节点的快照确定服务节点的在t1时刻对应的状态1,然后根据服务节点的在t1时刻对应的状态1和写操作请求1确定服务节点的在t2时刻对应的状态2,再然后根据服务节点的在t2时刻对应的状态2和写操作请求2确定服务节点的在t3时刻对应的状态3,以此类推,可以确定出服务节点的最新状态(即服务节点对应于最近一次操作请求的状态)。
通过以上描述可知,恢复服务节点的状态需要依据该服务节点的快照和操作日志,然而,如果服务节点的快照和操作日志由于人为误删或硬件故障导致丢失或损坏,系统将无法正常提供服务。这种情况下,一般只能通过重新录入特征数据,但这样耗费时间长且需要重新取得敏感的特征数据。为此,提出了本申请实施例的以下技术方案。
需要说明的是,本申请实施例的技术方案中,“目标对象”可以但不局限于是“人脸”、“人体”、“车辆”、“车道”、“物品”等。相应地,“特征数据”可以但不局限于是“人脸特征数据”、“人体特征数据”、“车辆特征数据”、“车道特征数据”、“物品特征数据”等。
本申请实施例的技术方案,针对上述系统提出了一种数据恢复方法,用于恢复系统中的各个服务节点上的分片数据(也即第二特征数据),可以在不重新录入特征数据的情况下恢复系统的状态,耗费时间短且避免了接触敏感的特征数据。此外,本申请实施例的技术方案,在数据恢复过程中引入了断点重试机制,可以在断网或者断电等因素造成恢复中断的情况下从上次中断的地方继续执行恢复。
图5是本申请实施例提供的数据恢复方法的流程示意图,如图5所示,所述数据恢复方法包括以下步骤:
步骤501:基于第一存储系统中的第一特征数据,生成第二特征数据。
本申请实施例中,第一存储系统可以是数据库,作为示例,数据库可以是Cassandra数据库,当然,数据库也可以是其他类型的数据库,本申请实施例对数据库的类型不做限制。其中,第一存储系统中存储有特征数据,为便于描述,将第一存储系统上存储的特征数据称为第一特征数据。
这里,基于第一存储系统中的第一特征数据可以生成第二特征数据,换句话说,第二特征数据由第一特征数据进行一定的处理得到。在一些可选实施方式中,第二特征数据是在第一特征数据的基础上采用倒排索引和乘积量化等方法处理后得到。第一特征数据和第二特征数据之间的关系以及用途可以参照前述图1和图2的相关描述。
步骤502:基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。
本申请实施例中,系统也可以称为特征比对系统。所述系统包括至少一个服务节点。作为示例,参照图1,系统包括N个服务节点,N为正整数,这里,N为大于1的正整数的情况下,N个服务节点可以分布在同一物理设备上,也可以分布在不同的物理设备上,作为示例,物理设备可以是服务器。需要说明的是,本申请实施例中,“服务节点”的描述也可以替换为“工作节点(worker)”。
本申请实施例中,服务节点按照分片的形式存储特征数据,因此,服务节点上存储的特征数据也可以称为分片数据。参照图2,以系统中的一个服务节点为例进行说明,系统中的其他服务节点同理,特别说明的是,系统中的不同服务节点具有的分片的数量可以相同也可以不同,一个服务节点具有的分片的数量可以依据该服务节点的容量和权重来确定。服务节点具有M个分片,M为正整数,M个分片中的每个分片可以容纳一定数量的数据。M为大于1的正整数的情况下,M个分片的容量可以相同,也可以不同。需要说明的是,对于一个分片来说,其容量是指其能够容纳的最大数据量,一个分片内实际存储的数据量小于等于该分片的容量。
本申请实施例中,系统是有状态的,系统的状态可以通过系统中的各个服务节点的状态来体现,系统中任意一个服务节点的状态改变都可以导致系统的状态改变。对于一个服务节点来说,服务节点的状态通过服务节点内存储的分片数据来体现,换句话说,服务节点内存储的分片数据不同时,服务节点的状态不同。
服务节点的状态基于该服务节点的快照和操作日志来确定,其中,服务节点的快照可以参照前述图3相关的描述,服务节点的状态可以参照前述图4相关的描述。由于恢复服务节点的状态需要依据该服务节点的快照和操作日志,在快照或操作日志丢失或损坏的情况下,如何服务节点的状态(也即恢复服务节点上的分片数据)需要明确。
为此,可以利用第一特征数据(即原始特征数据)重新生成第二特征数据(即特征索引),再基于第二特征数据生成能够反映系统最新状态的快照,从而基于系统的快照在系统上恢复出第二特征数据,也即恢复出系统的状态。
本申请实施例中,对于系统来说,系统的快照包括该系统内的至少一个服务节点的快照。基于此,可以通过以下方式生成系统的快照:基于所述第二特征数据,生成系统中的至少一个服务节点的快照;基于所述至少一个服务节点的快照,确定所述系统的快照。
在一些可选实施方式中,所述基于所述第二特征数据,生成系统中的至少一个服务节点的快照,可以通过以下流程实现:
1)创建分片
为所述系统中的至少一个服务节点创建对应的分片,其中,一个服务节点创建的分片数量为至少一个。
这里,第一存储系统中记录有第一信息,其中,所述第一信息包括以下至少之一:分片和服务节点之间的对应关系(也可以称为映射关系)、分片的名称、分片的容量、服务节点的名称、服务节点的容量。基于此,可以基于所述第一存储系统中记录的第一信息,为所述系统中的至少一个服务节点创建对应的分片。
举个例子:参照图6,基于第一存储系统中的第一信息可以确定服务节点1对应分片11、分片12和分片13;服务节点2对应分片21、分片22和分片23;服务节点3对应分片31、分片32和分片33;根据分片11、分片12、分片13、分片21、分片22、分片23、分片31、分片32和分片33的名称以及容量可以创建对应的分片。这里,需要说明的是,创建的分片属于一个空的数据块,该数据块可以理解为后续待加载数据的存储区域。
2)加载数据
将所述第二特征数据加载到所述至少一个服务节点对应的分片中。
举个例子:参照图7,将第一部分第二特征数据加载到服务节点1对应的分片11中,将第二部分第二特征数据加载到服务节点1对应的分片12中,将第三部分第二特征数据加载到服务节点1对应的分片13中;以此类推,将后续部分的第二特征数据加载到后续服务节点对应的各个分片中。
3)生成快照
针对所述系统中的至少一个服务节点中的每个服务节点,基于该服务节点对应的至少一个分片上的所述第二特征数据生成该服务节点对应的至少一个拷贝文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述服务节点的一个分片的快照。
举个例子:服务节点具有M个分片,M为正整数,针对M个分片中的每个分片,将分片上的数据导出成一定格式的文件(以下称为拷贝而件),作为示例,拷贝文件为二进制格式的文件。M个分片分别导出对应的M个拷贝文件,其中,一个拷贝文件对应于一个分片的快照,也可以理解为,一个拷贝文件是一个分片的快照。M个分片的快照形成了服务节点的快照。对于系统来说,系统的快照包括该系统内的至少一个服务节点的快照。
在一些可选实施方式中,针对所述系统中的至少一个服务节点中的每个服务节点,生成该服务节点对应的元文件,所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。
针对所述至少一个服务节点中的每个服务节点,生成该服务节对应的至少一个拷贝文件和元文件后,将该服务节点的对应的至少一个拷贝文件和元文件存储至第二存储系统中。这里,所述第二存储系统可以是文件存储系统或者对象存储系统,作为示例,所述第二存储系统为Minio对象存储系统,当然,所述第二存储系统也可以是其他类型的存储系统,本申请实施例对所述第二存储系统的类型不做限制。
作为示例,参照图8,图8是本申请实施例提供的第二存储系统内存储的内容示意图,以系统包括3个服务节点为例,将3服务节点中每个服务节点对应的至少一个拷贝文件(也即分片的快照)和元文件存储至第二存储系统中。以服务节点1为例,服务节点1对应的3个拷贝文件与所述服务节点1中的3分片的快照一一对应,一个拷贝文件是通过对一个分片上的数据进行拷贝得到,一个拷贝文件也可以理解为一个分片的快照。服务节点1对应的元文件1记录了服务节点1的信息、服务节点1上的分片的信息(例如服务节点1上具有分片11、分片12、分片13)、服务节点1的快照所包含的拷贝文件的信息(例如服务节点1的快照包含分片11的快照、分片12的快照、分片13的快照)。
在一些可选实施方式中,在上述生成系统中的至少一个服务节点的快照的过程中,在创建分片的步骤之前,可以包括以下流程:
0)进度恢复
基于第二存储系统中记录的元文件,确定已完成快照生成的分片;基于已完成快照生成的分片,确定未完成快照生成的分片;基于所述未完成快照生成的分片确定至少一个服务节点待创建的分片。
本申请实施例中,第二存储系统中的各个服务节点的元文件记录了已完成快照生成的分片信息,可以从第二存储系统中读出上一次执行系统恢复时已完成快照生成的分片信息,本次执行系统恢复时会跳过这些分片,针对未完成快照生成的分片接着执行快照生成,从而实现了断点重试机制,可以在断网或者断电等因素造成快照生成中断的情况下从上次中断的地方继续执行快照生成。
在一些可选实施方式中,通过上述方案生成至少一个服务节点对应的快照(也即系统的快照)后,将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中,从而实现对系统状态的恢复。
上述方案中,由于第二特征数据是基于第一存储系统中的第一特征数据生成的,因而基于第二特征数据生成的快照能够反映系统的最新状态,正是如此,在基于快照对系统的状态进行恢复后,可以初始化系统中的至少一个服务节点对应的操作日志,其中,所述操作日志用于记录服务节点的写操作请求。这里,初始化操作日志,可以理解为,将操作日志内记录的写操作请求清空,后续该操作日志内记录的写操作请求是针对基于上述方案中生成的快照而恢复出的系统的最新状态。
本申请实施例的技术方案,基于第一存储系统中的第一特征数据,生成第二特征数据;基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。由于第二特征数据是基于第一存储系统中的第一特征数据生成的,因而基于第二特征数据生成的快照能够反映系统的最新状态,正是如此,在对系统进行数据恢复时,可以在不重新录入第一特征数据的情况下基于快照对系统进行数据恢复,系统恢复的耗费时间较短且避免了敏感的特征数据被接触。进一步,本申请实施例的技术方案,为了应对断网或者断电等因素造成恢复中断的情况,提出了一种断点重试机制,可以从上次中断的地方继续执行恢复,可用性更高。
以下结合具体应用实例对本申请实施例的技术方案进行举例说明。
图9是本申请实施例提供的数据恢复的框架图,如图9所示,以第一存储系统为Cassandra数据库,以第二存储系统为Minio对象存储系统为例,数据恢复主要包括两个流程:1)重建分片;2)数据加载;3)生成快照;4)加载快照和操作日志。以下结合图9对这三个流程进行说明。
1)重建分片
在生成快照前,需要先将用于存储特征数据的分片重建出来。
具体地,Cassandra数据库中记录了第一信息,其中,第一信息包括以下至少之一:服务节点与分片之间的对应关系、分片的名称、分片的容量、服务节点的名称、服务节点的容量。快照重建工具根据第一信息可以创建出系统中的各个服务节点对应的分片。图9是以N个服务节点为例进行说明的,N为正整数。
另外,为了支持断点重试机制,在重建分片之前,先从Minio对象存储系统中读出上一次执行系统恢复时已完成快照生成的分片信息,本次执行系统恢复时会跳过这些分片,针对未完成快照生成的分片执行快照生成。
2)数据加载
Cassandra数据库中存储有原始特征数据,这些原始特征数据经过处理后得到的特征数据通过特征加载器被加载到各个服务节点的分片上。
3)生成快照
基于该服务节点上的至少一个分片上的数据生成该服务节点对应的至少一个拷贝文件以及一个元文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述至少一个分片中的一个分片的快照。所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。这里,可以将一个拷贝文件理解为一个分片的快照。
这里,由于分片上的数据来源于Cassandra数据库,由于Cassandra数据库中的数据是完整的,因而基于分片上的数据生成的快照能够完整反映系统的状态,即单独根据快照而不依赖操作日志即可完全恢复系统的状态。
将每个服务节点对应的至少一个拷贝文件(即至少一个分片的快照)以及一个元文件上传至Minio对象存储系统。这里,元文件记录了分片信息,因而可以用于前述断点重试机制。
4)重新加载快照和操作日志
在生成各个服务节点的快照后,将各个服务节点的快照加载到各个服务节点的内存中,从而完成各个服务节点的状态恢复,也即完成系统的状态恢复。为了使得服务节点能够正常提供服务,需要对该服务节点的操作日志进行初始化,或者说将一个初始化的操作日志替换掉之前的操作日志,即可让服务节点正常提供服务。
图10是本申请实施例提供的数据恢复装置的结构组成示意图,如图10所述,所述数据恢复装置包括:
处理单元1001,用于基于第一存储系统中的第一特征数据,生成第二特征数据;
生成单元1002,用于基于所述第二特征数据生成系统的快照;
恢复单元1003,用于基于所述系统的快照在所述系统上恢复出所述第二特征数据。
本申请一可选实施方式中,所述装置还包括:
创建单元1004,用于为所述系统中的至少一个服务节点创建对应的分片,其中,一个服务节点创建的分片数量为至少一个;
加载单元1005,用于将所述第二特征数据加载到所述至少一个服务节点对应的分片中。
本申请一可选实施方式中,所述创建单元1004,用于基于所述第一存储系统中记录的第一信息,为所述系统中的至少一个服务节点创建对应的分片;其中,所述第一信息包括以下至少之一:分片和服务节点之间的对应关系、分片的名称、分片的容量、服务节点的名称、服务节点的容量。
本申请一可选实施方式中,所述创建单元1004,用于基于第二存储系统中记录的元文件,确定已完成快照生成的分片;基于已完成快照生成的分片,确定未完成快照生成的分片;基于所述未完成快照生成的分片确定至少一个服务节点待创建的分片,并对所述待创建的分片进行创建。
本申请一可选实施方式中,所述生成单元1002,用于基于所述第二特征数据,生成系统中的至少一个服务节点的快照;基于所述至少一个服务节点的快照,确定所述系统的快照。
本申请一可选实施方式中,所述生成单元1002,用于针对所述系统中的至少一个服务节点中的每个服务节点,基于该服务节点对应的至少一个分片上的所述第二特征数据生成该服务节点对应的至少一个拷贝文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述服务节点的一个分片的快照。
本申请一可选实施方式中,所述生成单元1002,还用于针对所述系统中的至少一个服务节点中的每个服务节点,生成该服务节点对应的元文件,所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。
本申请一可选实施方式中,所述装置还包括:存储单元,用于针对所述至少一个服务节点中的每个服务节点,将该服务节点的对应的至少一个拷贝文件和元文件存储至第二存储系统中。
本申请一可选实施方式中,所述恢复单元1003,用于将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中。
本申请一可选实施方式中,所述恢复单元1003,还用于初始化所述至少一个服务节点对应的操作日志,其中,所述操作日志用于记录服务节点的写操作请求。
本领域技术人员应当理解,图10所示的数据恢复装置中的各单元的实现功能可参照前述数据恢复方法的相关描述而理解。图10所示的数据恢复方法中的各单元的功能可通过运行于处理器上的程序而实现,也可通过具体的逻辑电路而实现。
本申请实施例上述数据恢复装置中的各单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。
相应地,本申请实施例还提供一种计算机程序产品,其中存储有计算机可执行指令,该计算机可执行指令被执行时能够实现本申请实施例的上述数据恢复方法。
图11是本申请实施例提供的电子设备的结构组成示意图,如图11所示,电子设备1100可以包括一个或多个(图中仅示出一个)处理器1101(处理器1101可以包括但不限于微处理器(MCU,Micro Controller Unit)或可编程逻辑器件(FPGA,Field ProgrammableGate Array)等的处理装置)、用于存储数据的存储器1102、以及用于通信功能的传输装置1103。本领域普通技术人员可以理解,图11所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备1100还可包括比图11中所示更多或者更少的组件,或者具有与图11所示不同的配置。
存储器1102可用于存储应用软件的软件程序以及模块,如本申请实施例中的方法对应的程序指令/模块,处理器1101通过运行存储在存储器1102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器1102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1102可进一步包括相对于处理器1101远程设置的存储器,这些远程存储器可以通过网络连接至电子设备1100。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置1103用于经由一个网络接收或者发送数据。上述的网络具体实例可包括电子设备1100的通信供应商提供的无线网络。在一个实例中,传输装置1103包括一个网络适配器(NIC,Network Interface Controller),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置1103可以为射频(RF,Radio Frequency)模块,其用于通过无线方式与互联网进行通讯。
本申请实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和智能设备,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个第二处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (15)
1.一种数据恢复方法,其特征在于,所述方法包括:
基于第一存储系统中的第一特征数据,生成第二特征数据;
基于所述第二特征数据生成系统的快照,基于所述系统的快照在所述系统上恢复出所述第二特征数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
为所述系统中的至少一个服务节点创建对应的分片,其中,一个服务节点创建的分片数量为至少一个;
将所述第二特征数据加载到所述至少一个服务节点对应的分片中。
3.根据权利要求2所述的方法,其特征在于,所述为所述系统中的至少一个服务节点创建对应的分片,包括:
基于所述第一存储系统中记录的第一信息,为所述系统中的至少一个服务节点创建对应的分片;
其中,所述第一信息包括以下至少之一:分片和服务节点之间的对应关系、分片的名称、分片的容量、服务节点的名称、服务节点的容量。
4.根据权利要求2所述的方法,其特征在于,所述为所述系统中的至少一个服务节点创建对应的分片,包括:
基于第二存储系统中记录的元文件,确定已完成快照生成的分片;
基于已完成快照生成的分片,确定未完成快照生成的分片;
基于所述未完成快照生成的分片确定至少一个服务节点待创建的分片,并对所述待创建的分片进行创建。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二特征数据生成系统的快照,包括:
基于所述第二特征数据,生成系统中的至少一个服务节点的快照;
基于所述至少一个服务节点的快照,确定所述系统的快照。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第二特征数据,生成系统中的至少一个服务节点的快照,包括:
针对所述系统中的至少一个服务节点中的每个服务节点,基于该服务节点对应的至少一个分片上的所述第二特征数据生成该服务节点对应的至少一个拷贝文件,其中,所述至少一个拷贝文件中的每个拷贝文件对应于所述服务节点的一个分片的快照。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
针对所述系统中的至少一个服务节点中的每个服务节点,生成该服务节点对应的元文件,所述元文件用于记录以下至少一种信息:服务节点的信息、服务节点上的至少一个分片的信息、服务节点的快照所包含的至少一个拷贝文件的信息。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
针对所述至少一个服务节点中的每个服务节点,将该服务节点的对应的至少一个拷贝文件和元文件存储至第二存储系统中。
9.根据权利要求2至7中任一项所述的方法,其特征在于,所述基于所述系统的快照在所述系统上恢复出所述第二特征数据,包括:
将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中。
10.根据权利要求9所述的方法,其特征在于,所述将所述至少一个服务节点对应的快照分别加载到所述至少一个服务节点的内存中之后,所述方法还包括:
初始化所述至少一个服务节点对应的操作日志,其中,所述操作日志用于记录服务节点的写操作请求。
11.一种数据恢复装置,其特征在于,所述装置包括:
处理单元,用于基于第一存储系统中的第一特征数据,生成第二特征数据;
生成单元,用于基于所述第二特征数据生成系统的快照;
恢复单元,用于基于所述系统的快照在所述系统上恢复出所述第二特征数据。
12.一种特征比对系统,其特征在于,所述系统包括一个或多个服务节点,其中,
所述服务节点,用于存储第二特征数据,所述第二特征数据由第一存储系统中的第一特征数据进行压缩处理后得到;
其中,所述服务节点上存储的所述第二特征数据用于从所述第一存储系统中索引出所述第一特征数据。
13.根据权利要求12所述的系统,其特征在于,所述服务节点上存储的第二特征数据的数目为多个,所述第一存储系统中存储的第一特征数据的数目为多个;所述系统还包括:代理节点,其中,
所述代理节点,用于将目标对象的特征数据与所述服务节点中存储的第二特征数据进行比对,确定出与所述目标对象的特征数据最相似的n个第二特征数据,n为正整数;根据所述n个第二特征数据从所述第一存储系统中索引出与所述n个第二特征数据对应的n个第一特征数据;计算所述目标对象的特征数据与所述n个第一特征数据的相似度,基于相似度计算结果确定所述目标对象的比对结果。
14.一种计算机存储介质,其特征在于,所述存储介质上存储有可执行指令,该可执行指令被处理器执行时实现权利要求1至10中任一项所述的方法步骤。
15.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器上存储有计算机可执行指令,所述处理器运行所述存储器上的计算机可执行指令时可实现权利要求1至10中任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110836238.8A CN113590383A (zh) | 2021-07-23 | 2021-07-23 | 数据恢复方法及装置、特征比对系统、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110836238.8A CN113590383A (zh) | 2021-07-23 | 2021-07-23 | 数据恢复方法及装置、特征比对系统、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113590383A true CN113590383A (zh) | 2021-11-02 |
Family
ID=78249625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110836238.8A Withdrawn CN113590383A (zh) | 2021-07-23 | 2021-07-23 | 数据恢复方法及装置、特征比对系统、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590383A (zh) |
-
2021
- 2021-07-23 CN CN202110836238.8A patent/CN113590383A/zh not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11716385B2 (en) | Utilizing cloud-based storage systems to support synchronous replication of a dataset | |
US11086555B1 (en) | Synchronously replicating datasets | |
US10146640B2 (en) | Recovering a volume table and data sets | |
CN110720088A (zh) | 集成到大容量存储设备的可访问快速耐久存储 | |
CN103098035A (zh) | 存储系统 | |
CN102902561B (zh) | 数据存储方法及数据存储系统 | |
US7657533B2 (en) | Data management systems, data management system storage devices, articles of manufacture, and data management methods | |
CN116601596A (zh) | 使用数据相似度来选择分段进行垃圾收集 | |
US20190227710A1 (en) | Incremental data restoration method and apparatus | |
US11327676B1 (en) | Predictive data streaming in a virtual storage system | |
US11835990B2 (en) | Use of cluster-level redundancy within a cluster of a distributed storage management system to address node-level errors | |
US20150355968A1 (en) | Systems and methods for sequential resilvering | |
CN113590383A (zh) | 数据恢复方法及装置、特征比对系统、电子设备 | |
US10877868B2 (en) | Applying a log to storage segments | |
CN113590384A (zh) | 数据备份方法及装置、电子设备和存储介质 | |
CN114265551B (zh) | 存储集群中的数据处理方法、存储集群、存储节点及设备 | |
US11099948B2 (en) | Persistent storage segment caching for data recovery | |
EP3854060B1 (en) | Accessing prior storage segment server state | |
US20230353635A1 (en) | Replication Utilizing Cloud-Based Storage Systems | |
EP4291983A1 (en) | Reducing the impact of network latency during a restore operation | |
CN117742609A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20211102 |
|
WW01 | Invention patent application withdrawn after publication |