数据插入系统的制作方法

文档序号:6348622阅读:200来源:国知局
专利名称:数据插入系统的制作方法
技术领域
本发明涉及一种数据插入系统、数据控制装置、存储装置、插入数据的方法、控制数据的方法、和存储数据的方法。
背景技术
当前,已知一种分布式数据存储递送系统。在该分布式数据存储递送系统中,每一个均具有用于存储数据的存储装置的用户计算机(在下文中,还被称作存储节点)被连接到多个网络以形成大容量数据存储系统。该分布式数据存储递送系统具有配置(存储)数据的功能,和管理数据配置的功能(分布式数据配置管理功能)。利用这种构造,该分布式数据存储递送系统采用分布式数据配置管理功能将从用户计算机发送的数据分割成多个数据分段以使得数据冗余,并且将该数据存储到多个存储节点中。然后,连接到同一网络的用户计算机使用分布式数据配置管理功能来识别具有目标分布式数据的存储节点,并且从该存储节点获得分布式数据。该分布式数据配置管理功能通过具有集中管理功能的元数据服务器或者具有索引功能的分布式数据索引单元来实现,该索引功能采用使用分布式哈希(Hash)表的分布式管理功能。因此,在该分布式数据存储递送系统中,要被存储的大量数据以分布方式被存储在存储节点中。在这种系统中,数据的配置在很大程度上影响该系统的性能、抗故障特性或者可用性。例如,当盘驱动器被用作存储装置时,能够通过将很可能对其进行连续访问的两个数据存储到同一盘驱动器上的物理连续区域中而增加访问性能。此外,当在存储节点之间连接的网络的性能低时,能够通过将同时使用的数据存储到多个不同存储节点中而改进性能。然而,当存在极度地使性能劣化的访问时,该系统不能对大量访问做出响应,这使可用性劣化。如上所述,以良好地符合同时访问或者连续访问的模式或者数据的使用趋势诸如访问存在/不存在如何随着时间改变的方式分布和配置数据是重要的。此外,该分布式数据存储递送系统可以具有数据重配置功能,其中曾经已被存储的数据通过动态数据迁移功能而被传送到另一个存储节点,由此数据的配置能够被改变。其示例包括在网络构造方面另一个存储节点更加适合于用户的使用的情形,和被同时地使用的多个数据被不同的存储节点并行地读出以改进系统性能的情形。这些是使用通过网络传送数据的功能、以及在分布式数据配置管理功能中包括的索引功能中改变注册数据的功能而得以执行的。然而,在动态数据迁移功能中执行数据重配置功能时,访问存储装置是必要的,并且因此,完成将数据重配置为适合于该数据的配置占用几分钟到几小时的时间。此外,在该分布式数据存储递送系统中,增加或者降低系统中的存储节点的数目是可能的。例如,在系统缺少数据供应能力或者缺少数据存储容量的情形中,能够将存储节点添加到分布式数据存储递送系统。此外,当任何存储节点故障或者系统处理的数据量降低时,分布式数据存储递送系统能够减少存储节点的数目。能够基于指示分布式数据配置管理功能所具有的系统构造和索引功能的改变的信息来实现系统构造的这种改变。在具有上述构造的分布式数据存储递送系统中,在其中无任何数据已被注册的情形中,先前被存储在另一系统中的大量数据可以被插入该分布式数据存储递送系统中。如上所述地插入数据的一个示例包括其中备份数据被恢复的情形。首先,分布式数据存储递送系统需要在另一存储装置(例如,备份存储装置)中产生所存储数据的备份, 从而防范由于整个分布式数据存储递送系统故障而引起的数据丢失。整个系统故障的示例包括电源或者建筑设施出现问题、软件故障和自然灾害。例如使用磁带装置、盘阵列或者另一个分布式数据存储递送系统作为备份存储装置是可能的。应该指出,在用于在分布式数据存储递送系统中实现备份的备份系统中,有必要在同步的、静止点处实现整个系统的备份。这是因为,在并行连接到网络的计算机之间传输指令发生延迟,这使得难以在每一个节点中匹配备份的产生时间。此外,因为数据在节点之间传送,所以如果备份产生时间在节点之间彼此偏移,则部分数据可能丢失或者可能存在
重叠数据。为了应对这点,管理所要备份的数据的数据管理单元存储被称为快照(snapshot) 的状态,快照代表遍布整个系统一致的特定点处设定的数据。能够例如通过在专利文献1 中描述的方法产生快照。然后,快照数据作为所要备份的数据而被发送到备份存储装置。此外,非专利文献1描述了一种产生快照以备份并行连接的存储装置的数据和备份所产生的快照的数据的方法。作为用于存储分布式数据存储递送系统中的数据的备份的方法的示例,可以有这样一种方法,该方法在产生快照之后将在每一个存储节点中存储的数据发送到预定的备份存储装置。在这种方法中,为每一个存储节点管理备份数据或者备份装置是必要的,从而需要大的工作负载的管理器。此外,作为另一种方法,可以有这样一种方法,该方法将数据分割成具有固定长度的数据簇,诸如块和数据块,或者分割成基于语义分割的数据簇,诸如文件,并且将数据簇与标识符一起发送到备份存储装置以存储它们,所述标识符唯一地代表相应的数据簇。然后,在其中由于在分布式数据存储递送系统中发生问题而丢失数据的情形中, 管理器将数据从备份存储装置中恢复到在被修复或者重新构建之后的分布式数据存储递送系统。在恢复之后,对于在存储时被分割的每一个数据簇,在备份存储装置中存储的备份数据均被复制到分布式数据存储递送系统中的存储节点上。作为复制目的地的每一个存储节点均依赖于在恢复之后分布式数据存储递送系统的构造,并且复制目的地由在恢复之后的分布式数据存储递送系统中的数据配置管理功能来确定。可以在另一个存储节点中配置已经被复制到存储节点上的数据的进一步的复制。 这个复制被实现用于防止由于存储节点的问题而丢失数据,并且也由在恢复之后的分布式数据存储递送系统的数据配置管理功能来确定。作为又一个示例,在其中以常规方式操作的系统中数据被传送到作为重新构造的并且具有高性能的分布式数据存储递送系统的情形中,大量数据被从旧系统插入新系统。
在此情形中,在旧系统中存储的数据被分割成具有固定长度的数据簇,诸如块和数据块,或者被分割成基于语义分割的数据簇,诸如文件,并且与标识符一起被复制到新的分布式数据存储递送系统上,所述标识符唯一地代表相应的数据簇。相关文献专利文献专利文献1 日本专利申请特开No. 2004-38929非专利文献非专利文献1: “ SnapshotIQ",赛龙系统有限公司(Isilon Systems, Inc.), http://www. isilon. co. jp/materials/brochures/30480_Snapshot. pdf,2008.

