支持次级存储器的异步更新的用于异构存储控制器的写集合边界管理的制作方法

文档序号:6655541阅读:172来源:国知局
专利名称:支持次级存储器的异步更新的用于异构存储控制器的写集合边界管理的制作方法
技术领域
本发明一般涉及用于计算机系统的灾难恢复策略,更具体涉及支持次级存储器的异步更新的写集合边界管理。
背景技术
用于计算机系统的灾难恢复策略一般涉及将存储在初级站点的数据拷贝到次级站点,其中次级站点典型地位于离初级站点有些距离。可以同步或异步地执行在初级和次级拷贝之间的拷贝。在同步地执行拷贝的情况下,每次将更新写入到初级拷贝时,也将该更新发送到次级站点以写入到次级拷贝。只有在次级站点向初级站点通知更新了次级拷贝之后,初级站点才确认对初级拷贝的更新,并且准备好写下一更新。这样,按相同的顺序将更新写入到初级和次级拷贝。在异步地执行拷贝的情况下,由于与次级拷贝相独立地维护初级拷贝,因此可以在将任何更新发送到次级站点之前将多个更新写入到初级拷贝并且确认。典型地作为在此称作“颜色”的写集合,周期性地将更新发送到次站点,并且不一定以与将它们写入到初级拷贝相同的顺序,将其写入到次级拷贝。
在跨越初级站点的多个存储控制器维护单个颜色的情况下,有必要在切换到下一颜色时,所有存储控制器以协调的方式切换到下一颜色,以维护跨越颜色边界的“相关写入”的一致性。例如,假定以下典型的用于数据库更新事务的相关写入序列1.执行更新数据库日志的写入,以指示即将发生数据库更新,然后2.执行更新数据库的第二写入,并且最后3.执行更新数据库日志的第三写入,以指示成功地完成了数据库更新,
必要的是,这些相关写入全都属于相同颜色,或者,如果它们跨越颜色边界,则较早写入(一个或多个)属于旧颜色并且较后写入(一个或多个)属于新颜色。在该示例中,假定写入1、2和3每个由不同的存储控制器写入,如果写入1和3作为颜色组“红色”的一部分写入,并且写入2作为下一颜色组“蓝色”的一部分写入,则在“红色”组被写入到次级拷贝之后,但在“蓝色”组被写入到次级拷贝之前,初级拷贝将丢失,次级拷贝中的数据库日志将错误地显示发生了更新数据库的第二写入,但是事实上数据库在那时并未被更新。
在一种用于跨越初级站点处的多个存储控制器而维护颜色和颜色边界的技术中,在将写入与颜色相关联之前,每个存储控制器轮询维护当前颜色的颜色控制节点。颜色控制节点向存储控制器报告当前颜色,并且存储控制器将该写入作为该颜色的一部分执行。
在另一种用于跨越初级站点处的多个存储控制器而维护颜色和颜色边界的技术中,颜色控制节点维护当前颜色,但是存储控制器不向颜色控制节点轮询当前颜色。而是,当颜色控制节点想要形成新颜色时,它将“冻结”命令发送到所有存储控制器,以指示该新颜色。当存储控制器接收到“冻结”命令时,它扣留来自请求者的写入操作的确认。然后,存储控制器将“冻结”命令的确认发送到颜色控制节点。一旦颜色控制节点从所有存储控制器接收到确认,它就将“解冻”命令发送到所有存储控制器。当存储控制器接收到“解冻”命令时,它可以向写入操作的请求者确认写入操作,并且在接收“冻结”命令之后为其发送确认的所有写入操作被认为已经作为新颜色的一部分被写入。
虽然对于存储系统采用轮询控制器和冻结/解冻控制器以便例如支持系统伸缩或移植将是有利的,但是需要一种用于跨越初级站点处的多个异构存储控制器而维护颜色和颜色边界的方法。

