早期检测存储设备降级的装置和方法

文档序号:6571298阅读:309来源:国知局
专利名称:早期检测存储设备降级的装置和方法
技术领域
本发明涉及控制数据存储系统的技术,更具体地说,涉及存储设备降级的早期检测。
背景技术
拥有多个设备的数据存储子系统,如廉价磁盘冗余阵列(RAID)阵列,将客户数据存储在多个存储设备上以避免因一个或多个存储设备故障导致的数据丢失。本发明涉及此类可包含盘存储装置例如RAID阵列的多设备存储子系统。然而,对本领域的技术人员显而易见的是,其他存储设备(包括但不限于磁带和闪存设备)也可以包含在此类子系统中。
为了尽量减少系统在没有冗余的情况下运行的时间,可以将某些存储设备配置为“热后备”设备。在正常运行环境下,这些热后备装置并不保存客户数据。然而,一旦运行中阵列成员出现故障,子系统就选择热后备装置代替出现故障的阵列成员,然后使用该热后备装置来重建阵列。当阵列处于重建过程时,它以降低的冗余运行,这意味着存在尽可能快地重建的压力。
存储设备的另一种可能用途(即,除作为成员,后备,或故障设备之外)是作为阵列候选者或空闲设备。这些设备是通过在创建RAID阵列的过程中配置为阵列成员或通过配置为热后备装置而准备投入使用的设备。同时,它们仍然闲置,并且它们可能遭受的任何降级对于子系统控制组件仍然不可见。
尽管有内置冗余以及使用热后备装置,但是仍存在当存储设备闲置时它可能出现故障的问题,并且在这种情况下,子系统直到它试图对设备做出实际上的I/O时才会检测到故障。检测到故障通常是在不合适的时候-刚好在需要所述设备接收数据I/O活动时。
热后备设备在等待阵列成员出现故障时保持闲置。在此期间它们的状况可能降级,使得它们在子系统在阵列重建期间试图对它们做出实际I/O时出现故障。这是不利的,因为子系统必须以降低的冗余运行更长时间(并且,在最坏的情形下,如果没有更多后备,可能需要通过物理地替换设备的方式来人工干预),从而增加了数据丢失的机会。
如以上所指出的,空闲设备也存在同样的问题当它们保持闲置时它们的状况可能降级,并且系统直到它们变成阵列成员并承受I/O工作负荷时才会检测到这种情况。
实际上,在某些情况下,配置为活动阵列成员的设备也存在同样的问题。轻负荷或周期性闲置的阵列并不少见。当阵列成员出现故障时重建开始。重建操作通常被设计为尽可能快地运行,这对所有其他阵列成员(通常包括某些有一段时间没有用于I/O的活动阵列成员)施加了压力。对于单冗余RAID系统(例如,RAID5),此时其他盘故障将导致阵列丢失,而在其他子系统中,由于需要重复的I/O而至少减慢了处理。
盘驱动器实现不同复杂度的自测试过程。在某些企业级盘驱动器的最新版本中,这包含检查块仍然可读的后台介质扫描。这些功能可以改善问题,但是它们没有试图模拟“真实”客户工作负荷。此解决方案还是盘驱动器供应商和模型特定的,并且具体地说,低成本(例如SATA)盘驱动器不太可能实现这些功能。
RAID控制器实现阵列和盘清理。这些处理每隔几天检查阵列成员、热后备装置以及空闲盘的所有块是否可读。同样这些功能没有试图模拟客户工作负荷。由于转向处理它们的I/O时间和设备资源量,该过程也可能破坏正常处理。
存在各种使用分布式后备的高级RAID技术。在此方案中没有专用的热后备设备,而将多余容量分配到每个阵列。这彻底消除了热后备装置问题。然而,很难将此类方案改进为带有专用热后备设备的现有RAID体系结构。
鉴于上述技术方面的问题,急需一种早期检测磁盘降级的技术装置,而没有由那些更复杂和冗繁的措施带来的额外成本和不便。

