一种可与主计算机装置以及多个被控制的存储装置共同操作的存储控制器,包括:主机写组件,其可操作地将数据对象写到多个被控制的存储装置中的一个处的源数据对象;拷贝组件,其响应一元数据状态,并且可操作地控制将所述数据映像拷贝到所述多个被控制的存储装置处的级联中的数据映像的定界序列内的目标数据映像;和代替组件,其响应对包含所述目标数据映像的盘的离线状态的检测,并且可操作地控制代替包含所述目标数据映像的所述盘的代替盘的替代。
【技术实现步骤摘要】
本专利技术涉及计算机存储系统领域,并且更具体地涉及提供FlashCopy(R)功能或等同物的高级功能存储系统(FlashCopy是国际商业机器公司的注册商标)。
技术介绍
在计算机存储系统领域,存在着对被描述为“高级功能”的逐渐增加的需求。这种功能超出了传统存储控制器系统的简单I/O功能。高级功能在本领域中是公知的,并且取决于对元数据的控制,所述元数据用于保持关于存储在该系统内的真实或“用户”数据的状态数据。使用高级功能可获得的操作使得能够快速地对数据的虚拟映像施用各种活动,同时留下真实数据可供用户应用使用。这样一种公知的高级功能是FlashCopy。在最高层次,FlashCopy是这样一种功能,其中“某些数据”的第二映像成为是可用的。某些时候该功能在其他系统环境中称为时点拷贝或T0拷贝。第二映像的内容最初与第一映像的内容相同。第二映像“立即”成为是可用的。实际上这意味着以远少于创建真正的、单独的物理拷贝所需时间使第二映像成为是可用的,并且意味着可以建立它而不给正在进行使用的应用的操作带来不可接受的破坏。一旦建立,第二拷贝可以用于多个目的,包括执行备份、系统试用和数据挖掘。最初进行使用的应用继续以其最初目的使用第一拷贝。FlashCopy的实现通过将被编址为第二映像(此后称为目标)的读I/O重定向到原始映像(此后称为源)实现第二映像存在的假象,除非该区域已经经历了写。在区域已成为写的对象的情况下(或是向源或是向目标),为了保持源和目标两者拥有它们自己的数据拷贝的假象,调用一个处理,该处理挂起该写命令的操作,不使其产生作用,发出从源读受影响的区域的命令,将读出的数据以写应用到目标上,然后(并且仅当所有步骤成功时)释放挂起的写。不需要挂起对同一区域的后续写,因为目标已经具有了其自己的数据拷贝。这种写入时拷贝的技术是公知的,并且用于许多环境。所有的FlashCopy实现都依赖于管理上述讨论的决定,即,将在目标处接收的读发送到源还是目标的决定以及是否必须挂起写以允许进行写入时拷贝的决定的数据结构。与那些没有被拷贝的数据区域或颗粒(grain)不同,该数据结构实质上追踪从源拷贝到目标的数据区域或颗粒。在其最简单的形式中,以位图形式保持这种数据结构,所述位图示出已写了哪些颗粒,以及写活动未触及哪些颗粒。某些存储控制器允许用户为给定源配置多于一个目标。这具有多种应用。例如,可对每个目标进行不同的实验。可在不同时间(例如,一周内的不同天)采用所述目标,并且允许历史地访问盘,这或许是出于从某种数据损坏(诸如可能由病毒引起的)中恢复的目的。通过如图1中所示那样配置盘,现有的多目标FlashCopy实现扩展了FlashCopy算法,在图1中A是源逻辑单元,并且B和C示出在过去某一时间采用的两个目标。可以更新A,B和C中的每一个。箭头示出了仍然直接依赖源逻辑单元的颗粒(盘的固定大小的区域)。这些颗粒在追踪每个FlashCopy的进展的位图中具有相应的位“0b”。这种传统算法简单地并行布置多个目标,并且依次在每个映射上运行原始的FlashCopy算法。这具有缺点,即,对源中颗粒的写可能分裂多个颗粒(每个关系中一个)。上述例子中最后的颗粒就是一个。这引起额外的处理和延迟,并且可能限制多FlashCopy布置的可伸缩性,并且因此限制其可用性。可以提供这样一种布置,其中以级联方式构造FlashCopy映射然后运行,以确保将任意主机I/O所需的写的数目限制为2,而不论级联中目标盘的数目如何。然而,这种布置不允许这样的情况,其中一组级联关系被级联中某处的盘故障(或其他盘离线情况)破坏。因此,级联的FlashCopy目标劣于传统方案的一个方面是级联的目标上的数据依赖级联上的所有盘-不是如同传统方案中那样仅依赖源。如果源盘成为是不可访问的(盘故障或离线),有理由认为目标盘将成为是不可访问的。然而,如果目标盘成为是不可访问的(盘故障或离线),级联中所有其他盘都将成为是不可访问的是不合理的,因为这与用户对进行的拷贝的想法相反。对上述方案的另一种精心改进提供了具有控制组件(可以硬件,软件或它们的组合实现控制组件)的存储控制器,其能够采用基于规则的逻辑,以提供这样的系统,其中可将级联划分为多个序列,并且其中来自源的原始数据被优先级联,以试图确保在每个序列的至少一个成员内保留原始数据的一个拷贝。使用这种精心改进的技术,如果从级联的源盘上删除数据,在大多数情况下,该数据将保持在多个下游盘上。数据的拷贝数目(N)可从N=2到(级联中盘的数目-1)的范围内选择。以这种方式,可以保证如果级联中多至N-1个盘(除了级联的源,它被不同地对待)成为是不可访问的,可以从其他盘提取出级联的所有盘的数据。当盘成为不可访问时,激活恢复程序以确保数据的多个拷贝保持在级联内的剩余盘上。因此,如果没有快速地连续出现太多故障,级联仍可以应付盘故障。出现了一个问题,即如果盘成为不可访问,即使是短时间的,必须将它从级联中取出。在其成为不可访问时该盘可能是完整的。然而,链中的其余部分可能上移,因为对链中其他盘的写可能引起任意给定颗粒的原始数据将链下移,因此从级联的剩余部分的角度看离线盘上保持的数据现在是冗余的。
技术实现思路
因此,本专利技术在第一个方面提供了一种可与主计算机装置以及多个被控制的存储装置共同操作的存储控制器,并且包括主机写组件,其可以操作以便将数据对象写到所述多个被控制的存储装置中的一个处的源数据映像;拷贝组件,其对元数据状态做出响应,并且可以操作以控制所述数据对象到所述多个被控制的存储装置处的级联内的数据映像定界序列中的目标数据映像的拷贝;以及代替组件,其响应对包含所述目标数据映像的盘的离线状态的检测,并且可以操作以控制代替包含所述目标数据映像的所述盘的代替盘的替代。优选地,所述存储控制器结合在存储网络内。优选地,所述存储网络是存储区域网络。优选地,所述第一和第二拷贝组件中的至少一个位于通信网络的不同节点处。优选地,所述第一和第二拷贝组件中的至少一个位于通信网络的不同节点处。优选地,所述第一和所述第二拷贝组件以及另外的拷贝组件中的至少一个位于通信网络的不同节点处。在第二个方面,本专利技术提供了一种操作可与主计算机装置以及多个被控制的存储装置共同操作的存储控制器的方法,并且包括如下步骤由主机写组件将数据对象写到所述多个被控制的存储装置中的一个处的源数据映像;由响应元数据状态的拷贝组件控制所述数据对象拷贝到所述多个被控制的存储装置处的级联中的数据映像定界序列内的目标数据映像的拷贝;响应对包含所述目标数据映像的盘的离线状态的检测,由代替组件控制代替包含所述目标数据映像的所述盘的代替盘的替代。优选地,所述存储控制器结合在存储网络内。优选地,所述存储网络是存储区域网络。优选地,所述第一和第二拷贝组件中的至少一个位于通信网络的不同节点处。优选地,所述第一和第二拷贝组件以及另外的拷贝组件中的至少一个位于通信网络的不同节点处。在第三个方面,本专利技术提供了一种包括计算机程序代码的计算机程序,当装入计算机系统并在其上执行时,使得所述计算机执行根据所述第二方面的方法的步骤。本专利技术的优选实施例提供代替盘。优选地,这是与级联中其他盘大小相同的盘。当级联中的一个盘成为不可访问时,保持在其上的数据本文档来自技高网...
【技术保护点】
一种可与主计算机装置以及多个被控制的存储装置共同操作的存储控制器,包括:主机写组件,其可操作地将数据对象写到所述多个被控制的存储装置中的一个处的源数据映像;拷贝组件,其对一元数据状态做出响应,并且可操作地控制将所述数据对象拷 贝到所述多个被控制的存储装置处的级联中的数据映像的定界序列内的目标数据映像;以及代替组件,其响应对包含所述目标数据映像的盘的离线状态的检测,并且可操作地控制代替包含所述目标数据映像的所述盘的代替盘的替代。
【技术特征摘要】
GB 2005-3-2 0504390.61.一种可与主计算机装置以及多个被控制的存储装置共同操作的存储控制器,包括主机写组件,其可操作地将数据对象写到所述多个被控制的存储装置中的一个处的源数据映像;拷贝组件,其对一元数据状态做出响应,并且可操作地控制将所述数据对象拷贝到所述多个被控制的存储装置处的级联中的数据映像的定界序列内的目标数据映像;以及代替组件,其响应对包含所述目标数据映像的盘的离线状态的检测,并且可操作地控制代替包含所述目标数据映像的所述盘的代替盘的替代。2.如权利要求1的存储控制器,其中所述存储控制器被结合到存储网络中。3.如权利要求2的存储控制器,其中所述存储网络是存储区域网络。4.如权利要求1的存储控制器,其中所述第一和第二拷贝组件中的至少一个位于通信网络的不同节点处。5.如权利要求2的存储控制器,其中所述第一和第二拷贝组件以及另外的拷贝组件中的至少一个位于通信网络的不同节点处。...
【专利技术属性】
技术研发人员:JP阿戈姆巴,CBE贝肯,CF芬特,S沃尔什,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。