发明内容
本发明公开了一种用于支持次级存储器的异步更新的异构存储控制器的写集合边界管理的系统和方法。
在本发明的一方面,提供了一种数据存储系统,其包括至少一个存储控制器,具有第一颜色策略并且用于将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;至少一个存储控制器,具有第二颜色策略并且用于将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;以及颜色控制节点,用于向每个控制器提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
在本发明的另一方面,第一颜色策略是冻结/解冻(F/T)存储控制器的颜色策略,并且第二颜色策略是轮询存储控制器的颜色策略。
在本发明的另一方面,提供了一种数据存储系统,其包括至少一个冻结/解冻(F/T)存储控制器,用于将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;至少一个轮询存储控制器,用于将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;以及颜色控制节点,用于维护当前颜色,并且响应于轮询存储控制器的轮询请求而向轮询存储控制器报告当前颜色,并且使F/T存储控制器改变到新颜色。
在本发明的另一方面,颜色控制节点用于将冻结命令发送到每个F/T存储控制器。
在本发明的另一方面,F/T存储控制器用于响应于接收到冻结命令,扣留来自写入操作请求者的写入操作的确认。
在本发明的另一方面,F/T存储控制器用于响应于接收到冻结命令,执行写入操作。
在本发明的另一方面,颜色控制节点用于在将冻结命令发送到每个F/T存储控制器之后,并且响应于从每个F/T存储控制器接收到冻结命令的接收确认,将当前颜色改变为新颜色。
在本发明的另一方面,颜色控制节点用于在改变为新颜色之后,将解冻命令发送到F/T存储控制器。
在本发明的另一方面,F/T存储控制器用于响应于接收到解冻命令,向写入操作的请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送写入确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,控制器用于将作为所述颜色中的任一个的一部分写入的数据异步拷贝到次级站点的对应远程存储控制器。
在本发明的另一方面,轮询控制器用于在将数据作为当前颜色的一部分存储到初级站点的第二数据存储单元上之前,轮询颜色控制节点以接收当前颜色。
在本发明的另一方面,提供了一种用于跨越多个异构存储控制器而维护颜色和颜色边界的方法,该方法包括将冻结命令发送到初级数据存储站点的至少一个F/T存储控制器,从而使F/T存储控制器操作以扣留来自写入操作的请求者的写入操作的确认,一旦从每个F/T存储控制器接收到冻结命令的确认,就将初级站点的当前颜色改变为新颜色,其中响应于轮询存储控制器的轮询请求,当前颜色可提供给初级站点的至少一个轮询存储控制器,并且将解冻命令发送到F/T存储控制器,从而使F/T存储控制器操作以向请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,提供了一种数据存储系统,其包括至少一个冻结/解冻(F/T)存储控制器,用于将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;至少一个轮询存储控制器,用于将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;轮询颜色控制节点,用于维护当前颜色,并且响应于轮询存储控制器的轮询请求而向该轮询存储控制器报告当前颜色;以及F/T颜色控制节点,用于使F/T存储控制器和轮询颜色控制节点中的任一个改变为新颜色。
在本发明的另一方面,F/T颜色控制节点用于将冻结命令发送到F/T存储控制器。
在本发明的另一方面,F/T存储控制器用于响应于接收到冻结命令,扣留来自写入操作的请求者的写入操作的确认。
在本发明的另一方面,F/T颜色控制节点用于响应于从每个F/T存储控制器接收到冻结命令的接收确认,将命令发送到轮询颜色控制节点,以将当前颜色改变为新颜色。
在本发明的另一方面,用于改变颜色的命令是冻结命令。
在本发明的另一方面,用于改变颜色的命令是解冻命令。
在本发明的另一方面,颜色控制节点用于响应于接收到颜色改变命令,将当前颜色改变为新颜色。
在本发明的另一方面,颜色控制节点用于在改变为新颜色之后,将颜色改变确认发送到F/T颜色控制节点。
在本发明的另一方面,F/T颜色控制节点用于响应于接收到颜色改变确认,将解冻命令发送到F/T存储控制器。
在本发明的另一方面,F/T存储控制器用于响应于接收到解冻命令,向写入操作的请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,控制器用于将作为所述颜色中的任一个的一部分写入的数据异步拷贝到次级站点的对应远程存储控制器。
在本发明的另一方面,轮询控制器用于在将数据作为当前颜色的一部分存储到初级站点的第二数据存储单元上之前,向轮询颜色控制节点轮询以接收当前颜色。
在本发明的另一方面,提供了一种用于跨越多个异构存储控制器而维护颜色和颜色边界的方法,该方法包括将冻结命令发送到初级数据存储站点的至少一个F/T存储控制器,从而使F/T存储控制器操作以扣留来自写入操作的请求者的写入操作的确认,一旦从每个F/T存储控制器接收到冻结命令的确认,就将初级站点的轮询颜色控制节点的当前颜色改变为新颜色,其中响应于轮询存储控制器的轮询请求,当前颜色可提供给初级站点的至少一个轮询存储控制器,并且在接收到颜色改变的接收确认之后将解冻命令发送到F/T存储控制器,从而使F/T存储控制器操作以向请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,改变步骤包括将解冻命令发送到轮询颜色控制节点。
在本发明的另一方面,改变步骤包括将解冻命令发送到轮询颜色控制节点。
在本发明的另一方面,F/T颜色控制节点操作以将冻结命令发送到F/T存储控制器和轮询颜色控制节点。
在本发明的另一方面,F/T颜色控制节点操作以响应于从每个F/T存储控制器接收到冻结命令的接收确认,将解冻命令发送到轮询颜色控制节点,以将当前颜色改变为新颜色。
在本发明的另一方面,提供了一种用于跨越多个异构存储控制器而维护颜色和颜色边界的方法,该方法包括将冻结命令发送到初级数据存储站点的至少一个F/T存储控制器和轮询颜色控制节点,从而使F/T存储控制器操作以扣留来自写入操作的请求者的写入操作的确认,一旦从每个F/T存储控制器接收到冻结命令的确认,就将初级站点的轮询颜色控制节点的当前颜色改变为新颜色,其中响应于轮询存储控制器的轮询请求,当前颜色可提供给初级站点的至少一个轮询存储控制器,并且在接收到颜色改变的接收确认之后将解冻命令发送到F/T存储控制器,从而使F/T存储控制器操作以向请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,改变步骤包括将解冻命令发送到轮询颜色控制节点。
在本发明的另一方面,F/T颜色控制节点操作以响应于从轮询颜色控制节点接收到冻结命令的接收确认,将解冻命令发送到轮询颜色控制节点。
在本发明的另一方面,F/T颜色控制节点操作以响应于从轮询颜色控制节点接收到解冻命令的接收确认,将解冻命令发送到F/T存储控制器。
在本发明的另一方面,轮询颜色控制节点操作以响应于从F/T颜色控制节点接收到冻结命令和解冻命令中的任一个,将当前颜色改变为新颜色。
在本发明的另一方面,提供了一种用于跨越多个异构存储控制器而维护颜色和颜色边界的方法,该方法包括将第一冻结命令发送到初级数据存储站点的至少一个F/T存储控制器,从而使F/T存储控制器操作以扣留来自写入操作的请求者的写入操作的确认,在F/T颜色控制节点从每个F/T存储控制器接收到第一冻结命令的接收确认之后,将第二冻结命令发送到轮询颜色控制节点,在F/T颜色控制节点从轮询颜色控制节点接收到第二冻结命令的接收确认之后,将第一解冻命令发送到轮询颜色控制节点,响应于第二冻结和第一解冻命令中的任一个,将初级站点的轮询颜色控制节点的当前颜色改变为新颜色,并且在接收到第一解冻命令的接收确认之后,将第二解冻命令发送到F/T存储控制器,从而使F/T存储控制器操作以向请求者确认写入操作,其中在由F/T存储控制器接收到冻结命令之后为其发送确认的任何写入操作被认为作为新颜色的一部分被写入。
在本发明的另一方面,提供了一种用于部署数据存储系统的方法,该方法包括安装至少一个存储控制器,其具有第一颜色策略并且用于将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;安装至少一个存储控制器,其具有第二颜色策略并且用于将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;以及安装颜色控制节点,其用于向每个控制器提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
在本发明的另一方面,提供了一种在计算机可读介质上实施的计算机程序,该计算机程序包括第一代码段,用于控制至少一个具有第一颜色策略的存储控制器,以将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;第二代码段,用于控制至少一个具有第二颜色策略的存储控制器,以将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;以及第三代码段,用于控制颜色控制节点,以向每个控制器提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
应当理解,贯穿本说明书和权利要求,对“轮询以接收当前颜色”的引用可以是指接收使用任何公知信息表示技术的颜色信息,包括以数值形式表达颜色,例如,与颜色相关联的序列号。