发明内容
在第一方面,本发明相应地提供了一种可与主机和数据存储组件一起操作的用于检测在I/O工作负荷下易受故障影响的存储设备的装置,包括选择器组件,用于在所述数据存储组件中选择一对存储设备;数据迁移控制组件,用于启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移;I/O工作负荷镜像组件,用于将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备;以及存储设备故障检测组件,用于检测所述存储设备对中的一个存储设备的故障。
优选地,所述选择器组件还包括用于周期性地启动所述选择的计时器组件。
优选地,所述存储设备对中的所述第一存储设备是活动成员,而所述存储设备对中的所述第二存储设备是热后备装置。
优选地,所述存储设备对中的所述第一存储设备是活动成员,而所述存储设备对中的所述第二存储设备是空闲设备。
优选地,所述数据迁移控制组件允许所述迁移完成;并且其中所述活动成员与所述热后备装置交换角色。
优选地,所述数据迁移控制组件允许所述迁移完成;并且其中所述活动成员与所述空闲设备交换角色。
优选地,所述数据存储组件包括盘存储装置。
优选地,所述数据存储组件包括RAID阵列。
在第二方面,本发明提供了一种与主机和数据存储组件一起使用的用于检测在I/O工作负荷下易受故障影响的存储设备的方法,包括以下步骤通过选择器组件在所述数据存储组件中选择一对存储设备;通过数据迁移控制组件启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移;通过I/O工作负荷镜像组件将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备;以及通过存储设备故障检测组件检测所述存储设备对中的一个存储设备的故障。
优选地,所述选择步骤还包括响应于计时器组件的操作而周期性地启动所述选择。
优选地,所述存储设备对中的所述第一存储设备是活动成员,而所述存储设备对中的所述第二存储设备是热后备装置。
优选地,所述存储设备对中的所述第一存储设备是活动成员,而所述存储设备对中的所述第二存储设备是空闲设备。
优选地,所述数据迁移控制组件允许所述迁移完成,并且其中所述活动成员与所述热后备装置交换角色。
优选地,所述数据迁移控制组件允许所述迁移完成,并且其中所述活动成员与所述空闲设备交换角色。
优选地,所述数据存储组件包括盘存储装置。
优选地,所述数据存储组件包括RAID阵列。
在第三方面,提供了一种其上具有功能数据的数据载体,所述功能数据包括功能计算机数据结构,当所述功能数据被载入计算机系统并由其运行时,所述功能计算机数据结构使得所述计算机系统能够执行根据所述第二方面的方法的所有步骤。
在第四方面,提供了一种包括计算机程序代码的计算机程序,当所述计算机程序被载入计算机系统并在其上执行时,所述计算机程序代码导致所述计算机系统执行根据所述第二方面的方法的所有步骤。
因此,本发明的优选实施例在其最宽广的方面中构想了一种用于早期检测盘降级的技术框架。


