一种增量数据备份检索的方法及系统与流程

文档序号:25543661发布日期:2021-06-18 20:40
一种增量数据备份检索的方法及系统与流程

本发明涉及数据处理领域,具体而言,涉及一种增量数据备份检索的方法及系统。



背景技术:

数据备份领域惯用的现代化备份技术手段,离不开增量备份,但是无限增量备份存在这样的问题,数据的冗余异常明显,基于一些恢复时间点数据恢复过程元数据的导入、变化数据的拷贝都会对生产系统带来一定的数据性能挑战。

全球的数据爆发性的增长,非同一数据集的大量的备份数据冗余更加明显,传统的增加数据备份性能和冗余的问题愈发显得突出,本专利旨在通过分布式的设计,解决生产增量备份数据冗余的消除,同时提供一个渐进的方式检索恢复备份数据。



技术实现要素:

本发明的目的在于提供一种增量数据备份检索的方法,其能够通过若干份主机的备份数据到一个数据集,采用存储池级的重删,带来全部业务的影响,这种存储层面的数据消除业界没有性能和重删率俱佳的设计;通过引入分布式的设计,对备份节点的块设备建立多级索引关系,提供分布式的一致性保护,这样相同数据指纹的数据可以被高效检索。

本发明的另一目的在于提供一种增量数据备份检索的系统,其能够运行一种增量数据备份检索的方法。

本发明的实施例是这样实现的:

第一方面,本申请实施例提供一种增量数据备份检索的方法,其包括构建分布式的备份增量数据检索集群,集群数量满足基数节点的要求,并且不小于3节点;在增量数据写入过程中,分布式节点提供写服务;在增量数据的读取过程及增量数据的检索过程中,分布式节点提供读服务。

在本发明的一些实施例中,上述构建分布式的备份增量数据检索集群,集群数量满足基数节点的要求,并且不小于3节点包括:集群由分布式调度程序、集群指纹库、块索引map、块号数据堆构成。

在本发明的一些实施例中,上述分布式调度程序包括:分布式调度程序负责对增量的数据写入、更新、读取、检索提供一致性的服务。

在本发明的一些实施例中,上述集群指纹库包括:集群指纹库为基于google时间检索优化的hashmap结构,用于对增量数据进行hash存储的结构,其中key为数据hash计算的64位唯一特征码,value数据部分,存放的结构体包含块号、块设备物理id。

在本发明的一些实施例中,上述块索引map包括:块索引map为基于时间检索优化的hashmap结构,通过指纹map得到块的块设备物理id,进而基于块设备物理id检索到当前的块索引map,块索引map的key是块设备物理id,value部分数据结构包含块号指针。

在本发明的一些实施例中,上述块号数据堆包括:块号数据堆为存放增量块实际数据的结构,其中块号数据堆基于时间戳为key的大根堆,这样可以快速检索某个时间点内最新的块数据,同时提供区间索引,其中块号数据堆的value部分由时间戳、增量数据存储区、reference、数据块的访问计数器、数据块的引用计数器。

在本发明的一些实施例中,上述在增量数据写入过程中,分布式节点提供写服务包括:计算当前增量数据的指纹,检索集群指纹库;若存在,则访问块索引map找到对应的块号数据堆地址指针,通过块号数据堆地址指针访问对应的块号下的数据堆,更新堆,并标记当前的块和引用记录;若不存在,则访问块索引map找到对应的块号数据堆地址指针,通过块号数据堆地址指针访问对应的块号下的数据堆,将数据拷贝到堆中的增量数据存储区,并标记当前的块和引用记录。

第二方面,本申请实施例提供一种增量数据备份检索的系统,其包括构建模块,用于构建分布式的备份增量数据检索集群,集群数量满足基数节点的要求,并且不小于3节点;

写入模块,用于在增量数据写入过程中,分布式节点提供写服务;

读取模块,用于在增量数据的读取过程及增量数据的检索过程中,分布式节点提供读服务。

在本发明的一些实施例中,上述包括:用于存储计算机指令的至少一个存储器;与上述存储器通讯的至少一个处理器,其中当上述至少一个处理器执行上述计算机指令时,上述至少一个处理器使上述系统执行:构建模块、写入模块以及读取模块。

第三方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如一种增量数据备份检索的方法中任一项的方法。

相对于现有技术,本发明的实施例至少具有如下优点或有益效果:

可以解决若干不同业务系统增量备份数据的冗余消除同时快速检索数据的技术方法。增加的备份数据不再直接写入存储后端,而是建立一个分布式的增量数据检索集群,同时任意的增量备份数据集中的增量数据块存在冗余,均可以在当前分布式集群被消冗,保障相同数据块在当前的分布式增量数据集群只存在一份,同时可提供副本功能存储指定份数。通过这样的设计,数据检索的性能也得到极大的扩展,解决传统的瓶颈限制,同时节约了极大的存储空间,带来不可估量的成本效益。这种冗余比文件指纹等等方式,粒度更细同时数据具备完全的全局性消冗!在当前分布式集群中,任意修改的时间点的增加数据检索,被分为两级,一个热集群缓存、一个冷集群缓存,热集群缓存高度重复的块和高频访问的数据块数据,冷集群缓存即全量的数据集群。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的一种增量数据备份检索的方法步骤示意图;

图2为本发明实施例提供的一种增量数据备份检索的系统模块示意图;

图3为本发明实施例提供的一种电子设备。

图标:10-构建模块;20-写入模块;30-读取模块。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的各个实施例及实施例中的各个特征可以相互组合。

实施例1