发明内容
在具有上述构造的分布式数据存储递送系统中,在当大量的数据被插入分布式数据存储递送系统中时,匹配使用趋势的数据分布配置可能在被存储在备份存储装置中的数据中存在。不幸的是,在此情形中,当大量的数据简单地被插入分布式数据存储递送系统中时,被插入该系统中的数据以并不匹配使用趋势的方式分布和配置。更加具体地,在如上所述地备份和恢复数据的示例中,诸如存储节点的性能或者容量的构造或者存储容量的构造在当数据被备份时和当数据被恢复时之问可能不同。因此,如果在备份存储装置中存储的数据简单地被插入分布式数据存储递送系统中,则可能发生如下情形,其中在恢复之后的分布式数据存储递送系统中,数据以并不匹配数据的使用趋势的方式分布和配置。鉴于上述情况进行了本发明,并且本发明的一个目的在于提供用于基于在备份存储装置中存储的数据的使用趋势将数据插入分布式数据存储递送系统中的一种数据插入系统、数据控制装置和存储装置。根据本发明,提供了一种数据插入系统,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,该数据插入系统包括第一分布索引信息获得单元,该第一分布索引信息获得单元获得与在数据存储装置中存储的数据有关并且与在存储装置中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求单元,该构造信息请求单元从存储装置请求指示存储装置所具有的存储区的构造的系统构造信息,和指示存储装置的第二数据配置信息的第二分布索引信息;装置分布索引信息产生单元,该装置分布索引信息产生单元基于存储区的构造产生系统构造信息和第二分布索引信息;和,新数据配置信息产生单元,该新数据配置信息产生单元基于由装置分布索引信息产生单元产生的系统构造信息和第二分布索引信息以及由第一分布索引信息获得单元获得的第一分布索引信息产生新数据配置信息,其中该新数据配置信息产生单元基于所产生的新数据配置信息将在数据存储装置中存储的数据存储到存储区中。根据本发明,提供了一种根据权利要求1所述的数据插入系统中的数据控制装置,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,该数据控制装置包括第一分布索引信息获得单元,该第一分布索引信息获得单元获得与在数据存储装置中存储的数据有关并且与在存储装置中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息,第一数据配置信息;构造信息请求单元,该构造信息请求单元从存储装置请求指示存储装置所具有的存储区的构造的系统构造信息,和指示存储装置的第二数据配置信息的第二分布索引信息;第二分布索引信息接收单元,该第二分布索引信息接收单元接收每一个均被构造信息请求单元请求的系统构造信息和第二分布索引信息;以及新数据配置信息产生单元,该新数据配置信息产生单元基于每一个均由第二分布索引信息接收单元接收的系统构造信息和第二分布索引信息,和由第一分布索引信息获得单元获得的第一分布索引信息来产生新数据配置信息,其中该新数据配置信息产生单元基于所产生的新数据配置信息将在数据存储装置中存储的数据存储到存储区中。根据本发明,提供了一种根据权利要求1所述的数据插入系统中的存储装置,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、 和选择从数据存储装置发送到存储装置的数据的数据控制装置,该存储装置包括存储数据的多个存储区;装置分布索引信息产生单元,该装置分布索引信息产生单元基于存储区的构造产生指示存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送单元,该装置分布索引信息发送单元将每一个均由装置分布索引信息产生单元产生的系统构造信息和第二分布索引信息发送到数据控制装置;新分布索引信息接收单元,该新分布索引信息接收单元接收由新数据配置信息产生单元产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定单元,该存储适用性确定单元基于由新分布索引信息接收单元接收的新分布索引信息确定将在数据存储装置中存储的数据存储到存储区中是否适用。根据本发明,提供了一种用于数据插入系统的数据插入方法,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,该方法包括第一分布索引信息获得步骤, 获得与在数据存储装置中存储的数据有关并且与在存储装置中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求步骤,从存储装置请求指示存储装置所具有的存储区的构造的系统构造信息,和指示存储装置的第二数据配置信息的第二分布索引信息;装置分布索引信息产生步骤,基于存储区的构造产生系统构造信息和第二分布索引信息;以及,新数据配置信息产生步骤,基于在装置分布索引信息产生步骤中产生的系统构造信息和第二分布索引信息和在第一分布索引信息获得步骤中获得的第一分布索引信息来产生新数据配置信息,其中,在新数据配置信息产生步骤中,基于所产生的新数据配置信息将在数据存储装置中存储的数据存储到存储区中。根据本发明,提供了一种用于根据权利要求1所述的数据插入系统中的数据控制装置的数据控制方法,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置, 该方法包括第一分布索引信息获得步骤,获得与在数据存储装置中存储的数据有关并且与在存储装置中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求步骤,从存储装置请求指示存储装置所具有的存储区的构造的系统构造信息,和指示存储装置的第二数据配置信息的第二分布索引信息;第二分布信息接收步骤,接收在构造信息请求步骤中请求的系统构造信息和第二分布索引信息;以及新数据配置信息产生步骤,基于每一个均在第二分布索引信息接收步骤中接收的系统构造信息和第二分布索引信息和在第一分布索引信息获得步骤中获得的第一分布索引信息来产生新数据配置信息,其中,在新数据配置信息产生步骤中,基于所产生的新数据配置信息将在数据存储装置中存储的数据存储到存储区中。根据本发明,提供了一种用于根据权利要求1所述的数据插入系统中的存储装置的数据存储方法,该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,该方法包括存储数据的多个存储区;装置分布索引信息产生步骤,基于存储区的构造产生指示存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送步骤,将在装置分布索引信息产生步骤中产生的系统构造信息和第二分布索引信息发送到数据控制装置;新分布索引信息接收步骤,接收在新数据配置信息产生步骤中产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定步骤,基于在新分布索引信息接收步骤中接收的新分布索引信息确定将在数据存储装置中存储的数据存储到存储区中是否适用。根据本发明,提供了一种数据控制程序,该数据控制程序使根据权利要求1所述的数据插入系统中的数据控制装置执行数据处理,其中该数据插入系统具有存储预定数据的数据存储装置、从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,以及提供了一种用于存储该数据控制程序的存储介质,该数据处理包括第一分布索引信息获得进程,获得与在数据存储装置中存储的数据有关并且与在存储装置中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求进程,从存储装置请求指示存储装置所具有的存储区的构造的系统构造信息,和指示存储装置的第二数据配置信息的第二分布索引信息;第二分布信息接收进程,接收在构造信息请求进程中请求的系统构造信息和第二分布索引信息;以及新数据配置信息产生进程,基于在第二分布索引信息接收进程中接收的系统构造信息和第二分布索引信息,和在第一分布索引信息获得进程中获得的第一分布索引信息来产生新数据配置信息,其中,在新数据配置信息产生进程中,基于所产生的新数据配置信息将在数据存储装置中存储的数据存储到存储区中。根据本发明,提供了一种数据存储程序,该数据存储程序使根据权利要求1所述的数据插入系统中的存储装置执行数据处理,该数据插入系统具有存储预定数据的数据存储装置、具有用于存储数据的多个存储区并且从数据存储装置接收数据的存储装置、和选择从数据存储装置发送到存储装置的数据的数据控制装置,以及提供了一种用于存储该数据存储程序的存储介质,该数据处理包括装置分布索引信息产生进程,基于存储区的构造产生指示存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送进程,将每一个均在装置分布索引信息产生进程中产生的系统构造信息和第二分布索引信息发送到数据控制装置;新分布索引信息接收进程,接收在新数据配置信息产生进程中产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定进程,基于在新分布索引信息接收进程中接收的新分布索引信息确定将在数据存储装置中存储的数据存储到存储区中是否适用。根据本发明,提供用于基于在备份存储装置中存储的数据的使用趋势将数据插入分布式数据存储递送系统中的一种数据插入系统、数据控制装置、存储装置、控制数据的方法、存储数据的方法、数据控制程序、数据存储程序,和存储所述程序的存储介质。附图简要说明根据在下面描述的优选示例性实施例和以下附图,本发明的上述目的和其它目的以及本发明的特征和优点将变得更加清楚。