根据下面结合附图的详细描述,将会更充分地领会和理解本发明,其中图1是根据本发明优选实施例而构造和操作的、初级和次级数据存储器的系统的简化框图;图2是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图;图3是根据本发明优选实施例而构造和操作的、初级和次级数据存储器的系统的简化框图;以及图4、5和6是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图。
具体实施例方式
现在参考图1,其是根据本发明优选实施例构造和操作的初级和次级数据存储器的系统的简化框图。在图1的系统中,初级站点100包括存储控制器104a、104b和104c,其分别耦接到存储单元106a、106b和106c。存储控制器104a、104b和104c管理从主机系统(未示出)对存储单元106a、106b、106c中的卷的输入/输出(I/O)存取。存储控制器104a、104b和104c优选地被配置成通过连接112a、112b和112c将数据异步地拷贝到次级站点102处的对应远程存储控制器108a、108b和108c。根据传统技术,存储控制器104a、104b和104c优选地将在此称作“颜色”的数据写集合周期性地传送到远程存储控制器108a、108b和108c,其中远程存储控制器108a、108b和108c将数据写入到其各自附连的存储单元114a、114b和114c。虽然图1示出了站点100和102处的特定数目的组件,例如,各自三个存储控制器和存储器,但是,应当理解可以使用任何数目的存储控制器和存储单元。
次级站点102可以离初级站点100成百或上千英里。存储控制器对之间的连接112a、112b、112c可以包括专用线路,例如,由长途电信运营商维护的专用光纤网络或连接,具有信道延伸器的长途光纤连接,或者通过诸如存储区域网络(SAN)、主区域网络(LAN)或因特网等网络而延伸。
初级站点100处的主机系统(未示出)可以对存储单元106a、106b和106c中的卷执行输入/输出(I/O)操作。主机系统可以通过在本技术领域内公知的任何网络或连接与存储控制器104a、104b和104c通信。
存储控制器104a、104b、104c、108a、108b和108c优选地包括处理器复合体,并且可以包括在本技术领域内公知的任何存储控制器或服务器,例如,IBM企业级存储服务器(ESS),3990存储控制器。存储单元106a、106b、106c、104a、114b和114c可以包括存储设备阵列,诸如,简单磁盘集群(JBOD)或独立磁盘冗余阵列(RAID)阵列。
初级站点100处的每个存储控制器104a、104b和104c优选地通过网络118与颜色控制节点110通信,该颜色控制节点110优选地与在相同数据存储站点之内操作的多个存储控制器同时工作,其中不是所有存储控制器具有相同的颜色策略。例如,颜色控制节点110可以维护识别在此被称为“当前颜色”的当前写集合的指示符,用于在通过向F/T存储控制器发出“冻结”命令而致使冻结/解冻(F/T)存储控制器改变到下一写集合/颜色时,轮询存储控制器。在初级站点100处可以采用任意数目的轮询存储控制器和F/T存储控制器及其组合,例如,其中存储控制器104a和104b是F/T存储控制器,其维护当前颜色直至颜色控制节点110向其发出“冻结”命令,并且其中存储控制器104c是轮询存储控制器,其在将写入与颜色相关联之前轮询颜色控制节点110并且请求当前颜色,存储控制器104a、104b和104c根据传统技术向存储器执行该写入作为该颜色的一部分。
现在参考图2,其是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图。图2的方法可以参考图1的初级和次级数据存储系统来理解,其中图2的方法优选地通过存储控制器104a、104b和104c、以及颜色控制节点110来实现。在图2的方法中,当轮询存储控制器104c在作为当前颜色的一部分执行写入之前向颜色控制节点110轮询该颜色时,F/T存储控制器104a和104b维护当前颜色,并且执行所有写入作为该颜色的一部分。仅仅在切换到新颜色之前,例如,根据预定调度,颜色控制节点110向F/T存储控制器104a和104b发出指示新颜色的“冻结”命令。一旦接收到“冻结”命令,F/T存储控制器104a和104b就可以继续执行写入操作,但是扣留来自请求者的写入操作的确认,或者可以完全暂停写入操作。然后,F/T存储控制器104a和104b将“冻结”命令的确认发送到颜色控制节点110。一旦颜色控制节点110从所有F/T存储控制器接收到确认,它就改变其颜色。这样,从该点起,颜色控制节点110通过指示新颜色来响应其从轮询存储控制器104c接收的轮询。然后,颜色控制节点110将“解冻”命令发送到F/T存储控制器104a和104b,其一旦接收到“解冻”命令,就可以执行暂停写入操作(若有的话),并且将在接收到“冻结”命令之后执行的写入操作的确认发送到写入操作的请求者,其中在接收到“冻结”命令之后为其发送确认的所有写入操作被认为已经作为新颜色的一部分被写入。
现在参考图3,其是根据本发明优选实施例而构造和操作的初级和次级数据存储器的系统的简化框图。图3的系统基本上类似于图1的系统,不过显著的例外是初级站点100处的F/T存储控制器104a和104b与F/T颜色控制节点300通信,其中F/T颜色控制节点300通过向F/T存储控制器104a和104b发出“冻结”命令而致使冻结/解冻(F/T)存储控制器改变到下一颜色,而轮询存储控制器104c与轮询颜色控制节点302通信,其中轮询颜色控制节点302担当轮询颜色控制节点并且维护用于轮询存储控制器的当前颜色。
现在参考图4,其是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图。图4的方法可以参考图3的初级和次级数据存储系统来理解,其中图4的方法优选地通过存储控制器104a、104b和104c、轮询颜色控制节点302和F/T颜色控制节点300来实现。在图4的方法中,当轮询存储控制器104c在作为当前颜色的一部分执行写入之前,向轮询颜色控制节点302轮询当前颜色时,F/T存储控制器104a和104b维护当前颜色,并且执行所有写入作为该颜色的一部分。仅仅在切换到新颜色之前,例如,根据预定调度,F/T颜色控制节点300向F/T存储控制器104a和104b发出指示新颜色的“冻结”命令。一旦接收到“冻结”命令,F/T存储控制器104a和104b就可以继续执行写入操作,但是扣留来自请求者的写入操作的确认,或者可以完全暂停写入操作。然后,F/T存储控制器104a和104b将“冻结”命令的确认发送到F/T颜色控制节点300。一旦F/T颜色控制节点300从所有F/T存储控制器接收到“冻结”命令的确认,F/T颜色控制节点300就将命令发送到轮询颜色控制节点302以改变其颜色,其中该命令可以为标准“冻结”或“解冻”命令的形式。一旦轮询颜色控制节点302从F/T颜色控制节点300接收到命令以改变其颜色,轮询颜色控制节点302就改变其颜色,并且将确认发送到F/T颜色控制节点300。这样,从该点起,轮询颜色控制节点302通过指示新颜色来响应其从轮询存储控制器104c接收的轮询。一旦F/T颜色控制节点300从轮询颜色控制节点302接收指示它改变了其颜色的确认,F/T颜色控制节点300就将“解冻”命令发送到F/T存储控制器104a和104b,其一旦接收到“解冻”命令就可以执行暂停的写入操作(若有的话),并且将在接收到″冻结″命令之后执行的写入操作的确认发送到写入操作的请求者,其中在接收到“冻结”命令之后为其发送确认的所有写入操作被认为已经作为新颜色的一部分被写入。F/T颜色控制节点300还可以将“解冻”命令发送到轮询颜色控制节点302,这可以被忽略。
现在参考图5,其是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图。图5的方法可以参考图3的初级和次级数据存储系统来理解,其中图5的方法优选地通过存储控制器104a、104b和104c、轮询颜色控制节点302和F/T颜色控制节点300来实现。在图5的方法中,当轮询存储控制器105c在作为当前颜色的一部分执行写入之前,向轮询颜色控制节点302轮询当前颜色时,F/T存储控制器104a和104b维护当前颜色,并且执行所有写入作为该颜色的一部分。仅仅在切换到新颜色之前,例如,根据预定调度,F/T颜色控制节点300向F/T存储控制器104a和104b发出指示新颜色的“冻结”命令、以及向轮询颜色控制节点302发出该命令。一旦接收到“冻结”命令,F/T存储控制器104a和104b就可以继续执行写入操作,但是扣留来自请求者的写入操作的确认,或者可以完全暂停写入操作。然后,F/T存储控制器104a和104b、以及轮询颜色控制节点302将“冻结”命令的确认发送到F/T颜色控制节点300。一旦F/T颜色控制节点300从所有F/T存储控制器并且从轮询颜色控制节点302接收到确认,F/T颜色控制节点300就将命令发送到轮询颜色控制节点302以改变其颜色,其中该命令可以为标准的“解冻”命令的形式。一旦轮询颜色控制节点302从F/T颜色控制节点300接收到命令以改变其颜色,轮询颜色控制节点302就改变其颜色,并且将确认发送到F/T颜色控制节点300。这样,从该点起,轮询颜色控制节点302通过指示新颜色来响应其从轮询存储控制器104c接收的轮询。一旦F/T颜色控制节点300从轮询颜色控制节点302接收指示其改变了其颜色的确认,F/T颜色控制节点300就将“解冻”命令发送到F/T存储控制器104a和104b,其一旦接收到“解冻”命令就可以执行暂停写入操作(若有的话),并且将在接收到“冻结”命令之后执行的写入操作的确认发送到写入操作的请求者,其中在接收到“冻结”命令之后为其发送确认的所有写入操作被认为已经作为新颜色的一部分被写入。
现在参考图6,其是根据本发明优选实施例而操作的、用于跨越多个异构存储控制器而维护颜色和颜色边界的方法的简化流程图。图6的方法可以参考图3的初级和次级数据存储系统来理解,其中图6的方法优选地通过存储控制器104a、104b和104c、轮询颜色控制节点302和F/T颜色控制节点300来实现。在图6的方法中,当轮询存储控制器106c在作为当前颜色的一部分执行写入之前,向轮询颜色控制节点302轮询当前颜色时,F/T存储控制器104a和104b维护当前颜色,并且执行所有写入作为该颜色的一部分。仅仅在切换到新颜色之前,例如,根据预定调度,F/T颜色控制节点300向F/T存储控制器104a和104b发出指示新颜色的″冻结″命令。一旦接收到“冻结”命令,F/T存储控制器104a和104b就可以继续执行写入操作,但是扣留来自请求者的写入操作的确认,或者可以完全暂停写入操作。然后,F/T存储控制器104a和104b将“冻结”命令的确认发送到F/T颜色控制节点300。一旦F/T颜色控制节点300从所有F/T存储控制器接收到确认,F/T颜色控制节点300就将“冻结”命令发送到轮询颜色控制节点302。一旦轮询颜色控制节点302从F/T颜色控制节点300接收到“冻结”命令,轮询颜色控制节点302就可以改变其颜色。然后,轮询颜色控制节点302将确认发送到F/T颜色控制节点300。一旦F/T颜色控制节点300从轮询颜色控制节点302接收到确认,F/T颜色控制节点300就将“解冻”命令发送到轮询颜色控制节点302。一旦轮询颜色控制节点302从F/T颜色控制节点300接收到“解冻”命令,轮询颜色控制节点302就可以改变其颜色。这样,在接收到“冻结”或“解冻”命令之后,轮询颜色控制节点302可以改变其颜色。然后,轮询颜色控制节点302将“解冻”的确认发送到F/T颜色控制节点300。一旦F/T颜色控制节点300从轮询颜色控制节点302接收到“解冻”的确认,F/T颜色控制节点300就将“解冻”命令发送到F/T存储控制器104a和104b,其一旦接收到“解冻”命令就可以执行暂停的写入操作(若有的话),并且将在接收到“冻结”命令之后执行的写入操作的确认发送到写入操作的请求者,其中在接收到“冻结”命令之后为其发送确认的所有写入操作被认为已经作为新颜色的一部分被写入。
应当理解,可以省略、或者以不同的次序执行在此描述的任一方法的步骤中的一个或多个,而不背离本发明的精神和范围。
虽然可能有或者可能没有参考专用计算机硬件或软件来描述在此公开的方法和设备,但是应当理解,在此描述的方法和设备可以容易地使用传统技术在计算机硬件或软件中实现。
虽然参考一个或多个具体实施例描述了本发明,但是本描述意欲总体上说明本发明,并且不应被解释成将本发明局限于所示实施例。应当理解,本领域的技术人员可以进行各种修改,其虽然在此没有被具体地示出,但仍在本发明的真实精神和范围之内。
权利要求
1.一种数据存储系统,包括第一存储控制器,具有第一颜色策略并且用于将数据存储到初级站点的第一数据存储单元上,作为所述初级站点的当前颜色的一部分;第一存储控制器,具有第二颜色策略并且用于将数据存储到所述初级站点的第二数据存储单元上,作为所述当前颜色的一部分;以及颜色控制节点,用于向所述控制器中的每个提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
2.根据权利要求1所述的系统,其中所述第一存储控制器是具有冻结/解冻策略的冻结/解冻(F/T)存储控制器,并且其中所述第二存储控制器是具有轮询策略的轮询存储控制器。
3.根据权利要求2所述的数据存储系统,其中所述颜色控制节点用于维护所述当前颜色,并且响应于所述轮询存储控制器的轮询请求,向所述轮询存储控制器报告所述当前颜色,并且使所述F/T存储控制器改变到新颜色。
4.根据权利要求3所述的系统,其中所述颜色控制节点用于将冻结命令发送到所述F/T存储控制器中的每个。
5.根据权利要求3或4所述的系统,其中所述F/T存储控制器用于响应于接收到冻结命令,扣留来自写入操作的请求者的所述写入操作的确认。
6.根据权利要求5所述的系统,其中所述F/T存储控制器用于响应于接收到冻结命令,执行写入操作。
7.根据权利要求3到6中的任一项所述的系统,其中所述颜色控制节点用于在将冻结命令发送到所述F/T存储控制器中的每个之后,并且响应于从所述F/T存储控制器中的每个接收到所述冻结命令的接收确认,将所述当前颜色改变为所述新颜色。
8.根据权利要求3到7中的任一项所述的系统,其中所述颜色控制节点用于在改变为所述新颜色之后,将解冻命令发送到所述F/T存储控制器。
9.根据权利要求3到8中的任一项所述的系统,其中所述F/T存储控制器用于响应于接收到解冻命令,向写入操作的请求者确认所述写入操作,其中在所述F/T存储控制器接收到冻结命令之后为其发送所述写入确认的所述写入操作中的任一个被认为作为所述新颜色的一部分被写入。
10.根据权利要求3到9中的任一项所述的系统,其中所述控制器用于将作为所述颜色中的任一个的一部分被写入的数据异步拷贝到次级站点的对应远程存储控制器。
11.根据权利要求3到10中的任一项所述的系统,其中所述轮询控制器用于在将数据作为所述当前颜色的一部分存储到所述初级站点的所述第二数据存储单元上之前,轮询所述颜色控制节点以接收所述当前颜色。
12.一种用于跨越多个异构存储控制器而维护颜色和颜色边界的方法,该方法包括将冻结命令发送到初级数据存储站点的至少一个F/T存储控制器,从而使所述F/T存储控制器操作以扣留来自写入操作的请求者的所述写入操作的确认;一旦从F/T存储控制器中的每个接收到所述冻结命令的确认,就将所述初级站点的当前颜色改变为新颜色,其中响应于所述轮询存储控制器的轮询请求,所述当前颜色可提供给所述初级站点的至少一个轮询存储控制器;以及将解冻命令发送到所述F/T存储控制器,从而使所述F/T存储控制器操作以向所述请求者确认所述写入操作,其中在所述F/T存储控制器接收到所述冻结命令之后为其发送所述确认的所述写入操作中的任一个被认为作为所述新颜色的一部分被写入。
13.一种用于部署数据存储系统的方法,该方法包括安装至少一个存储控制器,其具有第一颜色策略并且用于将数据存储到初级站点的第一数据存储单元上,作为所述初级站点的当前颜色的一部分;安装至少一个存储控制器,其具有第二颜色策略并且用于将数据存储到所述初级站点的第二数据存储单元上,作为所述当前颜色的一部分;以及安装颜色控制节点,其用于向所述控制器中的每个提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
14.一种在计算机可读介质上实施的计算机程序,该计算机程序包括第一代码段,用于控制至少一个具有第一颜色策略的存储控制器,以将数据存储到初级站点的第一数据存储单元上,作为所述初级站点的当前颜色的一部分;第二代码段,用于控制至少一个具有第二颜色策略的存储控制器,以将数据存储到所述初级站点的第二数据存储单元上,作为所述当前颜色的一部分;以及第三代码段,用于控制颜色控制节点,以向所述控制器中的每个提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
全文摘要
本发明公开一种数据存储系统,其包括至少一个存储控制器,具有第一颜色策略并且用于将数据存储到初级站点的第一数据存储单元上,作为初级站点的当前颜色的一部分;至少一个存储控制器,具有第二颜色策略并且用于将数据存储到初级站点的第二数据存储单元上,作为当前颜色的一部分;以及颜色控制节点,用于向每个控制器提供新颜色信息,同时维护跨越颜色边界的相关写入的完整性。
文档编号G06F11/20GK101095117SQ200580011469
公开日2007年12月26日 申请日期2005年4月25日 优先权日2004年5月12日
发明者西拉·本-多尔, 亨利·巴特沃斯, 阿米尔·克雷迪, 奥利特·尼桑-梅辛, 亚当·沃尔曼, 阿维亚德·兹罗特尼克 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1