请参阅图1,图1为本发明实施例提供的一种增量数据备份检索的方法步骤示意图,其如下所示:

步骤s100,构建分布式的备份增量数据检索集群,集群数量满足基数节点的要求,并且不小于3节点;

在一些实施方式中,集群主要由分布式调度程序、集群指纹库、块索引map、块号数据堆构成。其中:

分布式调度程序,负责对增量的数据写入、更新、读取、检索提供一致性的服务。

集群指纹库,是一个基于google时间检索优化的hashmap结构,用于对增量数据进行hash存储的结构,其中key为数据hash计算的64位唯一特征码,value数据部分,存放的结构体包含块号、块设备物理id。块索引map,同样是基于时间检索优化的hashmap结构,通过指纹map可以得到块的块设备物理id,进而基于块设备物理id检索到当前的块索引map,块索引map的key是块设备物理id,value部分数据结构包含块号指针。

块号指针是一个块号数据堆的地址。块号数据堆是存放增量块实际数据的结构,针对这个进行优化设计,其中堆基于时间戳为key的大根堆,这样可以快速检索某个时间点内最新的块数据,同时提供区间索引,可以检索任意区间内的块数据纪律,以满足任意区间数据恢复的能力!其中块号数据堆的value部分由时间戳、增量数据存储区、reference(数据实际存放的index,这里的index是数据的指纹)、数据块的访问计数器、数据块的引用计数器。分布式集群通过块号数据堆会周期重建热缓存数据区,将高频访问计数的数据块、高引用的数据块进行存放热缓存存储,其中热缓存存储的介质可以是高速缓存盘或者内存中,由创建指定。

步骤s110,在增量数据写入过程中,分布式节点提供写服务;

在一些实施方式中,首先计算当前增量数据的指纹,检索集群指纹库,

若存在,则访问块索引map找到对应的块号数据堆地址指针,通过块号数据堆地址指针访问对应的块号下的数据堆,更新堆,并标记当前的块和引用记录;

若不存在,则访问块索引map找到对应的块号数据堆地址指针,通过块号数据堆地址指针访问对应的块号下的数据堆,将数据拷贝到堆中的增量数据存储区,并标记当前的块和引用记录。

步骤s120,在增量数据的读取过程及增量数据的检索过程中,分布式节点提供读服务。

在一些实施方式中,首先计算当前增量数据的指纹,检索集群指纹库,

若存在,从热缓存检索读取返回,

否则访问块索引map找到对应的块号数据堆地址指针,通过块号数据堆地址指针访问对应的块号下的数据堆,进而访问堆中的数据,读取返回。

其中增量数据的检索过程同读取流程一致。

其能够通过若干份主机的备份数据到一个数据集,采用存储池级的重删,带来全部业务的影响,这种存储层面的数据消除业界没有性能和重删率俱佳的设计。通过引入分布式的设计,对备份节点的块设备建立多级索引关系,提供分布式的一致性保护,这样相同数据指纹的数据可以被高效检索。

实施例2

请参阅图2,图2为本发明实施例提供的一种增量数据备份检索的系统模块示意图,其如下所示:

构建模块10,用于构建分布式的备份增量数据检索集群,集群数量满足基数节点的要求,并且不小于3节点;

写入模块20,用于在增量数据写入过程中,分布式节点提供写服务;

读取模块30,用于在增量数据的读取过程及增量数据的检索过程中,分布式节点提供读服务。

如图3所示,本申请实施例提供一种电子设备,其包括存储器101,用于存储一个或多个程序;处理器102。当一个或多个程序被处理器102执行时,实现如上述第一方面中任一项的方法。

还包括通信接口103,该存储器101、处理器102和通信接口103相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器101可用于存储软件程序及模块,处理器102通过执行存储在存储器101内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口103可用于与其他节点设备进行信令或数据的通信。

其中,存储器101可以是但不限于,随机存取存储器101(randomaccessmemory,ram),只读存储器101(readonlymemory,rom),可编程只读存储器101(programmableread-onlymemory,prom),可擦除只读存储器101(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器101(electricerasableprogrammableread-onlymemory,eeprom)等。

处理器102可以是一种集成电路芯片,具有信号处理能力。该处理器102可以是通用处理器102,包括中央处理器102(centralprocessingunit,cpu)、网络处理器102(networkprocessor,np)等;还可以是数字信号处理器102(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请所提供的实施例中,应该理解到,所揭露的方法及系统和方法,也可以通过其它的方式实现。以上所描述的方法及系统实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的方法及系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

另一方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器102执行时实现如上述第一方面中任一项的方法。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器101(rom,read-onlymemory)、随机存取存储器101(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,本申请实施例提供的一种增量数据备份检索的方法及系统,其可以解决若干不同业务系统增量备份数据的冗余消除同时快速检索数据的技术方法。增加的备份数据不再直接写入存储后端,而是建立一个分布式的增量数据检索集群,同时任意的增量备份数据集中的增量数据块存在冗余,均可以在当前分布式集群被消冗,保障相同数据块在当前的分布式增量数据集群只存在一份,同时可提供副本功能存储指定份数。通过这样的设计,数据检索的性能也得到极大的扩展,解决传统的瓶颈限制,同时节约了极大的存储空间,带来不可估量的成本效益。这种冗余比文件指纹等等方式,粒度更细同时数据具备完全的全局性消冗!在当前分布式集群中,任意修改的时间点的增加数据检索,被分为两级,一个热集群缓存、一个冷集群缓存,热集群缓存高度重复的块和高频访问的数据块数据,冷集群缓存即全量的数据集群。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其它的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1