现在将仅通过实例的方式参考附图描述本发明的优选实施例,这些附图是图1以示意图的形式示出了根据本发明的优选实施例的装置的布置;图2以流程图的形式示出了一种其中可以实现根据本发明的优选实施例的操作方法的方法或逻辑布置。
具体实施例方式
本发明的优选实施例使用盘迁移技术来周期性地改变那些在子系统中配置为热后备装置或空闲盘的驱动器,从而运用(施加工作负荷到)当系统正常使用时将不会运用的那些盘。
这优于公知的错误检测技术,因为1.它确保将盘暴露于真实的客户工作负荷,这允许早期检测更多故障并增加子系统可靠性。
2.它并不需要来自盘驱动器的特别支持。这使得存储子系统能够使用更廉价的驱动器或来自其他厂商的驱动器而不损害这方面的可靠性。
3.在闲置阵列中,它主动地引发与阵列成员故障时通常应用的工作负荷类似的工作负荷。
在优选实施例中,通过完全或部分的并发盘驱动器迁移进行盘运用。并发盘迁移,例如由IBMTotalStorageDS8000系列产品(IBM和TotalStorage是IBM公司的商标或注册商标)的后备迁移功能所提供的,是一种允许阵列中的一个盘驱动器(源驱动器)由另一个(目标驱动器)替换而不降低所述阵列的冗余的技术。所述过程通过将数据从源复制到目标,当所述复制进行时(若干小时的过程)镜像写入来工作。当复制完成时,所述目标设备替换所述源设备且所述两个设备之间没有其他关系。
本发明的最优选实施例是使存储控制器上的软件以时间间隔T运行并识别P对盘驱动器。(然而,对本领域的技术人员显而易见的是,也可以在专门硬件(如专用处理器)或结合在固件内的逻辑中实现此功能。)每对盘驱动器都包含一个当前配置为热后备装置或空闲驱动器的盘驱动器和一个配置为阵列成员的盘驱动器。优选地,所识别的盘驱动器可以是那些以它们当前的角色(成员、后备或空闲)被配置最长时间的盘驱动器。软件在每对盘驱动器之间开始迁移以使它们的角色对换。
变量T和P的选择影响迁移使用的子系统资源量以及盘驱动器所见的I/O量。这些可以根据特定应用的需求来调整。
一种可能的实施方式可以允许迁移运行到完成。在此情况下,热后备角色在全体角色中缓慢循环。这有效地解决了热后备装置或空闲驱动器在闲置时出现故障的潜在问题,但不会对活动阵列成员产生很多工作负荷通常活动阵列成员远多于热后备装置(50∶1的比率很常见)。
一种备选方案是使软件在中途停止迁移。这意味着盘驱动器保持它们的原有角色。两个盘都具有某些运用。完成若干这些部分迁移的带宽成本可以与迁移整个热后备装置相同,从而运用若干阵列成员。此方法稍微对热后备装置施加了更多压力,因为总是使用它们作为迁移目标,所以部分和完全迁移的组合可以是优选的。
转向以示意图的形式示出了根据本发明的一个优选实施例的装置的布置的图1,其中示出了可与主机(102)和数据存储组件(104)一起操作的用于检测在I/O工作负荷下易受故障影响的存储设备(106、108)的装置(100),装置(100)包括用于在数据存储组件中选择一对存储设备(106、108)的选择器组件(110)。数据迁移控制组件(112)可用于启动从第一存储设备(106)到第二存储设备(108)的数据迁移。I/O工作负荷镜像组件(114)可用于将I/O工作负荷从第一存储设备(106)镜像到第二存储设备(108)。存储设备故障检测组件(116)可用于检测所述存储设备(106、108)对中的一个或两个存储设备的任何故障。
选择器组件(110)还可以包括用于周期性地启动所述存储设备对的选择的计时器组件(118)。装置(100)可以与外部设备(未示出)通信来发信号通知任何检测到的故障,并且可以例如发信号通知需要操作员干预,或可以发信号通知以导致启动到运行中的替换盘的自动故障转移。
从以上描述将显而易见的是,所述存储设备对中的第一存储设备(106)可以是活动成员且所述存储设备对中的第二存储设备(108)可以是热后备装置。在备选方案中,所述存储设备对中的第一存储设备(106)可以是活动成员且所述存储设备对中的第二存储设备(108)可以是空闲设备。数据迁移控制组件(112)可以允许迁移完成,使得活动成员(106)可以与热后备装置或空闲设备(108)交换角色。
因此,形式为装置的本发明的优选实施例有利地解决了早期检测盘降级的问题,而没有以上所述的更复杂和冗繁的措施带来的额外成本和不便。所述装置可以在处理器设备中实现,所述处理器设备包括但不限于计算机主机系统或存储控制器设备中的处理器。
转向图2,其中以流程图的形式示出了一种其中可以实现根据本发明的优选实施例的操作方法的方法或逻辑布置。
图2示出了一种可与主机和数据存储组件一起使用的用于检测在I/O工作负荷下易受故障影响的存储设备的方法,所述方法开始于步骤200,通过其实现所述检测的过程的开始。所述方法可以包括检测用于响应于预定时间周期到期而启动选择(206)的计时器的到期的可选步骤(202),并可以等待(204)所述时间周期的到期。在步骤206,选择器组件在数据存储组件中选择一对存储设备。在步骤208,数据迁移控制组件启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移。在步骤210,I/O工作负荷镜像组件启动将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备,以及在步骤212,启动存储设备故障检测以检测所述存储设备对中的一个或两个存储设备的任何故障。如果在步骤214检测到故障,则在步骤216返回故障信号,过程在步骤222执行返回。
如果没有检测到故障,所述迁移可以继续以在步骤218完成。在步骤220,迁移已在步骤218完成,所选择的对可以改变角色;即,所述活动成员(参见图1,106)可以变成热后备装置或空闲设备而所述热后备装置或空闲设备(参见图1,108)可以变成其位置中的活动成员。
在一种备选方案中,所述迁移可以仅是部分的,并且步骤218和220可以省略,所述对成员(参见图1,106、108)保持它们的原有角色。在任一情况下,过程接下来都在步骤222执行返回。
因此,形式为方法或逻辑布置的本发明的优选实施例有利地解决了早期检测盘降级的问题,而没有以上所述的更复杂和冗繁的措施带来的额外成本和不便。
对本领域的技术人员将显而易见的是,本发明的优选实施例的方法的全部或部分可以被合适地和有效地包括在一个或多个逻辑装置中,所述逻辑装置包括布置为执行所述方法的诸步骤的逻辑元素,并且此类逻辑元素可以包括硬件组件,固件组件或它们的组合。
对本领域的技术人员将同样显而易见的是,根据本发明的优选实施例的逻辑布置的全部或部分可以被合适地包括在逻辑装置中,所述逻辑装置包括执行所述方法的诸步骤的逻辑元素,并且此类逻辑元素可以包括诸如例如可编程逻辑阵列或专用集成电路中的逻辑门之类的组件。此类逻辑布置还可以被包括在用于使用例如虚拟硬件描述符语言(其可以使用固定的或可传输的载波介质来存储和传输)在此类阵列或电路中临时或永久地建立逻辑结构的启用元素中。
可以理解,上述方法和布置还可以被合适地在运行在一个或多个处理器(未在附图中示出)上的软件中完全或部分地执行,并且可以作为诸如磁或光盘之类的任何适合数据载体(也未在附图中示出)上承载的计算机程序元素来提供所述软件。用于数据传输的通道同样可以包括所有描述的存储介质以及诸如有线或无线信号承载介质之类的信号承载介质。
本发明还可以被合适地包括为用于与计算机系统一起使用的计算机程序产品。此类实施方式可以包括固定在诸如计算机可读介质(例如,软盘、CD-ROM、ROM或硬盘)之类的有形介质上,或经过调制解调器或其他接口设备通过有形介质(包括但不限于光或模拟通讯线路)或使用无线技术(包括但不限于微波、红外线或其他传输技术)无形地传输到计算机系统的一系列计算机可读指令。所述计算机可读指令系列包括所有或部分先前在此描述的功能。
本领域的技术人员将理解,可以以多种用于与许多计算机体系结构或操作系统一起使用的编程语言来编写此类计算机可读指令。此外,可以使用任何当前或未来的存储器技术(包括但不限于半导体、磁或光)来存储此类指令,或使用任何当前或未来的通信技术(包括但不限于光、红外线或微波)来传输此类指令。构想了此类计算机程序产品可以作为附带有印刷或电子文档的可移动介质(例如,紧缩软件)来发布、被预加载到计算机系统(例如,加载到系统ROM或固定盘上),或者通过网络(例如,因特网或万维网)从服务器或电子公告版来发布。
在一种备选方案中,本发明的优选实施例可以以计算机实现的部署服务的方法的形式实现,所述方法包括部署计算机程序代码的步骤,当所述计算机程序代码被部署到计算机基础结构中并在其上执行时,所述计算机程序代码将导致所述计算机系统执行所述方法的所有步骤。
对本领域的技术人员将显而易见的是,在不偏离本发明的范围的情况下,可以对前述的示例性实施例做出许多改进和修改。
权利要求
1.一种可与主机和数据存储组件一起操作的用于检测在I/O工作负荷下易受故障影响的存储设备的装置,包括选择器组件,用于在所述数据存储组件中选择一对存储设备;数据迁移控制组件,用于启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移;I/O工作负荷镜像组件,用于将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备;以及存储设备故障检测组件,用于检测所述存储设备对中的一个存储设备的故障。
2.如权利要求1中所述的装置,其中所述选择器组件还包括用于周期性地启动所述选择的计时器组件。
3.如权利要求1或2中所述的装置,其中所述存储设备对中的所述第一存储设备是活动成员,并且所述存储设备对中的所述第二存储设备是热后备装置。
4.如权利要求1或2中所述的装置,其中所述存储设备对中的所述第一存储设备是活动成员,并且所述存储设备对中的所述第二存储设备是空闲设备。
5.如权利要求3中所述的装置,其中所述数据迁移控制组件允许所述迁移完成;并且其中所述活动成员与所述热后备装置交换角色。
6.如权利要求3中所述的装置,其中所述数据迁移控制组件允许所述迁移完成;并且其中所述活动成员与所述空闲设备交换角色。
7.如任一前述权利要求中所述的装置,其中所述数据存储组件包括盘存储装置。
8.如权利要求7中所述的装置,其中所述数据存储组件包括RAID阵列。
9.如任一前述权利要求中所述的装置,其中所述选择器组件选择具有最长闲置时间的存储设备作为所述存储设备对中的第二存储设备。
10.一种可与主机和数据存储组件一起使用的用于检测在I/O工作负荷下易受故障影响的存储设备的方法,包括以下步骤通过选择器组件在所述数据存储组件中选择一对存储设备;通过数据迁移控制组件启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移;通过I/O工作负荷镜像组件将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备;以及通过存储设备故障检测组件检测所述存储设备对中的一个存储设备的故障。
11.如权利要求10中所述的方法,其中所述选择步骤还包括响应于计时器组件的操作而周期性地启动所述选择。
12.如权利要求10或11中所述的方法,其中所述存储设备对中的所述第一存储设备是活动成员,并且所述存储设备对中的所述第二存储设备是热后备装置。
13.如权利要求10或11中所述的方法,其中所述存储设备对中的所述第一存储设备是活动成员,并且所述存储设备对中的所述第二存储设备是空闲设备。
14.如权利要求12中所述的方法,其中所述数据迁移控制组件允许所述迁移完成,并且其中所述活动成员与所述热后备装置交换角色。
15.如权利要求13中所述的方法,其中所述数据迁移控制组件允许所述迁移完成,并且其中所述活动成员与所述空闲设备交换角色。
16.如权利要求10至15中的任一权利要求中所述的方法,其中所述数据存储组件包括盘存储装置。
17.如权利要求16中所述的方法,其中所述数据存储组件包括RAID阵列。
18.如权利要求10至17中的任一权利要求中所述的方法,其中所述选择步骤包括选择具有最长闲置时间的存储设备作为所述存储设备对中的第二存储设备。
19.一种其上具有功能数据的数据载体,所述功能数据包括功能计算机数据结构,当所述功能数据被载入计算机系统并由其运行时,所述功能计算机数据结构使得所述计算机系统能够执行权利要求10至18中的任一权利要求中所述的方法的所有步骤。
20.一种包括计算机程序代码的计算机程序,当所述计算机程序被载入计算机系统并在其上执行时,所述计算机程序代码导致所述计算机系统执行权利要求10至18中的任一权利要求中所述的方法的所有步骤。
全文摘要
一种可与主机和数据存储组件一起操作的用于检测在I/O工作负荷下易受故障影响的存储设备的装置,包括选择器组件,用于在所述数据存储组件中选择一对存储设备;数据迁移控制组件,用于启动数据从所述存储设备对中的第一存储设备到所述存储设备对中的第二存储设备的迁移;I/O工作负荷镜像组件,用于将I/O工作负荷从所述存储设备对中的第一存储设备镜像到所述存储设备对中的第二存储设备;以及存储设备故障检测组件,用于检测所述存储设备对中的一个存储设备的故障。所述选择器组件还包括用于周期性地启动所述选择的计时器组件。
文档编号G06F11/16GK101021769SQ20071000698
公开日2007年8月22日 申请日期2007年1月31日 优先权日2006年1月31日
发明者M·J·费尔赫斯特, T·W·里卡德 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1