具有分布式清单的去复制的数据存储系统的制作方法

文档序号:9568648阅读:502来源:国知局
具有分布式清单的去复制的数据存储系统的制作方法
【专利说明】
【背景技术】
[0001]典型的计算机网络可以具有备份和恢复系统以用于如果数据变成被毁坏、盖写、遭受病毒攻击等则将网络上的数据(例如被包含在一个或多个文件中的数据)还原到在先状态的目的。备份和恢复系统典型地包括大容量存储设备,诸如磁带驱动器和/或硬驱动器;并且系统可以包括物理和/或虚拟的可移除存储设备。
[0002]例如,备份和恢复系统可以在磁带上存储备份数据,并且在将备份数据转移到给定磁带之后,磁带可以从其磁带驱动器被移除并且存储在安全的位置中,诸如在防火保险箱中。备份和恢复系统可以可替换地为模仿和取代物理磁带驱动系统的基于虚拟磁带库的系统。以此方式,在基于虚拟磁带库的系统的情况下,虚拟磁带盒,而不是磁带,存储备份数据。
【附图说明】
[0003]图1是根据示例实现的计算机网络的示意图。
[0004]图2是根据示例实现的数据存储系统的图示。
[0005]图3和4是根据示例实现的由图2的数据存储系统用于选择群队(team)成员以接收去复制(deduplicated)的数据的争控过程的图示。
[0006]图5是根据示例实现的跨多个群队成员的群队化对象的存储分布的图示。
[0007]图6是描绘了根据示例实现的在群队成员的集群上存储群队化对象的技术的流程图。
[0008]图7,8A和8B是描绘了根据示例实现的选择群队成员以用于存储去复制的数据的技术的流程图。
[0009]图9是描绘了根据示例实现的检索和报告部分群队化的对象数据的技术的流程图。
[0010]图10是图示了根据示例实现的从群队成员检索群队化对象数据的表。
[0011]图11是描绘了根据示例实现的在群队成员之间分布主对象清单的技术的流程图。
[0012]图12是根据示例实现的主对象清单的分布的图示。
[0013]图13是根据示例实现的经复制的数据的群队成员控制的重现(replicat1n)的图示。
[0014]图14是根据示例实现的非水化重现过程的图示。
【具体实施方式】
[0015]参照图1,示例计算机网络100可以包括备份和恢复系统,其包括在相应服务器110 (服务器110-1,110-2…110Q,其作为示例在图1中被描绘)上执行的备份应用132和关联的客户端应用134。以此方式,有时,备份应用132标识要在网络100的备份存储设备上备份的关联客户端应用134的数据。该数据进而根据在本文中称为“对象”的数据容器进行划分。从一个备份会话到下一个,创建、删除和修改被存储在备份存储装置上的给定对象。如本文所公开的,在本文所讨论的其许多功能之中,客户端应用134被构造成标识对象数据中的改变;选择经更新的数据存储于其上的存储装置;以及向所选存储装置传送经更新的数据。
[0016]作为示例,“存储装置”可以是独立计算机系统或相同计算机系统上的独立存储子系统。对于图1的具体示例,存储装置形成在相应节点150(P个节点150-1,150-2...150P,其作为示例在图1中被描绘)上,所述节点经由网络连接140 (局域网(LAN)连接、基于因特网的连接、广域网(WAN)连接、这样的连接的组合等等,这取决于特定实现)親合到服务器110。
[0017]如本文所公开的,给定对象在存储装置的集群、或群组上存储为“群队化对象”。由于群队化的性质,“存储装置”在本文中还称为“群队成员170”。以此方式,依照示例实现,针对给定“群队化对象”的每一个群队成员170存储针对对象的“去复制的数据”,其中去复制的数据是由初始数据集连同表示初始存储的数据中的改变的数据一起形成的数据。因而,可以从针对给定的群队化对象的群队成员170检索去复制的数据以“再水化”或重构对象。
[0018]—般而言,服务器110是由实际硬件120和实际机器可执行指令或“软件” 130构成的物理机。在这方面,给定服务器110可以包括这样的硬件120,如一个或多个中央处理单元(CPU)122、存储器124、网络接口 126等等。一般而言,存储器124是非暂时性存储器,诸如磁性存储装置、光学存储装置、由半导体器件形成的存储装置等等。存储器124可以为服务器110本地存储数据,以及存储指令,所述指令当由(多个)CPU 122执行时使(多个)CHJ提供机器可执行指令130的一个或多个组件。
[0019]如图1中所图示的,机器可执行指令130包括备份应用132和客户端应用134,以及创建、修改和删除对象的其它可能的其它应用。
[0020]给定的群队成员170可以形成在同样为由实际硬件158和实际机器可执行指令159构成的实际物理机的处理节点150上。硬件158可以包括(作为示例)一个或多个中央处理单元(CPU) 160、网络接口和存储器162。存储器162是非暂时性存储器并且可以取决于特定实现而是基于磁性存储的存储器、基于光学存储的存储器、基于半导体存储的存储器等等。节点150可以包括机器可执行指令159,所述机器可执行指令159包括例如群队成员客户端应用168。
[0021]因此,依照示例实现,存在于潜在地多个节点150上的群队成员170的集群或群组可以形成用于给定的群队化对象的存储。而且,尽管在本文中描述为存在于分离节点150上,但是依照另外的实现,给定的群队化对象可以存储在独立的群队成员上,其中两个或更多群队成员位于相同的节点150上。因此,设想了许多实现,其在随附权利要求的范围内。
[0022]结合图1参照图2,依照示例实现,群队化对象208可以呈现为对给定客户端应用134的单个逻辑对象,尽管针对对象208的数据分布在群队成员170的群组或集群之上。群队化对象的这种逻辑呈现为应用提供了单个存储池,其横跨集群内否则独立的存储池。
[0023]依照一些实现,客户端应用134不在本地存储关于给定群队化对象的内容的任何信息。这允许多个客户端应用134和因此的多个备份应用132同时访问相同的群队化对象并且还避免产生在具体客户端应用134与所存储的数据之间的依赖性。
[0024]如本文进一步公开的,为了简化与现有备份应用的集成,每一个群队成员170可以知晓针对给定群队化对象的其它群队成员170并且可以向客户端应用134指示其位置。这允许备份应用132连接到任何一个群队成员170并且还允许客户端应用134静默地打开与所有群队成员170的连接。这可以帮助避免暴露复杂的配置并且允许可以例如利用单个端点拓扑所设计的备份应用132内的群队化对象的管理。
[0025]由于给定的群队化对象涉及多个独立操作的群队成员170,因此依照一些实现,客户端应用134将来自多个群队成员170的信息合并成被传送至关联的备份应用132的有意义的信息。以此方式,依照一些实现,给定的群队成员170可以存储各个列表、数据作业记录、拷贝作业记录等等,给定客户端应用134可以将所述各个列表、数据作业记录、拷贝作业记录等等合并成对于备份应用132有意义的信息。对于在列表中返回的许多字段,客户端应用134提供来自跨群队成员存储装置的所有返回的值的合计,例如所存储的用户数据的量。对于其它字段,客户端应用134可以将各个状态“包裹”成总体状态,诸如例如(多个)最严重的状态。
[0026]当客户端应用134执行跨每一个群队成员170的列表操作时,不保证列表中的条目的绝对次序。例如,两个群队化对象可以实际上同时创建,并且对于给定群队成员170,对象一可以首先存储,而在另一给定的其它群队成员170上,对象二可以已经被首先创建。出于向备份应用132提供单个、稳定列表的目的,使用通用标识并且列表操作用于在合理时间窗口内、跨存储装置搜索,寻找相关联的记录。通过具有在其之上运行搜索的基于时间的窗口,可以避免其中在每一次成员170寻找条目时搜索整个数据库的情形,所述条目在某些情况下可能甚至不存在。作为示例,时间窗口可以是大约五分钟范围中的时间窗口,但是该窗口可以取决于特定配置和/或实现而变化。
[0027]如图2中所描绘的,尽管给定的分布式群队化对象208可以分布在多个群队成员170之间,但是给定的客户端应用134具有单个对应对象的逻辑视图,其允许每一个
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1