图1是图示根据第一示例性实施例的数据插入系统的概略构造视图;图2是根据第一示例性实施例的存储控制器的硬件框图;图3是图示根据第一示例性实施例的数据配置信息的一个示例的图表;图4是图示在根据第一示例性实施例的数据插入系统的备份时的序列图的一个示例的图表;图5是图示在根据第一示例性实施例的数据插入系统的数据恢复操作时的序列图的一个示例的图表;图6是图示根据第一示例性实施例的数据插入系统的第一分布索引信息的一个示例的图表;图7是图示根据第一示例性实施例的数据插入系统的第二分布索引信息的一个示例的图表;图8是图示根据第二示例性实施例的数据插入系统的功能框图;图9是图示根据第二示例性实施例的利用哈希函数h(d)的节点分配操作的图表;图10是图示根据第二示例性实施例的节点分配表的图表;图11是图示根据第二示例性实施例的多个分配表的图表;图12是图示在根据第二示例性实施例的数据插入系统进行备份时的序列图的一个示例的图表;图13是图示在根据第二示例性实施例的数据插入系统的数据恢复操作时的序列图的一个示例的图表;图14是图示在根据第三示例性实施例的数据插入系统中的改变之前的节点分配表的一个示例的图表;以及图15是图示在根据第三示例性实施例的数据插入系统中的改变之后的节点分配表的一个示例的图表。
具体实施例方式[第一示例性实施例]在下文中,将参考附图描述本发明的示例性实施例。注意,在所有的图中,相同的构件由相同的附图标记表示,并且其详细解释将不再重复。图1是图示根据这个示例性实施例的数据恢复系统(数据插入系统)的概略构造视图。在图1中图示的数据恢复系统提供这样一种数据恢复系统,该数据恢复系统具有存储预定数据的备份存储(数据存储装置)2 ;从备份存储2接收数据的存储系统(存储装置)1 ;和,选择从备份存储2发送到存储系统1的数据的备份控制器(数据控制装置)3。该数据恢复系统包括第一分布索引信息获得单元311,该第一分布索引信息获得单元获得与在备份存储2中存储的数据有关并且与在存储系统1中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求单元312,该构造信息请求单元从存储系统1请求指示存储系统1所具有的盘驱动器(存储区)111到114的构造的系统构造信息,和指示存储系统1的第二数据配置信息的第二分布索引信息;装置分布索引信息产生单元1011,该装置分布索引信息产生单元基于盘驱动器111到114的构造产生系统构造信息和第二分布索引信息;以及,新数据配置信息产生单元314,该新数据配置信息产生单元基于由装置分布索引信息产生单元1011产生的系统构造信息和第二分布索引信息和由第一分布索引信息获得单元311获得的第一分布索引信息来产生新数据配置信息。 此外,新数据配置信息产生单元314基于所产生的新数据配置信息将在备份存储2中存储的数据存储到盘驱动器111到114中。如上所述,在这个示例性实施例中,新数据配置信息产生单元314基于系统构造信息、第二分布索引信息和第一分布索引信息产生新数据配置信息。此外,新数据配置信息产生单元314基于所产生的新数据配置信息将在备份存储2中存储的数据存储到盘驱动器 111到114中的存储区中。因此,利用这个示例性实施例,该数据恢复系统能够基于所产生的新数据配置信息将在备份存储2中存储的数据存储到盘驱动器111到114中。这使得数据恢复系统即使在当大量的数据被插入时也能够基于在备份存储2中存储的数据的使用趋势将在备份存储2中存储的数据恢复到存储系统1。应该指出,在这个示例性实施例中,与在备份存储2中存储的数据相结合地,将与在存储系统1中配置该存储的数据时的时间相关的第一数据配置信息视为包含使用趋势的信息是可能的。更加具体地,通过在产生新数据配置信息时反映第一数据配置信息,可以在进行备份时恢复优化的数据。如上所述,该数据恢复系统能够使用在备份存储2中存储的大部分第一分布索引信息来恢复存储系统1,由此可以以反映数据使用趋势的方式恢复存储系统1。应该注意,将在以后详细描述用作存储区的盘驱动器111到114和分布索引信息。备份控制器3具有第一分布索引信息获得单元311,该第一分布索引信息获得单元获得与在备份存储2中存储的数据有关并且与在存储系统1中配置该存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求单元312,该构造信息请求单元从存储系统1请求指示存储系统1所具有的盘驱动器(存储区)111到114的构造的系统构造信息,和指示存储系统1的第二数据配置信息的第二分布索引信息;第二分布索引信息接收单元313,该第二分布索引信息接收单元接收由构造信息请求单元312请求的系统构造信息和第二分布索引信息;新数据配置信息产生单元314,该新数据配置信息产生单元基于由第二分布索引信息接收单元313接收的系统构造信息和第二分布索引信息,和由第一分布索引信息获得单元311获得的第一分布索引信息来产生新数据配置信息。此外,新数据配置信息产生单元314基于所产生的新数据配置信息将在备份存储2中存储的数据存储到存储区中。存储系统1具有存储数据的盘驱动器111到114(多个存储区),并且包括装置分布索引信息产生单元1011,该装置分布索引信息产生单元基于盘驱动器111到114的构造产生指示存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送单元1012,该装置分布索引信息发送单元将由装置分布索引信息产生单元1011产生的系统构造信息和第二分布索引信息发送到备份控制器3 ;新分布索引信息接收单元1013,该新分布索引信息接收单元接收由新数据配置信息产生单元314产生的新数据配置信息作为新分布索引信息;和,存储适用性确定单元1014,该存储适用性确定单元基于由新分布索引信息接收单元1013接收的新分布索引信息确定将在备份存储2中存储的数据存储到盘驱动器111到114中是否适用。新数据配置信息产生单元314基于指示在盘驱动器111到114中配置数据时的相关性的关联信息产生维持在盘驱动器111到114中配置的数据的配置位置的至少一部分的新数据配置信息。利用这个示例性实施例中的这种构造,基于作为指示数据之间的相关性的关联信息并且包含在存储系统1中存储的配置信息的至少一部分的信息来产生新数据配置信息, 由此可以在反映使用趋势的同时恢复已经被最优地配置的数据。此外,基于所使用数据的类型的配置信息,作为执行重新组合(defragmentation)的结果而获得的数据的配置信息和其它配置信息能够被视为指示数据之间的相关性的关联信息的一种形式。此外,因为新数据配置信息产生单元314能够将指示数据之间的相关性的关联信息反映到新数据配置信息,因此可以在将顺序访问加以考虑并且实现盘驱动器111到114 的大部分性能的同时存储目标数据。注意,将在第三示例性实施例中详细描述指示数据之间的相关性的关联信息。存储适用性确定单元1014可以基于由新数据配置信息产生单元314产生的新数据配置信息和盘驱动器111到114中的每一个的存储容量来确定将在备份存储2中存储的数据存储到盘驱动器111到114中的适用性。在此情形中,因为新数据配置信息和盘驱动器111到114中的每一个的存储容量能够被加以考虑,因此可以在增强将数据存储到盘驱动器111到114中的可能性之后确定存储目标数据的适用性从而避免麻烦。存储系统1进一步具有备份接收单元1015,该备份接收单元接收对在盘驱动器 111到114中存储的数据进行备份的指令;数据发送输出单元1016,该数据发送输出单元在由备份接收单元1015接收到进行备份的指令时对在盘驱动器111到114中存储的数据进行复制,并且将所实现的副本发送到数据存储单元;以及,分布索引信息产生单元1017,该分布索引信息产生单元基于由数据发送输出单元1016发送的副本,产生在盘驱动器111到 114中配置数据时的数据配置信息作为第一分布索引信息。换言之,在这个示例性实施例中,存储系统1具有存储控制器101和盘驱动器111 到114。存储控制器101具有装置分布索引信息产生单元1011、装置分布索引信息发送单元1012、新分布索引信息接收单元1013、存储适用性确定单元1014,和备份接收单元1015。 此外,存储控制器101具有数据发送输出单元1016和分布索引信息产生单元1017。存储系统1通过存储控制器101连接到数据连接网络4和控制网络5。备份控制器3具有备份管理单元31和备份恢复单元32。备份管理单元31具有第一分布索引信息获得单元311、构造信息请求单元312、第二分布索引信息接收单元313和新数据配置信息产生单元314。此外,在备份控制器3中,备份管理单元31和备份恢复单元 32由未示出的中央处理单元(CPU)、存储器、程序存储区、网络连接功能等实现。
在图1中图示的数据恢复系统被连接到具有多个盘驱动器的备份存储2。备份存储2具有比存储系统1所具有的容量更大的容量。图2是存储控制器101的硬件框图。在图2中图示的存储控制器101具有掌握存储系统1的整个控制的CPU 6、暂时地存储数据的存储器7,和存储程序等的本地非易失性存储器8。此外,存储控制器101具有控制盘驱动器111到114的I/O控制器9,和用于连接到数据连接网络4或者控制网络5的网络控制器10。存储系统1的盘驱动器111到114中的每一个的数据配置信息均在存储控制器 101的存储器7和本地非易失性存储器8中存储。图3图示数据配置信息的一个示例。图3图示指示在存储器7中存储的数据配置信息的一个示例的数据配置信息表。 在这个示例性实施例中,以固定长度块为基础存储数据。术语块如在这里所使用地指的是通过将卷(volume)编号与相对块编号组合而在存储系统1中被唯一地识别的单位,利用所述相对块编号,块能够在卷编号中被唯一地识别。此外,块编号代表块的组合。在图3中图示的数据配置信息表是能够基于块编号从其提取所存储的盘驱动器的编号和盘驱动器上的数据位置的表。此外,安装了基于块编号提取盘驱动器的编号和在该编号盘驱动器上的数据位置的程序。如上所述,在这个示例性实施例中,数据配置信息包含块编号、盘驱动器编号和数据配置阵列作为分布索引信息。注意,在其中在备份存储2中存储数据的情形中,除了数据配置信息的块编号以外,还附带了指示备份的标识符。下面,将参考图4所示序列图对根据该示例性实施例的数据恢复系统的备份处理进行说明。在图4中图示的数据恢复系统的序列图中,备份管理单元31请求备份存储2准备进行备份(步骤Al)。这个准备请求包含备份识别名称,和作为备份源的盘驱动器111到 114的地址。备份存储2响应于包含备份识别名称和作为备份源的存储控制器101的地址的准备指令来准备接收数据(步骤A3)。这个准备例如包括产生网络接收端口,并且识别数据记录介质。在完成对备份的准备之后,备份存储2向备份管理单元31发送指示准备完成的通知(步骤A5)。备份管理单元31确定要被备份的数据,并且将要被备份的目标数据通知存储控制器101(步骤A7)。注意,要被备份的目标数据可以预先由备份管理单元31设定,或者所有数据都可以被确定为目标数据。此外,可以仅确定目标用户用作目标数据的量。存储控制器101从备份管理单元31接收通知,并且确定目标数据(步骤A9)。然后,存储控制器101通知备份管理单元31数据的确定完成(步骤All)。应该注意,关于从步骤Al到步骤All的处理,步骤Al和步骤A7可以被同时执行, 或者可以比从步骤Al到步骤A5的处理更早地执行从A7到All的处理。接着,在接收到存储控制器101和备份存储2完成备份的准备的通知时,备份管理单元31向存储控制器101发送开始备份的请求(步骤Al; )。在接收到开始备份的请求时, 存储控制器101将目标数据发送到备份存储2 (步骤A15)。在接收到要被备份的目标数据时,备份存储2记录并且存储所接收的数据(步骤 A17)。此时,备份存储2基于备份识别名称和块编号产生能够从其获得所接收的数据的存储位置的内部索引结构。然后,备份存储2记录内部索引结构。存储控制器101产生关于被发送到备份存储2的目标数据的分布索引信息(步骤 A19)。然后,存储控制器101将所产生的分布索引信息发送到备份存储2 (步骤A21)。在从存储控制器101接收到分布索引信息时,备份存储2将分布索引信息存储到盘驱动器中(步骤A23)。在完成目标数据向备份存储2的发送之后,存储控制器101向备份管理单元31和备份存储2发送指示完成了目标数据的发送的完成通知(步骤A25、A27)。在完成从存储控制器101接收目标数据;从存储控制器101接收分布索引信息;记录内部索引结构;和从存储控制器101接收完成通知之后,备份存储2向备份管理单元31发送指示备份完成的完成通知(步骤A29)。在从存储控制器101和备份存储2接收到完成通知时,备份管理单元31结束备份处理(步骤A31)。下面,将参考图5所示序列图描述根据这个示例性实施例的数据恢复系统的数据
恢复处理。在这个示例性实施例中,作为一个示例,假设在存储系统1中的盘驱动器112出现故障,替代故障盘驱动器112地插入具有相同性能的未示出的盘驱动器115,并且从备份存储2恢复备份数据。在图5所示数据恢复系统的序列图中,备份恢复单元32从备份存储2请求包含备份识别名称的分布索引信息(步骤Bi)。备份存储2从备份恢复单元32接收对包含备份识别名称的分布索引信息的请求(步骤B3)。备份存储2向备份恢复单元32发送与具有指定的备份识别名称的要被备份的目标数据有关的分布索引信息(第一分布索引信息)(步骤 B5)。接下来,备份恢复单元32从存储控制器101请求存储系统1的构造信息(步骤 B7)。存储控制器101对应于对构造信息的请求产生系统构造信息和分布索引信息(步骤 B9)。该系统构造信息包括例如盘驱动器的编号列表,和盘驱动器的容量值列表。注意, 将在第二示例性实施例中描述除了上述那些之外的项目。此外,关于分布索引信息,基于数据恢复系统的当前使用趋势产生第二分布索引信息。更加具体地,产生指示与在图3中图示的分布索引信息相对应的当前使用趋势的第二分布索引信息。存储控制器101向备份恢复单元32发送所产生的系统构造信息和所产生的第二分布索引信息(步骤Bll)。在接收到在步骤Bll中获得的第一分布索引信息、系统构造信息和第二分布索引信息时,备份恢复单元32产生反映这些信息项的新分布索引信息(在下文中,被称作新分布索引信息),并且对第一分布索引信息进行改变(步骤B13)。基于在备份存储2中存储的第一分布索引信息产生新分布索引信息,使得新分布索引信息的至少一部分包含第一分布索引信息。在这个示例性实施例中,这使得可以反映第一分布索引信息。将参考图6和图7描述这个示例。图6图示第一分布索引信息的一部分。图7图示第二分布索引信息的一部分。备份恢复单元32基于第一分布索引信息、系统构造信息和第二分布索引信息产生新分布索引信息。通过在图6和图7之间进行比较,与在图6中图示的第一分布索引信息中的盘驱动器编号相比,在图7中图示的第二分布索引信息中的盘驱动器编号在给定块编号中不同。更加具体地,这个比较指示在图7中的盘驱动器115是被从图6中的盘驱动器112改变得来的。在其它盘驱动器中的数据位置相同。因为盘驱动器112被移除并且盘驱动器115被添加,所以产生新分布索引信息从而在第一分布索引信息中指示盘驱动器112的所有部分在新分布索引信息中均被改变为盘驱动器115。因此,利用这种新分布索引信息,可以在除了盘驱动器115之外的驱动器中反映过去的使用趋势。然后,备份恢复单元32向存储控制器101发送通过对第一分布索引信息进行改变而产生的新分布索引信息(步骤B15)。利用这种构造,在备份数据时已经在同一盘驱动器中在数据配置位置中配置的数据甚至能够在新数据配置位置中被定位到同一盘驱动器,由此可以维持顺序访问性能。应该注意,作为示例描述了第一分布索引信息和第二分布索引信息,并且这个示例性实施例不限于此。存储控制器101获得所产生的新分布索引信息,比较盘驱动器111、113、114和115 的当前状态,并且确定存储的适用性(步骤B17)。如果盘驱动器适用于存储,则存储控制器 101向备份恢复单元32发送指示存储可能的响应。在另一方面,如果盘驱动器不适用于存储,则存储控制器101向备份恢复单元32发送指示存储不可能的响应(步骤B19)。应该注意,例如在以下情形中数据不能被存储,其中由于CPU的处理负荷引起在访问数据时发生时间限制,或者由于未在系统构造信息中包含的存储装置的物理限制或者其它因素而使得对数据的访问不可能。在从存储控制器101接收到指示存储可能的响应时,备份恢复单元32向备份存储 2发送新分布索引信息,在该新分布索引信息中已经从第一分布索引信息进行改变(步骤 B21)。备份存储2基于新分布索引信息向存储控制器101发送目标数据(步骤B23)。存储控制器101基于在被改变的分布索引信息中的盘驱动器编号将块存储到对应的盘驱动器111、113、114和115中的任何一个中(步骤B2Q。存储控制器101将存储盘的位置反映到最近的分布索引信息。在发送要被备份的所有目标数据之后,备份存储2向存储控制器101发送指示数据的发送完成的完成通知(步骤B27)。然后,在从备份存储2接收到完成通知时,存储控制器101记录要被备份的所有目标数据,并且此后,向备份恢复单元32发送完成通知(步骤 B29)。此外,备份存储2向备份恢复单元32发送指示要被备份的所有目标数据均被发送的完成通知(步骤B31)。在从存储控制器101和备份存储2接收到完成通知时,备份恢复单元32确定备份恢复处理完成,并且结束该处理(步骤B33)。如上所述,在第一示例性实施例中的数据恢复系统中,能够基于所产生的新分布索引信息将在备份存储2中存储的数据存储到盘驱动器111到114中。这使得数据恢复系统即使在插入大量数据时也可以基于数据的使用趋势将在备份存储2中存储的数据恢复到存储系统1。
[第二示例性实施例]图8是图示根据本发明的第二示例性实施例的数据恢复系统的功能框图。在图8 中图示的数据恢复系统涉及一种用于备份和恢复在存储系统12中存储的数据的系统。在存储系统12中存储的数据在备份存储15中被备份。然后,在备份存储15中备份的数据被恢复到其构造已经被改变的存储系统12。存储系统1进一步具有数据接收单元1018,其接收从备份存储2发送的数据作为将被存储到盘驱动器111到114中的数据,和复制分配单元1019,其产生与由数据接收单元 1018接收的每一个数据有关的冗余数据以将所产生的冗余数据存储到盘驱动器111到114 中的每一个。存储系统1进一步具有静止点产生单元1020,其与在盘驱动器111到114中存储的数据相关地产生在预定时间点的静止点信息。数据发送输出单元1016,其基于由静止点产生单元1020产生的静止点信息向备份存储2发送在盘驱动器111到114中存储的数据。存储系统12由存储节点121到IM形成,所述存储节点是计算机。存储节点121 到IM中的每一个均具有CPU、存储器、盘驱动器和网络控制器。因此,存储节点121到IM 中的每一个均用作在盘驱动器中存储数据的数据存储装置。图8中的分布管理过程单元121a到12 是在各存储节点121到124上运行的程序。此外,通过网络13,分布管理过程单元121a到12 中的每一个交换关于在每一个存储节点的存储单元121c到12 中的每一个之中存储的数据的访问信息。利用存储系统12 的这种构造,使得存储节点121到124的存储单元121c到12 被感受为好像它们是一个文件服务器。静止点产生过程单元121b到124b是在各存储节点121到124上运行的程序,并且每一个产生遍布所存储的数据一致的快照图像。静止点产生过程单元121b到124b记录所存储的数据的当前版本,在接收到产生静止点的指令时产生静止点编号,并且产生将该版本与该静止点相关联的数据。然后,当对数据的访问发生时,静止点产生过程单元121b 到124b产生相对于产生静止点时的版本的数据的差分数据,并且更新数据的版本号。存储系统12被如此构造,使得存储节点121到124能够连接到网络13,并且分布管理过程单元121a到12 能够相互间发送和接收数据。此外,存储系统12通过网络13连接到备份存储15。备份存储15具有盘驱动器151和备份文件服务器功能。备份文件服务器功能是包括CPU、存储器、程序存储区和网络连接功能的计算机。更加具体地,备份文件服务器功能具有备份资源管理单元152的功能、备份管理单元153的功能,和备份恢复单元154的功能。备份资源管理单元152管理在盘驱动器151 上的数据输入和输出。备份管理单元153控制数据的备份操作。备份恢复单元IM控制备份数据到系统的恢复。针对存储节点的数据配置由在存储节点上运行的分布管理过程单元121a到12 确定。分布管理过程单元121a到12 每一个具有响应于特定字节列d而输出特定整数值的哈希函数h(d)和基于从哈希函数输出的范围的节点分配表。图9是图示利用哈希函数h(d)的节点分配操作的图表。在接收到包含具有特定长度的数据(文件)的存储请求时,该数据(文件)是文件名,存储系统12将所接收的数据分割成具有由分布管理过程确定的固定长度的多个数据片段(数据块)。连续数据块标识符被附于相应的数据块,并且通过添加文件名和数据块标识符获得的数值被输入哈希函数h(d)。然后,基于输出的哈希值,参考节点分配表确定用于存储数据的节点。图10是图示节点分配表的一个示例的图表。基于输出的哈希值由复制保持节点编号确定用于存储数据的数据存储节点。然后,目标数据作为主数据被传送到用于存储数据的节点。同时,分布管理过程从基于复制分配表确定的、用于存储数据的节点当中确定复制保持节点。然后,分布管理过程将相同数据作为复制数据发送到复制保持节点。图11是图示复制分配表的一个示例的图表。基于在图11中图示的复制分配表, 对应于初级数据保持节点编号的节点的数据作为复制数据被发送到对应于复制数据保持节点编号的节点。分布管理过程具有输出哈希函数程序、节点分配表和复制分配表作为部分分布索引信息的功能。应该注意,这个示例性实施例不限于此,并且例如,可能可以采用这样一种构造, 其中通过对预定数目数据块中的数据进行异或产生的奇偶数据被用作冗余数据,并且类似于复制数据地使用分配表来管理该冗余数据。下面,将参考图12中的序列图描述根据这个示例性实施例的数据恢复系统的备份过程。在图12中图示的数据恢复系统的序列图中,备份管理单元153请求备份资源管理单元152准备进行备份(步骤Cl)。该准备请求包含备份识别名称,和作为备份源的存储节点121到124的地址。备份资源管理单元152响应于包含备份识别名称和作为备份源的存储控制101的地址的准备指令而准备接收数据(步骤C3)。这个准备例如包括产生网络接收端口和识别数据记录介质。在完成备份准备之后,备份资源管理单元152向备份管理单元153发送指示准备完成的通知(步骤C5)。备份管理单元153向存储节点121到124中的任何一个发出进行备份的指令。注意,在这个示例性实施例中,假设向存储节点121发出进行备份的指令。接收该指令的存储节点121的分布管理过程单元121a变为主分布管理过程单元121a (步骤C7)。主分布管理过程单元121a向存储节点121到124的所有静止点产生过程单元 121b到124b发出产生静止点的指令(步骤C9)。静止点产生过程单元121b到124b的每一个基于分布快照产生算法在全部存储节点121到IM上逻辑一致的点处产生快照图像(步骤 C 11)。静止点产生过程单元121b到124b的每一个向主分布管理过程单元121a发送所产生的快照图像的编号(在下文中,被称作快照编号)(步骤C13)。在接收到所有快照编号时,主分布管理过程单元121a向所有分布管理过程单元 121a到12 发送开始用于将主数据传送到备份资源管理单元152的备份的请求(步骤 C15)。上述术语“主数据”指的是不是其它节点中的主数据的复制数据的数据。在接收到开始备份的请求时,分布管理过程单元121a到12 每一个将主数据发送到备份资源管理单元152 (步骤C17)。在从分布管理过程单元121a到12 接收到主数据时,备份资源管理单元152存储所接收的主数据(步骤C19)。在完成存储节点121到124的所有快照图像上的主数据的发送之后,分布管理过程单元121a到12 向主分布管理过程单元121a发送指示主数据的发送完成的完成通知 (步骤C21)。类似地,分布管理过程单元121a到12 向备份资源管理单元152通知主数据的发送完成(步骤C23)。主分布管理过程单元121a向分布管理过程单元121a到12 发送用于产生部分分布索引信息的请求(步骤C2Q。分布管理过程单元121a到12 中的每一个产生存储节点121到124中的每一个的部分分布索引信息(步骤C27)。分布管理过程单元121a到 124a向主分布管理过程单元121a发送所产生的部分分布索引信息(步骤C29)。术语“部分分布索引信息”在本说明书中指的是上述哈希函数程序、节点分配表和多个分配表。主分布管理过程单元121a基于存储节点121到124中的每一个的部分分布索引信息产生一条分布索引信息(步骤C31)。主分布管理过程单元121a将所产生的分布索引信息与哈希函数程序一起发送到备份资源管理单元152 (步骤C33)。在向备份资源管理单元152发送所产生的分布索引信息之后,主分布管理过程单元121a向备份资源管理单元152发送指示备份完成的完成通知(步骤C3Q。主分布管理过程单元121a还向备份管理单元153发送指示备份完成的完成通知(步骤C37)。在从主分布管理过程单元121a接收到分布索引信息时,备份资源管理单元152存储分布索引信息(步骤C39)。然后,备份资源管理单元152向备份管理单元153发送指示备份接收完成的完成通知(步骤C41)。在从主分布管理过程单元121a和备份资源管理单元152获得完成通知时,备份管理单元153结束备份操作(步骤C43)。下面,将参考图13中的序列图描述根据这个示例性实施例的数据恢复系统的数据恢复过程。在这个示例性实施例中,作为一个示例,假设上述备份数据被恢复从而处于其中在存储系统12中插入具有类似于存储节点121到124的性能的存储节点125的状态中。备份恢复单元154向存储节点121到IM中的任何一个发送准备接收备份的指令 (步骤Dl)。这里,例如假设备份恢复单元154向存储节点121发送准备接收备份的指令。 备份恢复单元巧4从备份资源管理单元152请求分布索引信息(步骤D3)。在接收到准备接收备份的指令时,存储节点121成为主分布管理过程单元121a。 在完成接收备份的准备之后,主分布管理过程单元121a发送接收备份的准备完成的通知作为响应(步骤D5)。主分布管理过程单元121a从所有分布管理过程单元121a到12 请求存储节点地址列表、盘驱动器的相对性能值列表、相对容量值列表、节点分配表和复制分配表(步骤 D7)。分布管理过程单元121a到12 每一个提取存储节点地址列表、盘驱动器的相对性能值列表、相对容量值列表、节点分配表和复制分配表。此外,分布管理过程单元121a到 12 每一个提取其索引信息(步骤D9)。注意存储节点地址列表、盘驱动器的相对性能值列表、相对容量值列表、节点分配表和复制分配表被定义为性能信息。分布管理过程单元121a到12 每一个将所提取的性能信息和所提取的索引信息发送到主分布管理过程单元121a(步骤Dll)。注意索引信息指的是在图3中图示的数据配
直fe息。主分布管理过程单元121a基于所获得的性能信息产生系统构造信息。此外,主分布管理过程单元121a基于所获得的索引信息产生在此情形中对应于第二分布索引信息的分布管理信息(步骤D13)。主分布管理过程单元121a向备份恢复单元巧4发送所产生的系统构造信息和第二分布产生信息(步骤DM)。此外,主分布管理过程单元121a接收从备份资源管理单元 152发送并且在此情形中对应于第一分布索引信息的分布索引信息(步骤D17)。备份恢复单元IM基于从主分布管理过程单元121a接收的系统构造信息和第二分布索引信息,和从备份资源管理单元152接收的第一分布索引信息来重新产生分布索引信息(步骤D19)。这里,例如以下述方式产生该重新产生的分布索引信息,换言之对应于新分布索引信息的重新产生的分布索引信息。在该示例中,在非常注重对特定数据的并行访问性能的算法中,数据数量的分布接近于存储大小的比,并且,在备份之前在同一存储节点中存储的数据被尽可能地存储在同一存储节点中。首先,从在备份时的部分分布索引信息中提取哈希函数h(d)和节点分配表。然后,基于节点分配表,产生在备份时的存储节点地址列表。例如,可以基于在图10中图示的节点分配表中的复制保持节点编号产生存储节点地址列表。接着,在图9和图10中图示的哈希值范围被改变。例如,哈希函数h(d)的数值范围被分割。这里,进行该分割使得分割的各范围的宽度的比等于系统构造信息的相对容量值列表的比。然后,节点分配表被更新从而与相对容量值列表的比相等。例如,由于添加了存储节点125的事实,分布索引信息的节点分配表被更新,并且,在添加存储节点125之前每一个均被相等地分配到存储节点121到124的哈希值的分配范围被相等地分配到存储节点121到125。注意,如上所述,由于存储节点121到125的改变而引起的分配的改变还被视为因为反映使用趋势而进行的改变。利用这种构造,备份恢复单元IM能够改变第一分布索引信息,并且产生新分布索引信息。此外,备份恢复单元巧4将新分布索引信息传送到主分布管理过程单元121a (步骤D21)。应该注意,分布索引信息的改变不限于在这个示例性实施例中描述的改变。例如, 如在第一示例性实施例中描述地,在节点分配表中的节点编号在这个示例性实施例中可以被改变。在此情形中,强调对数据的顺序访问是可能的。在接收到新分布索引信息时,类似于在步骤B17中的情形,主分布管理过程单元 121a针对当前分布索引信息的状态确定关于是否能够存储已经被改变的新分布索引信息的适用性(步骤D23)。如果存储是适用的,则主分布管理过程单元121a向备份恢复单元巧4发送指示存储可能的响应。在另一方面,如果存储不适用,则主分布管理过程单元121a 向备份恢复单元巧4发送指示存储不可能的响应(步骤D25)。在从主分布管理过程单元121a接收到指示存储可能的响应时,备份恢复单元巧4 向备份资源管理单元152发送新分布索引信息(步骤D27)。在接收到新分布索引信息时,备份资源管理单元152基于所接收的新分布索引信息向作为存储目的地的存储节点121到 1 发送来自盘驱动器151的目标数据(步骤D29)。在接收到要被存储的数据时,存储节点121到IM存储目标数据。同时,分布管理过程单元121a到12 基于复制分配表确定用于数据的复制存储节点,并且产生数据的副本。然后,分布管理过程单元121a到12 向复制存储节点发送所产生的数据的副本。用于存储副本的存储节点存储从备份存储15发送的主数据和从其它存储发送的数据的副本 (步骤D31)。在完成发送要被备份的所有目标数据之后,备份资源管理单元152发送指示到备份恢复单元154的数据发送完成的完成通知(步骤D33)。此外,在完成记录要被备份所有目标数据之后,存储节点121到124向备份恢复单元IM发送指示数据恢复完成的完成通知(步骤D35)。在从分布管理过程单元121a到12 和备份资源管理单元152接收到完成通知时,备份恢复单元154结束从备份恢复数据的过程(步骤D37)。如上所述,在第二示例性实施例中,即使在其中存储节点121到IM通过网络而被相互连接的情形中,数据恢复系统也能够通过使用快照而在静止点处进行备份。利用这种构造,在这个示例性实施例中,基于使用趋势对通过网络连接的存储节点进行备份是可能的。此外,在这个示例性实施例中,能够以下述方式恢复基于使用趋势实现的备份数据,该方式即,基于在通过网络连接的存储节点121到124中的使用趋势来配置数据。[第三示例性实施例]第三示例性实施例具有这样的构造,其中除了在第二示例性实施例中的分布索引信息之外,在数据备份时还获得数据使用趋势信息。在第三示例性实施例中的步骤C31中,在从分布管理过程单元121a到12 接收到节点分配表、复制分配表和哈希函数程序时,主分布管理过程单元121a产生第二分布索引信息。此外,主分布管理过程单元121a从分布管理过程单元121a到12 收集关于每一个数据的同时使用频率信息,并且产生数据使用频率信息。然后,主分布管理过程单元121a向备份恢复单元巧4发送所产生的第二分布索引信息和所产生的数据使用频率信息。这里,同时使用频率信息可以例如是通过基于在特定时段内最近的数据访问的访问日志来提取相关规则而获得的频率模式。更加具体地,存储节点123中的数据和存储节点124中的数据每一个均通过分割大的数据而获得,并且对存储节点123的访问和对存储节点124的访问必定被同时执行。注意这种关系被作为指示基于使用趋势的数据之间的相关性的关联信息对待。在此情形中,在步骤D19中,备份恢复单元IM基于给定系统构造信息和所存储的数据使用频率信息来改变分布索引信息的节点分配表。例如,图14图示在产生备份时存储节点123的分布索引信息的一个示例。在图14 中,哈希值范围与复制保持节点编号(121到124)相关联。当添加了存储节点125时,系统构造信息被改变。此外,在数据使用频率信息中, 存储节点123中的数据和存储节点124中的数据这两者被同时使用,并且因此,在步骤D19 中,分布索引信息的节点分配表被改变。更加具体地,每一个均已被相等地分配到存储节点121和123的哈希值的分配范围被改变从而被相等地分配到存储节点121、122和125。图15图示在改变之后的节点分配表。存储节点123和存储节点124被同时使用, 并且因此,在数据配置信息中,在维持存储节点123和存储节点124之间的关系时,存储节点121、122和125被相等地分割。在恢复数据时,基于该数据配置信息产生新分布索引信息,并且从备份存储15到存储系统12执行数据恢复,由此基于使用趋势配置数据是可能的。如上所述,在第三示例性实施例中,数据恢复系统能够基于数据使用频率信息改变节点分配表,并且能够改变节点分配表从而与其中存储节点被改变的系统构造信息相对应。利用这种构造,根据第三示例性实施例的数据恢复系统能够以将数据使用趋势反映到系统构造信息的方式将在备份存储15中存储的备份数据恢复到存储系统12。已经参考附图对本发明的示例性实施例进行了说明。然而,这些示例性实施例仅仅是示例性的形式,并且采用除了上述构造之外的不同构造也是可能的。例如,已经通过作为存储区的一个示例给出盘驱动器111到114描述了第一示例性实施例,但是这个示例性实施例不限于此。例如,存储区可以是硬盘驱动器、动态随机存取存储器(DRAM)、非易失性半导体存储器(闪速存储器、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FeRAM)等。此外,存储区可以是能够记录数据的物理介质诸如磁带和被集成到独立冗余盘阵列(RAID)控制器中的一个或者多个上述介质。此外,可以采用这样一种构造,其中这些介质被放置在存储节点外部,并且控制器进行控制从而能够将数据记录到介质中,并且可能能够组合这些介质和/或构造。在第一到第三示例性实施例中,虽然备份过程和数据恢复过程被分开地执行,但是本示例性实施例不限于此。例如,在第一到第三示例性实施例中,可能能够同时地执行备份过程和数据恢复过程。在此情形中,因为当数据恢复过程开始时,备份过程能够同时地开始,所以获得另一备份数据是可能的。利用这种构造,备份过程和数据恢复过程被同时执行,由此替代备份数据是可能的。应该注意,仅仅有必要的是,在本示例性实施例中的构成元件被以能够实现它们自身的功能的方式构造。例如,可以采用提供预定功能的专用硬件,或者通过计算机程序向其提供预定功能的备份控制器3或者存储系统1。此外,例如可以通过计算机程序实现的备份控制器3或者存储系统1的预定功能或者它们之中的任何一个的组合实现这些构成元件。此外,将本示例性实施例中的构成元件构造为独立单元不是必要的。例如,可能能够采用这样一种构造,其中多个构成元件被形成为一个装置;一个构成元件由多个装置形成;一个构成元件形成其它构成元件的一部分;和,一个构成元件的一部分与其它构成元件的一部分重叠。此外,对于示例性实施例中的备份过程和数据恢复过程,以顺序方式描述了多个步骤。然而,所描述的次序并不是必要地限制执行多个步骤的次序。因此,在执行根据本示例性实施例的方法时,能够在不会不利地影响其内容的程度上改变多个步骤的次序。此外,在根据示例性实施例的上述方法中的多个步骤不限于以不同的时序被执行。因此,例如可以采用这样一种构造,其中在当一个步骤正在被执行时的时间期间,其它步骤发生;或者,执行一个步骤的时序部分地或者完全地与执行另一步骤的时序重叠。例如,在数据恢复过程中,在步骤B7中请求构造信息、在步骤B9中产生构造信息、 在步骤Bll中的系统构造信息和在步骤B13中改变分布索引信息的次序不限于在第一示例性实施例中描述的次序。更加具体地,可以以任何时序周期地产生系统构造信息,并且在接收到对构造信息的请求时,发送所产生的最近的系统构造信息。此外,可以例如利用能够发送/接收数据的信息处理装置实现本示例性实施例中的存储系统1和备份控制器3。此外,例如可以通过利用通用装置诸如CPU、只读存储器 (ROM)、随机存取存储器(RAM)和接口(I/F)单元;被配置成能够执行预定信息处理的专用逻辑电路;及其组合配置的硬件来实现存储系统1和备份控制器3。本申请要求基于在日本于2009年3月30日提交的日本专利申请No. 2009_083似6 的优先权,其全部公开在此通过引用被并入。
权利要求
1.一种数据插入系统,包括存储预定数据的数据存储装置;从所述数据存储装置接收数据的存储装置;以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述数据插入系统包括第一分布索引信息获得单元,所述第一分布索引信息获得单元获得与所述数据存储装置中所存储的数据有关并且与在所述存储装置中配置所述存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求单元,所述构造信息请求单元从所述存储装置请求指示所述存储装置所具有的存储区的构造的系统构造信息,和指示所述存储装置的第二数据配置信息的第二分布索引信息;装置分布索引信息产生单元,所述装置分布索引信息产生单元基于所述存储区的构造产生所述系统构造信息和所述第二分布索引信息;以及新数据配置信息产生单元,所述新数据配置信息产生单元基于由所述装置分布索引信息产生单元产生的所述系统构造信息和所述第二分布索引信息以及由所述第一分布索引信息获得单元获得的所述第一分布索引信息来产生新数据配置信息,其中所述新数据配置信息产生单元基于所产生的新数据配置信息将所述数据存储装置中所存储的数据存储到所述存储区中。
2.根据权利要求1所述的数据插入系统,其中所述新数据配置信息产生单元基于指示在所述存储装置中配置数据时的相关性的关联信息来产生新数据配置信息,所述新数据配置信息维持在所述存储装置中配置的数据的配置位置的至少一部分。
3.根据权利要求1或2所述的数据插入系统,进一步包括存储适用性确定单元,所述存储适用性确定单元确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
4.根据权利要求3所述的数据插入系统,其中所述存储适用性确定单元基于由所述新数据配置信息产生单元产生的所述新数据配置信息和所述存储区的存储容量来确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
5.根据权利要求1到4中任何一项所述的数据插入系统,进一步包括数据接收单元,所述数据接收单元接收从所述数据存储装置发送的数据作为将被存储在所述存储区中的数据,以及,复制分配单元,所述复制分配单元用于产生与由所述数据接收单元接收的数据有关的冗余数据,并且将所产生的冗余数据存储到所述存储区中。
6.一种根据权利要求1所述的数据插入系统中的数据控制装置,所述数据插入系统包括存储预定数据的数据存储装置,接收来自所述数据存储装置的数据的存储装置,以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述数据控制装置包括第一分布索引信息获得单元,所述第一分布索引信息获得单元获得与所述数据存储装置中所存储的数据有关并且与在所述存储装置中配置所述存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求单元,所述构造信息请求单元从所述存储装置请求指示所述存储装置所具有的存储区的构造的系统构造信息,和指示所述存储装置的第二数据配置信息的第二分布索引信息;第二分布索引信息接收单元,所述第二分布索引信息接收单元接收每一个均被所述构造信息请求单元请求的所述系统构造信息和所述第二分布索引信息;以及新数据配置信息产生单元,所述新数据配置信息产生单元基于每一个均由所述第二分布索引信息接收单元接收的所述系统构造信息和所述第二分布索引信息以及由所述第一分布索引信息获得单元获得的所述第一分布索引信息来产生新数据配置信息,其中所述新数据配置信息产生单元基于所产生的新数据配置信息将所述数据存储装置中所存储的数据存储到所述存储区中。
7.一种根据权利要求1所述的数据插入系统中的存储装置,所述数据插入系统包括存储预定数据的数据存储装置,接收来自所述数据存储装置的数据的存储装置,以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述存储装置包括用于存储数据的多个存储区;装置分布索引信息产生单元,所述装置分布索引信息产生单元基于所述存储区的构造产生指示所述存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送单元,所述装置分布索引信息发送单元将每一个均由所述装置分布索引信息产生单元产生的所述系统构造信息和所述第二分布索引信息发送到所述数据控制装置;新分布索引信息接收单元,所述新分布索引信息接收单元接收由新数据配置信息产生单元产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定单元,所述存储适用性确定单元基于由所述新分布索引信息接收单元接收的所述新分布索引信息确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
8.根据权利要求7所述的存储装置,其中所述新数据配置信息是基于指示在所述存储装置中配置数据时的相关性的关联信息的信息,该信息维持在所述存储装置中配置的数据的配置位置的至少一部分。
9.根据权利要求7或8所述的存储装置,其中所述存储适用性确定单元基于由所述新数据配置信息产生单元产生的所述新数据配置信息和所述存储区的存储容量确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
10.根据权利要求7到9中任何一项所述的存储装置,进一步包括数据接收单元,所述数据接收单元接收从所述数据存储装置发送的数据作为将被存储在所述存储区中的数据,以及,复制分配单元,所述复制分配单元产生与由所述数据接收单元接收的数据有关的冗余数据,并且将所产生的冗余数据存储到所述存储区中。
11.根据权利要求7到10中任何一项所述的存储装置,进一步包括备份接收单元,所述备份接收单元接收产生所述存储区中所存储的数据的备份的指令;数据发送输出单元,所述数据发送输出单元在所述备份接收单元接收到产生备份的指令时产生所述存储区中所存储的数据的副本,并且将所产生的副本发送到所述数据存储装置;以及,分布索引信息产生单元,所述分布索引信息产生单元基于由所述数据发送输出单元发送的副本产生在所述存储区中配置数据时的数据配置信息作为所述第一分布索引信息。
12.根据权利要求11所述的存储装置,进一步包括静止点产生单元,所述静止点产生单元针对所述存储区中所存储的数据产生特定时间点的静止点信息,其中所述数据发送输出单元基于由所述静止点产生单元产生的所述静止点信息向所述数据存储装置发送所述存储区中所存储的数据。
13.一种用于根据权利要求1所述的数据插入系统的数据插入方法,所述数据插入系统包括存储预定数据的数据存储装置,从所述数据存储装置接收数据的存储装置,以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述方法包括第一分布索引信息获得步骤,获得与所述数据存储装置中所存储的数据有关并且与在所述存储装置中配置所述存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求步骤,从所述存储装置请求指示所述存储装置所具有的存储区的构造的系统构造信息,和指示所述存储装置的第二数据配置信息的第二分布索引信息;装置分布索引信息产生步骤,基于所述存储区的构造产生所述系统构造信息和所述第二分布索引信息;以及,新数据配置信息产生步骤,基于在所述装置分布索引信息产生步骤中产生的所述系统构造信息和所述第二分布索引信息以及在所述第一分布索引信息获得步骤中获得的所述第一分布索引信息产生新数据配置信息,其中,在所述新数据配置信息产生步骤中,基于所产生的新数据配置信息将所述数据存储装置中所存储的数据存储到所述存储区中。
14.一种用于根据权利要求1所述的数据插入系统中的数据控制装置的数据控制方法,所述数据插入系统包括存储预定数据的数据存储装置、从所述数据存储装置接收数据的存储装置、以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置, 所述方法包括第一分布索引信息获得步骤,获得与所述数据存储装置中所存储的数据有关并且与在所述存储装置中配置所述存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求步骤,从所述存储装置请求指示所述存储装置所具有的存储区的构造的系统构造信息,和指示所述存储装置的第二数据配置信息的第二分布索引信息;第二分布信息接收步骤,接收在所述构造信息请求步骤中请求的所述系统构造信息和所述第二分布索引信息;以及新数据配置信息产生步骤,基于每一个均在所述第二分布索引信息接收步骤中接收的所述系统构造信息和所述第二分布索引信息以及在所述第一分布索引信息获得步骤中获得的所述第一分布索引信息来产生新数据配置信息, 其中,在所述新数据配置信息产生步骤中,基于所产生的新数据配置信息将所述数据存储装置中所存储的数据存储到所述存储区中。
15.一种用于根据权利要求1所述的数据插入系统中的存储装置的数据存储方法,所述数据插入系统包括存储预定数据的数据存储装置、从所述数据存储装置接收数据的存储装置、以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述方法包括存储数据的多个存储区;装置分布索引信息产生步骤,基于所述存储区的构造产生指示所述存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送步骤,将在所述装置分布索引信息产生步骤中产生的所述系统构造信息和所述第二分布索引信息发送到所述数据控制装置;新分布索引信息接收步骤,接收在新数据配置信息产生步骤中产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定步骤,基于在所述新分布索引信息接收步骤中接收的所述新分布索引信息确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
16.一种用于存储数据控制程序的存储介质,所述数据控制程序使根据权利要求1所述的数据插入系统中的数据控制装置执行数据处理,所述数据插入系统包括存储预定数据的数据存储装置、从所述数据存储装置接收数据的存储装置、以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述数据处理包括第一分布索引信息获得进程,获得与所述数据存储装置中所存储的数据有关并且与在所述存储装置中配置所述存储的数据时的时间相关的第一数据配置信息作为第一分布索引信息;构造信息请求进程,从所述存储装置请求指示所述存储装置所具有的存储区的构造的系统构造信息,和指示所述存储装置的第二数据配置信息的第二分布索引信息;第二分布信息接收进程,接收在所述构造信息请求进程中请求的所述系统构造信息和所述第二分布索引信息;以及新数据配置信息产生进程,基于在所述第二分布索引信息接收进程中接收的所述系统构造信息和所述第二分布索引信息以及在所述第一分布索引信息获得进程中获得的所述第一分布索引信息来产生新数据配置信息, 其中,在所述新数据配置信息产生进程中,基于所产生的新数据配置信息将所述数据存储装置中所存储的数据存储到所述存储区中。
17.一种用于存储数据存储程序的存储介质,所述数据存储程序使根据权利要求1所述的数据插入系统中的存储装置执行数据处理,所述数据插入系统包括存储预定数据的数据存储装置、具有多个用于存储数据的存储区并且从所述数据存储装置接收数据的所述存储装置、以及选择从所述数据存储装置发送到所述存储装置的数据的数据控制装置,所述数据处理包括装置分布索引信息产生进程,基于所述存储区的构造产生指示所述存储区的构造的系统构造信息和指示预定数据配置信息的第二分布索引信息;装置分布索引信息发送进程,将在所述装置分布索引信息产生进程中产生的所述系统构造信息和所述第二分布索引信息发送到所述数据控制装置;新分布索引信息接收进程,接收在新数据配置信息产生进程中产生的新数据配置信息作为新分布索引信息;以及,存储适用性确定进程,基于在所述新分布索引信息接收进程中接收的所述新分布索引信息确定将所述数据存储装置中所存储的数据存储到所述存储区中是否适用。
全文摘要
一种数据插入系统具有存储系统(1)、备份存储(2)和备份控制器(3)。该数据插入系统具有获得与在存储系统(1)中的配置有关的第一分布索引信息的第一分布索引信息获得单元(311);从存储系统(1)请求指示盘驱动器(111到114)的构造的系统构造信息和存储系统(1)的第二分布索引信息的构造信息请求单元(312);产生系统构造信息和第二分布索引信息的装置分布索引信息产生单元(1011);以及,基于所产生的系统构造信息、所产生的第二分布索引信息和第一分布索引信息来产生新数据配置信息的新数据配置信息产生单元(314)。
文档编号G06F3/06GK102349047SQ20108001158
公开日2012年2月8日 申请日期2010年3月9日 优先权日2009年3月30日
发明者小林大 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1