抑制记录盘故障的记录盘阵列系统的制作方法

文档序号:6447323阅读:173来源:国知局
专利名称:抑制记录盘故障的记录盘阵列系统的制作方法
技术领域
本发明主要涉及存储计算机访问的数据的存储系统,特别是涉及具有多个记录盘装置的记录盘阵列系统。
背景技术
记录盘阵列系统是与计算机连接的存储系统当中的一种。记录盘阵列系统也称为RAID(Redundant Arrays of Inexpensive Disks)系统,是具有阵列状配置的多个记录盘装置以及控制它们的控制部(记录盘阵列控制器)的存储系统。在记录盘阵列系统中,通过记录盘装置的并行动作对读出请求(数据的读出请求)和写入请求(数据的写入请求)进行高速处理,并且赋予数据冗余性。如D.Patterson等所著“A Case for Redundant Arrays of InexpensiveDisks(RAID)”,ACM SIGMOD Conference Proceedings,1988年6月,p.109-116中所公开的技术,记录盘阵列系统按照所附加的冗余数据的种类及其结构被分为5级。
另一方面,在特开2002-297320号公报中所公开的技术是根据基于数据写入和读出请求的负载信息,使记录盘阵列装置转向省电模式,抑制向特定记录盘的供电,从而减少电力消耗。

发明内容
记录盘阵列系统使用的记录盘装置当中也存在运行期间(寿命)短、无法24小时连续运行的记录盘装置。例如设计用于个人计算机的低成本的ATA(AT Attachment)记录盘等。ATA记录盘通常是假定使用条件为10小时/天来制造的,而记录盘阵列系统很多情况下是假定24小时、365天连续运行,当在记录盘阵列系统中使用ATA记录盘时,就会增加ATA记录盘每单位时间的运行时间,并会增大记录盘装置的故障率。因此需要抑制记录盘阵列系统中使用的记录盘装置的可靠性降低或者提高记录盘装置可靠性的技术。
因此提出以下的记录盘阵列系统,即一种具有记录盘阵列控制器和存储数据的多个记录盘装置的记录盘阵列系统。多个记录盘装置分别具有记录数据的媒体、对媒体进行数据读写的记录头以及控制记录头位置的记录头位置控制部。记录盘阵列控制器从记录盘装置内的存储区域读出数据来进行检查该存储区域是否发生故障的在线数据检查处理;在第1规定时机停止对记录盘装置的在线数据检查处理;在线数据检查处理停止后,向记录盘装置发出要将记录盘装置的记录头移动到与该记录头对媒体进行数据读写时的位置不同的位置的卸载有效指示。记录盘装置的记录头位置控制部根据接收到的卸载有效指示移动所述记录头的位置。
可以提高记录盘阵列系统中使用的记录盘装置的可靠性。


图1是一个实施例的计算机系统的系统结构示例图。
图2是记录盘装置的结构示例图。
图3是记录盘管理表的一个例子的示图。
图4是卸载辅助动作处理流程的一个例子的示图。
图5是卸载监控动作处理流程的一个例子的示图。
具体实施例方式
以下用

本发明的一个实施例。以下说明的实施例为一个例子,但本发明并不限于此。
(1)计算机系统的结构例以下用图1说明本实施例中的计算机系统的结构例。
在图1中,100为主机,200为记录盘阵列控制器,500为记录盘装置群,700为管理终端。记录盘阵列控制器200与记录盘装置群500相连接,记录盘阵列控制器200与记录盘装置群500构成记录盘阵列系统。另外,主机100和管理终端700与记录盘阵列控制器200相连接。
记录盘装置群500由多个记录盘装置501~504构成。在记录盘阵列系统中,各个不同的记录盘装置中存储的多个数据构成RAID的奇偶校验群。构成奇偶校验群的数据当中的一部分是主机100访问的数据,其余数据是由主机100访问的前述数据生成的奇偶校验数据。奇偶校验数据是当某记录盘装置的存储区域发生故障时,用于恢复该存储区域内所存储的数据的冗余数据。例如通过计算构成同一奇偶校验群的其它数据的异或来生成奇偶校验数据。另外,记录盘装置501~504构成逻辑卷LU520。
记录盘阵列控制器200包括控制记录盘阵列系统的CPU201、存储CPU201执行的程序或信息的存储器202、临时存储主机100访问的数据的超高速缓冲存储器203、与主机之间进行数据收发的主机FC I/F204、与记录盘装置群500之间进行数据收发的记录盘I/F206、与管理终端700之间进行控制信息收发的管理I/F207以及计时器208,它们相互之间经内部通信线路连接,可以进行通信。
存储器202具有以下程序、信息和信息存储区域(a)用于控制记录盘阵列系统的RAID控制程序210;(b)向记录盘装置群500发出指令的记录盘指令发出程序220;(c)对记录盘装置群500进行管理的记录盘管理程序230;(d)记录记录盘装置群500中包含的各记录盘装置的信息的记录盘管理表240;(e)计量记录盘装置的动作时间的记录盘动作时间计时程序250;(f)根据一定的基准判定记录盘装置动作时间的记录盘动作时间判定程序255;(g)将有关记录盘装置的信息通知管理终端700的记录盘信息通知程序260;(h)存储判断是否指示记录盘装置卸载时使用的非访问时间阈值的非访问时间阈值设定区域270;(i)存储没有根据来自主机100的请求对记录盘装置的访问的时间的计时器值存储区域275;(j)与管理终端700之间进行通信的管理终端通信程序280;(k)监视是否有对记录盘装置的访问的访问监视程序261;(l)指示记录盘装置卸载有效或无效的卸载控制程序262;(m)实施是否从记录盘装置读出数据的检查即在线数据检查的在线检查程序263。
在线检查程序263执行的在线数据检查例如有两种方法。第一种方法是检查是否从记录盘装置读出数据的称为验证的方法。第二种方法是从多个记录盘装置读出构成奇偶校验群的多个数据,检查作为RAID的奇偶校验群是否具有一致性(例如奇偶校验数据是否是属于同一奇偶校验群的其它数据的异或)的称为奇偶校验的方法。
在线数据检查是在记录盘阵列控制器200执行主机100向记录盘阵列系统发出的访问请求的空闲时间内,在记录盘阵列控制器的控制下进行。具体地说,由在线检查程序263与来自主机100的访问无关地从记录盘装置的存储区域中读出数据。按照上述第一种方法,如果数据读出成功则为正常,如果失败则为错误。按照上述第二种方法,进一步检查在线检查程序263读出的数据的内容,如果奇偶校验群的数据具有一致性则为正常,如果不具有一致性则为错误。用在线数据检查检测到错误的情况下,记录盘阵列控制器200对检测到错误的存储区域中存储的数据根据与该数据属于同一奇偶校验群的数据进行恢复,然后存储在记录盘装置的其它存储区域中。
卸载处理后述。
管理终端700具有接收用户或维护人员在记录盘阵列控制器200中设定的设定信息的输入部710和输出从记录盘阵列控制器200取得的信息的输出部720。输入部710为键盘、鼠标器等,输出部720为显示器等。
图2是记录盘装置501的结构示例图。记录盘装置502~504都具有同样的结构。
450是由旋转机构驱动旋转、存储数据的媒体,460是对媒体450进行数据写入/读出的记录头,省略了到媒体450的旋转机构的图示。
434是与外部的接口即外部I/F,在本实施例中,与记录盘阵列控制器200的记录盘I/F206连接。431是对记录盘装置501进行控制的处理器,432是存储处理器431执行的程序或数据的存储器,435是对记录头460的位置进行控制的记录头位置控制部,436是经记录头460对媒体450进行数据写入/数据读出的接口即媒体I/F。
存储器432包括以下程序和存储区域(a)经外部I/F434从记录盘阵列控制器200接收指令的指令接收程序441;
(b)进行记录盘装置501内的数据传送的数据传送程序442;(c)把从记录盘阵列控制器200接收到的指令所指定的地址转换成表示媒体450上实际位置的地址的地址转换程序443;(d)对数据进行缓冲的数据缓冲器444;(e)控制对媒体450的访问的媒体访问程序445;(f)决定记录头460的位置的记录头位置决定程序446;(g)进行记录头460的加载/卸载控制的卸载控制程序451。
在此对卸载进行说明。在加载/卸载方式对应的记录盘装置中,可使记录头460退回到离开媒体450的卸载位置。卸载位置位于离开媒体的位置上,所以记录头无法从该位置对媒体进行数据读写,并且媒体与记录头不接触。因此,通过使记录头460退回到卸载位置,就可以避免记录头460与媒体450接触,从而降低记录盘装置的故障率。另外,记录头460位于卸载位置的情况下,记录头460通常由支承记录头的支承部(图上未示出)支承。但在本实施例中,不限于将记录头支承在支承部上的状态,只要是媒体450不在记录头下方、可以避免记录头460与媒体450接触的状态,就认为记录头处于卸载位置。
另外,在记录头460退回到卸载位置的状态下,媒体自身也可以继续旋转。因此,在有对记录盘装置的访问时,在与媒体450停止旋转的情况相比十分短暂的时间内,可将记录头460移动到加载位置,即可以将记录头460移动到对媒体450进行数据读写的位置。在媒体450的旋转停止的状态下主机100对媒体上记录的数据进行访问的情况下,再次启动媒体旋转需要时间,因此从主机100发出访问指令到记录盘阵列系统对指令进行应答的时间变长,记录盘阵列系统对主机100的应答就可能超时。但是,如上所述,只要在记录头退回到卸载位置的状态下,媒体450仍在继续旋转,记录头就可以在短时间内返回加载位置,对媒体450上记录的数据进行访问,从而记录盘阵列系统的应答不会超时。
图3所示的是记录盘管理表240的一个例子。
记录盘管理表240中存储的参数包括表示记录盘装置识别号码的“记录盘号”,表示记录盘装置的累计通电时间的“累计通电时间”,表示记录盘装置的累计卸载时间的“累计卸载时间”,表示某期间内记录盘装置的通电时间的“差分通电时间”,表示某期间内的卸载时间的“差分卸载时间”,表示累计通电时间阈值的“累计通电时间阈值”,表示非卸载即加载状态的累计时间比率的累计非卸载率阈值的“累计非卸载率阈值”,以及表示某期间内的非卸载即加载状态的时间比率的差分非卸载率阈值的“差分非卸载率阈值”。
在此,累计非卸载率定义为(1-“累计卸载时间”)/“累计通电时间”的百分率。差分非卸载率定义为(1-“差分卸载时间”)/“差分通电时间”的百分率。“累计通电时间阈值”中将记录盘的产品寿命或产品寿命的近似目标值设定为通电时间。
用户或维护人员用管理终端700的输入部710输入“累计通电时间阈值”、“累计非卸载率阈值”、“差分非卸载率阈值”和“非访问时间阈值”。管理终端700经管理I/F207将从输入部接收到的信息发送到记录盘阵列控制器200的管理终端通信程序280,管理终端通信程序280将接收到的信息设定在记录盘管理表240或非访问时间阈值设定区域270中。
(2)记录盘装置的卸载功能以下用图2说明记录盘装置501~504的卸载功能。记录盘装置501~504具有相同的结构,在此以记录盘装置501为例进行说明。
指令接收程序441经外部I/F434接收记录盘阵列控制器200的卸载控制程序262发出的卸载有效指令或卸载无效指令,然后指令接收程序441判断指令的种类。
指令接收程序441判断接收指令为卸载有效指令的情况下,卸载控制程序451指示记录头位置控制部435,将记录头460移动到卸载位置。相反,指令接收程序441判断接收指令为卸载无效指令的情况下,卸载控制程序451指示记录头位置控制部435,将记录头460移动到加载位置。
另外,在接收指令为卸载有效指令的情况下,卸载控制程序451也可以不立即向记录头位置控制部435发出卸载指示,而是经过一定时间后指示记录头位置控制部435,将记录头460移动到卸载位置。而当接收指令为卸载无效指令的情况下,卸载控制程序451也可以不立即向记录头位置控制部435发出指示,而是当指令接收程序441从记录盘阵列控制器200接收到读出请求或写入请求等I/O系列指令时,再指示记录头位置控制部435,把记录头460移动到加载位置。
(3)记录盘阵列控制器的卸载辅助动作记录盘阵列控制器200根据来自主机100的访问请求实施对记录盘装置501~504的访问。记录盘阵列控制器200在主机100的访问请求频繁发生时,实施对记录盘装置的访问和在线数据检查,而当主机100没有发来访问请求时,停止在线数据检查并使记录盘装置的记录头处于卸载状态,从而降低记录盘装置的故障率。
以下以对记录盘装置501的控制为例,用图4的流程图说明记录盘阵列控制器200进行的卸载辅助动作处理流程的一个例子。
首先,卸载控制程序262向记录盘装置501发出卸载无效指令,使记录盘装置501的记录头460处于加载状态(步骤1001);然后,记录盘管理程序230利用在线检查程序263开始对记录盘装置501进行在线数据检查(步骤1002)。
访问监视程序261监视计时器208,开始计量主机100未对记录盘装置501中所存储数据的访问的时间(步骤1003)。
访问监视程序261监视记录盘指令发出程序220是否向记录盘I/F206发出对记录盘装置的访问指令,即是否有根据主机100的请求对记录盘装置501的访问(步骤1004)。主机100发出了对记录盘阵列系统的读出请求或写入请求等访问请求指令的情况下,记录盘阵列控制器200接收该访问请求指令,RAID控制程序210确定存储访问对象数据的记录盘装置,记录盘指令发出程序220向所确定的记录盘装置发出I/O系列指令。因此访问监视程序261监视记录盘指令发出程序220是否向记录盘I/F206发出了I/0系列指令。
在没有根据主机100的请求对记录盘装置501的访问的情况下,转移到步骤1006;在有根据主机100的请求对记录盘装置501的访问的情况下,访问监视程序261清空计时器的值(步骤1005),然后转移到步骤1006。
在步骤1006,记录盘监视程序261判断在步骤1003开始计时的计时器的值是否达到了非访问时间阈值设定区域270中设定的非访问时间阈值(步骤1006)。如果没有达到非访问时间阈值,转移到步骤1004。
在达到非访问时间阈值的情况下,在线检查程序263停止在线数据检查(步骤1007);卸载控制程序262向记录盘装置501发出卸载有效指令,使记录头460处于卸载状态(步骤1008)。
访问监视程序261监视记录盘指令发出程序220是否向记录盘I/F206发出了指令,即,是否有根据主机100的请求对记录盘装置501的访问(步骤1009)。在没有根据主机100的请求对记录盘装置501的访问的情况下,重复步骤1009。
在有了根据主机100的请求对记录盘装置501的记录盘访问的情况下,转移到步骤1001。在记录盘装置501的记录头460处于卸载状态时,如果没有出现根据主机100的请求对该记录盘装置501的访问,卸载控制程序262发出卸载无效指令,使记录盘装置501的记录头460处于加载状态(步骤1001)。此后的处理如上所述。
另外,在上述步骤1004中记载的是根据主机100的请求进行对记录盘装置501的记录盘访问,但不限于根据主机100的请求执行的记录盘访问,也可以由访问监视程序261监视记录盘指令发出程序220发出的、产生经记录头460对媒体450的访问的全部指令。
以上说明的是卸载辅助动作的处理流程。
(4)卸载监控动作记录盘动作时间计时程序250计算一定周期内各记录盘装置501~504的累计通电时间,并将累计值设定在图3的记录盘管理表240的“累计通电时间”内。
记录盘动作时间计时程序250还计算从图4的步骤1008到步骤1001的时间,将其作为记录头460处于卸载状态的累计时间设定在记录盘管理表240的“累计卸载时间”内。
另外,记录盘动作时间计测程序250将某特定期间内的通电时间和卸载时间分别设定在记录盘管理表240的“差分通电时间”和“差分卸载时间”内。该“特定期间”由管理终端700经输入部710由用户或管理人员接收,并且经管理I/F207设定在记录盘阵列控制器200中。
图5所示的是记录盘动作时间判定程序255进行的卸载监控动作处理流程的一个例子。
记录盘动作时间判定程序255判断记录盘管理表240的“累计通电时间”是否超过了“通电时间阈值”(步骤2001);超过了阈值的情况下,记录盘动作时间判定程序255利用记录盘信息通知程序260将累计通电时间超过阈值的情况通知管理终端700(步骤2002),然后转移到步骤2003。未超过阈值的情况下,转移到步骤2003。
接着,记录盘动作时间判定程序255判断累计非卸载率是否超过了记录盘管理表240的“累计非卸载率阈值”(步骤2003)。超过了阈值的情况下,记录盘动作时间判定程序255利用记录盘信息通知程序260将累计非卸载率超过阈值的情况通知管理终端700(步骤2004),然后转移到步骤2005。未超过阈值的情况下,转移到步骤2005。
然后,记录盘动作时间判定程序255判断差分非卸载率是否超过了记录盘管理表240的“差分非卸载率阈值”(步骤2005)。超过了阈值的情况下,记录盘动作时间判定程序255利用记录盘信息通知程序260将差分非卸载率超过阈值的情况通知管理终端700(步骤2006),然后转移到步骤2001。未超过阈值的情况下,转移到步骤2001。
以上说明的是卸载监控动作的处理流程。管理终端700接收到记录盘信息通知程序260的通知后,将所通知的信息输出到输出部720。
另外,记录盘信息通知程序260不仅按照记录盘动作时间判定程序255的指示动作,还按照经管理终端接收到的来自用户或维护人员的指示动作。例如,用户或维护人员获取记录盘阵列控制器200具有的记录盘管理表240的情况下,向管理终端700的输入部710输入信息获取请求。记录盘阵列控制器200的记录盘信息通知程序260经输入部710和管理I/F207接收信息获取请求,然后将记录盘管理表240中存储的信息通知给管理终端700。管理终端700由输出部720输出所通知的信息。
按照以上说明的实施例,在没有出现主机100对记录盘阵列系统的访问的时间段内,将记录盘装置的记录头退回到卸载位置,就可以抑制记录盘装置的媒体与记录头的接触,从而可以降低记录盘装置的故障率。
而且,在记录盘装置的记录头位于卸载位置的状态下停止在线数据检查,在记录头处于加载状态的情况下进行在线数据检查,就可以有效地实施在线数据检查,提高记录盘装置的可靠性。即,可以并用记录头卸载和在线数据检查,从而可以利用记录头卸载引起的记录盘装置故障率降低、在线数据检查导致的故障存储区域检出以及检出的故障存储区域中所存储的数据的恢复来提高记录盘装置的可靠性。
另外,在记录盘装置的记录头处于退回到卸载位置的状态下,也可以维持媒体的旋转,因此可以抑制对主机100的应答性能的劣化(应答时间变长)。
另外,作为图4所示卸载辅助动作的替代,卸载控制程序也可以以一定的时间间隔交互发出卸载无效指令和卸载有效指令,从而以一定的时间间隔重复使卸载无效和卸载有效。这种情况下,“一定的时间间隔”的值最好不超过在记录盘的寿命期间内使记录头卸载无效/有效的重复次数的规格限制的值,并且最好可以由用户或维护人员通过管理终端的输入部710设定在记录盘阵列系统中。这种情况下,一旦卸载控制程序262发出卸载无效指令,此后记录盘管理程序230利用在线检查程序263开始进行在线数据检查,在卸载控制程序262发出卸载有效指令之前停止执行在线数据检查程序。结果,可以与遵守记录盘运行开始和停止的重复限制相当地遵守记录头的卸载无效/有效的重复限制。
而且,用户还可以选择执行图4所示的卸载辅助动作(选择分支(A))或者选择由卸载控制程序以一定的时间间隔重复使卸载无效或卸载有效(选择分支(B))。这种情况下,用户通过管理终端700的输出部720上显示出来的选择画面来选择是否利用上述选择分支(A)或选择分支(B)之任意一种方法控制卸载的有效、无效,然后用输入部710输入选择结果。来自用户的输入经管理I/F207被输入到记录盘阵列控制器200,CPU201根据来自用户的输入选择执行上述选择分支(A)或选择分支(B)之任意一种方法。而且,不仅是上述选择分支(A)和选择分支(B),也可以准备不进行记录头卸载而是使记录头始终处于加载状态的称为(选择分支(C))的选择分支,按照与上述同样的方法,用户用管理终端700的输入部710输入选择了上述选择分支(A)、选择分支(B)或选择分支(C)当中的哪一个。选择了选择支(C)的情况下,记录盘阵列控制器200不进行记录头卸载的有效化处理。
另外,在上述实施例中记载了ATA记录盘作为记录盘装置的一个例子,但从提高记录盘装置可靠性的角度讲,记录盘装置当然可以是ATA记录盘以外的记录盘装置,例如比ATA记录盘的可靠性低的记录盘装置,也可以是比ATA记录盘的可靠性高的FC记录盘等记录盘装置。
权利要求
1.一种记录盘阵列系统,存储计算机访问的数据,其特征在于,它具有记录盘阵列控制器和存储数据的多个记录盘装置;所述多个记录盘装置分别具有记录数据的媒体、对媒体进行数据读写的记录头以及控制记录头位置的记录头位置控制部;所述记录盘阵列控制器通过从记录盘装置内的存储区域读出数据来进行检查该存储区域是否发生故障的在线数据检查处理;在第一规定时机停止对记录盘装置的在线数据检查处理;所述在线数据检查处理停止后,为使所述记录盘装置的记录头移动到与该记录头对媒体进行数据读写时的位置不同的位置,向所述记录盘装置发出卸载有效指示;所述记录盘装置的记录头位置控制部根据所述卸载有效指示移动所述记录头的位置。
2.如权利要求1所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器为在第二规定时机使所述记录盘装置的记录头移动到该记录头可对媒体进行数据读写的位置,还向所述记录盘装置发出卸载无效指示,所述记录头移动后,再启动对所述记录盘装置的在线数据检查处理。
3.如权利要求1所述的记录盘阵列系统,其特征在于,所述第一规定时机是最后从计算机接收到对存储在所述记录盘装置中的数据的访问请求起,经过规定时间的时刻。
4.如权利要求3所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器计量最后从计算机接收到对存储在所述记录盘装置中的数据的访问请求起的经过时间,根据计量结果判断所述第一规定时机。
5.如权利要求2所述的记录盘阵列系统,其特征在于,所述第二规定时机是停止对所述记录盘装置的在线数据检查处理后,首次从计算机接收到对存储在所述记录盘装置中的数据的访问请求的时刻。
6.如权利要求2所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器每隔规定期间重复发出卸载无效指示和卸载有效指示。
7.如权利要求2所述的记录盘阵列系统,其特征在于,所述多个记录盘装置分别为ATA记录盘。
8.如权利要求2所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器具有向管理终端输出信息的管理接口;所述记录盘阵列控制器计量所述多个记录盘装置各自的通电时间,在通电时间超过规定阈值的情况下,经所述管理接口将该情况通知所述管理终端。
9.如权利要求2所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器具有向管理终端输出信息的管理接口;所述记录盘阵列控制器对所述多个记录盘装置分别计量其记录头位于可对媒体进行数据读写的位置上的累计时间,并经所述管理接口将计量结果输出到所述管理终端。
10.如权利要求9所述的记录盘阵列系统,其特征在于,所述记录盘阵列控制器对所述多个记录盘装置分别计量在规定期间内其记录头位于可对媒体进行数据读写的位置上的时间,并经所述管理接口将计量结果输出到所述管理终端。
全文摘要
一种记录盘阵列系统,具有记录盘阵列控制器和多个记录盘装置。记录盘装置具有媒体、记录头以及记录头位置控制部。记录盘阵列控制器执行在线数据检查处理,在第一规定时机停止对记录盘装置的在线数据检查处理,在线数据检查处理停止后,为使记录盘装置的记录头移动到与该记录头对媒体进行数据读写时的位置不同的位置,向记录盘装置发出卸载有效指示。记录盘装置的记录头位置控制部根据接收到的卸载有效指示移动记录头的位置。
文档编号G06F11/16GK1702611SQ200410104118
公开日2005年11月30日 申请日期2004年12月29日 优先权日2004年5月25日
发明者八木泽育哉, 小河卓二, 高本贤一, 常田义则, 加纳东 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1