CN105302677A - 信息处理装置和信息处理方法 - Google Patents
信息处理装置和信息处理方法 Download PDFInfo
- Publication number
- CN105302677A CN105302677A CN201410487610.9A CN201410487610A CN105302677A CN 105302677 A CN105302677 A CN 105302677A CN 201410487610 A CN201410487610 A CN 201410487610A CN 105302677 A CN105302677 A CN 105302677A
- Authority
- CN
- China
- Prior art keywords
- storage area
- block group
- group
- block
- judged
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0727—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1816—Testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1883—Methods for assignment of alternate areas for defective areas
- G11B20/1889—Methods for assignment of alternate areas for defective areas with discs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种信息处理装置,其具备:存储介质;和控制部,其基于与针对该存储介质具有的存储区域的访问履历相关的第一信息,而按每个存储区域求取对存储区域的访问的延迟时间,其中,该延迟时间以对存储区域不执行重试地进行访问的时间为基准,并且将该延迟时间超过规定的容许延迟时间的存储区域判断为不良区域。
Description
本申请基于美国临时专利申请62/030,275号(申请日:2014年7月29日)并要求其优先权。该在先申请的全部内容通过引用并入此处。
技术领域
本发明涉及信息处理装置和信息处理方法。
背景技术
在使用磁盘装置和/或SSD(SolidStateDrive,固态硬盘)等存储装置的RAID(RedundantArraysofInexpensiveDisks,廉价磁盘冗余阵列)系统中,在构成RAID的存储装置发生故障的情况下,进行RAID的恢复处理(所谓重建处理)。在RAID系统中,一般进行重建处理。重建处理是利用存储在构成RAID的多个存储装置中的、发生故障的存储装置以外的其他存储装置中的数据,恢复存储在该发生故障的存储装置中的数据,并写入到预先设定的存储装置(替代装置)中的处理。
重建处理所需要的时间(RAID恢复时间)伴随存储装置的大容量化而增加。由此,重建处理中RAID系统的性能下降和/或其他的存储装置的故障所产生的风险增大。因此,提出重建协助功能的方案,即,通过使用存储在发生故障的存储装置中的数据中可利用的数据进行重建处理,来实现RAID恢复时间的缩短。在重建协助功能中,要求预测(判断)对发生故障的存储装置不能进行访问的不良区域。
然而,在重建辅助功能中,在不能正确地预测不良区域的情况下,重建处理时会因重试而发生延迟,或者过量地预测不良范围使得对其他存储装置的访问负荷增大,导致RAID恢复时间的长时间化。
发明内容
本发明提供一种能缩短重建所需要的时间的信息处理装置和信息处理方法。
根据本实施方式,提供一种信息处理装置,其具备:存储介质;和控制部,其基于关于针对该存储介质具有的存储区域的访问履历的第一信息,按每个存储区域求取对存储区域的访问的延迟时间,该延迟时间以对存储区域不执行重试地进行访问的时间为基准,并且将该延迟时间超过规定的容许延迟时间的存储区域判断为不良区域。
附图说明
图1是表示应用了第一实施方式涉及的信息处理装置的磁盘装置的硬件结构的一例的图。
图2是表示第一实施方式涉及的磁盘装置存储的块组地址信息表的一例的图。
图3是表示第一实施方式涉及的磁盘装置存储的块组不良信息表的一例的图。
图4是表示第一实施方式涉及的对磁盘装置的磁盘的访问处理的流程的一例的流程图。
图5是表示第一实施方式涉及的磁盘装置进行的块组不良信息表的更新处理的流程的一例的流程图。
图6是表示第一实施方式涉及的磁盘装置进行的重建辅助模式有效化处理的流程的一例的流程图。
图7是表示第一实施方式涉及的磁盘装置进行的重建辅助处理(重建辅助模式中的读/写处理)的流程的一例的流程图。
图8是表示第一实施方式涉及的磁盘装置进行的不良判断结果的获取处理的流程的一例的流程图。
图9(a)~(c)是用于说明在第二实施方式涉及的磁盘装置中将上级组群判断为不良区域的处理的一例的图。
具体实施方式
下面参照附图来详细说明实施方式涉及的信息处理装置和信息处理方法。再有,本发明不限于该实施方式。
(第一实施方式)
首先,使用图1,说明应用了第一实施方式涉及的信息处理装置的磁盘装置的硬件结构。图1是表示应用了第一实施方式涉及的信息处理装置的磁盘装置的硬件结构的一例的图。在下面的说明中,对将本实施方式涉及的信息处理装置应用于磁盘装置的例子进行说明,但是不限于此,也可以将本实施方式涉及的信息处理装置应用于SSD等存储装置中。
如图1所示,本实施方式涉及的磁盘装置1包括:CPU(CentralProcessingUnit,中央处理单元)10、ROM(ReadOnlyMemory,只读存储器)11、RAM(RandomAccessMemory,随机存取存储器)12、驱动控制部13、主机IF(Interface,接口)控制部14、数据缓冲控制部15、数据缓冲器16、读写控制部17、磁盘18、以及磁头组件(ヘッドスタックアッセンブリ)19。
磁盘18(存储介质的一例)由磁记录介质等构成,具有能进行数据的读取或写入的多个块组(存储区域的一例)。在本实施方式中,块组是磁盘18的各磁道(轨道)的半周。在本实施方式中,虽然以磁盘18上的各磁道的半周作为1个块组,但是只要以磁盘18的盘面上的1个区域作为块组即可,并不限于此。例如也可以以磁盘18的各磁道作为1个块组。
磁头组件19是保持磁头并使该磁头移动到磁盘18上的规定位置(进行数据的读取或写入的位置)的机构。
CPU10是控制磁盘装置1整体的控制部。具体而言,CPU10执行对磁盘18的访问(数据的读取或写入)的控制、判断块组是否为不良区域的不良判断处理、将在进行存储在块组中的数据的重建时被判断为不良区域的块组通知到主机2的重建辅助处理、在该重建辅助处理之前检测磁盘18的各物理属性的异常的重建辅助模式有效化处理等。
ROM11存储由CPU10执行的各种程序。RAM12作为CPU10的作业区域使用。在本实施方式中,RAM12(存储部的一例)保存:存储磁盘18的块组的LBA(LogicalBlockAddress,逻辑块地址)的块组地址信息表200(参照图2)、以及存储由CPU执行的不良判断处理的结果的块组不良信息表400(参照图4)。
驱动控制部13由CPU10控制,执行将从主机2接收到的数据写入到磁盘18中、以及从磁盘18读取数据。
主机IF控制部14对在磁盘装置1与主机2之间发送接收数据和/或命令等各种信息进行控制。主机2具备例如包含在PC(PersonalComputer,个人计算机)和/或服务器等中的RAID(RedundantArraysofInexpensiveDisks,廉价磁盘冗余阵列)控制器。RAID控制器按照SATA(SerialATA,串行ATA)标准或SAS(SerialAttachedSCSI,串行连接SCSI)标准等接口标准,与磁盘装置1之间发送接收数据和/或命令等各种信息。
数据缓冲控制部15由CPU10控制,将从主机2接收并写入到磁盘18中的数据(写数据)和/或从磁盘18读取的数据(读数据)写入到数据缓冲器16中。此外,数据缓冲控制部15从数据缓冲器16读取写数据并输出到读写控制部17。进而,数据缓冲控制部15从数据缓冲器16读取读数据,通过主机IF控制部14输出到主机2。即、数据缓冲器16临时存储写数据和/或读数据。
读写控制部17由CPU10控制,对磁头组件19输出指示对磁盘18进行访问(数据的读取或写入)的读写信号。由此,读写控制部17控制对磁盘18的访问。
接着,使用图2来说明存储在本实施方式涉及的磁盘装置1具有的RAM12中的块组地址信息表200。图2是表示第一实施方式涉及的磁盘装置存储的块组地址信息表的一例的图。
如图2所示,块组地址信息表200与作为能识别块组的信息的一例的块组编号相对应地存储:作为能识别在磁盘18中配置有块组的区(zone)的信息的一例的区编号、作为能识别在磁盘18中块组所属的柱面的信息的一例的柱面编号、作为能识别对块组进行访问的磁头的信息的一例的磁头编号、包含在块组中的扇区的LBA(LogicalBlockAddress,逻辑块地址)、以及作为能识别块组群(第一存储区域群的一例)的信息的一例的块组群编号。
这里,块组群具有多个块组,该多个块组按照基于块组的物理属性(例如磁头、区、柱面等)的分类条件来分类。此外,分类条件是基于块组的物理属性而设定的、用于块组分类的条件。在本实施方式中,分类条件是磁头编号共用、区编号共用、以及柱面编号连续。
接着,使用图2来说明本实施方式涉及的磁盘装置1中的块组的分类方法。
在本实施方式中,如图2所示,CPU10将多个块组中磁头编号和区编号共用且柱面编号连续的块组分类为1个块组群。例如,如图2所示,由块组编号:0~3识别的4个块组,其区编号:0和磁头编号:0共用,柱面编号:0、1连续。因此,CPU10将该4个块组分类为1个块组群(块组群编号:0)。根据区编号、柱面编号和磁头编号的组合,也能分类为2个块组,但是通过将柱面分成2个,可分类为4个块组。
接着,使用图3来说明存储在本实施方式涉及的磁盘装置1具有的RAM12中的块组不良信息表400。图3是表示第一实施方式涉及的磁盘装置存储的块组不良信息表的一例的图。
如图3所示,块组不良信息表400中与块组编号相对应地存储有不良判断结果、重试信息、块数、替换信息、读取时间信息和写入时间信息。这些信息是关于针对块组的访问履历的第一信息的一例。这里,不良判断结果是由CPU进行的针对块组的不良判断处理的结果。在本实施方式中,在块组被判断为不良区域的情况下,不良判断结果显示“不良”,在块组被判断为正常的情况下,不良判断结果显示“正常”。
重试信息是在针对块组的数据的读取(读)中执行的重试的次数、以及在针对块组的数据的写入(写)中执行的重试的次数的信息。
块数是表示对包含在块组中的扇区进行数据读取(读)的次数、以及对包含在块组中的扇区进行写入(写)的次数的信息。替换信息表示在对块组的访问中执行了替换处理的扇区即替换扇区(备用扇区)(替换区域的一例)的数量。
读取时间信息是表示以对块组不执行重试地进行数据读取(访问)的时间为基准的、读取来自该块组的数据所需要的时间的比例的信息。写入时间信息是表示以对块组不执行重试地进行数据写入(访问)的时间为基准的、对该块组写入数据所需要的时间的比例的信息。
接着,使用图4来说明本实施方式涉及的对磁盘装置1的磁盘18的访问处理。图4是表示第一实施方式涉及的对磁盘装置的磁盘的访问处理的流程的一例的流程图。
CPU10通过主机IF控制部14从主机2接收能指定读取数据的块组(下面称为读范围)或写入数据的块组(下面称为写范围)的命令。
CPU10从由接收到的命令特定的读范围进行数据读取、或者对由接收到的命令特定的写范围进行数据写入(B501)。
CPU10在对磁盘18具有的块组执行数据的读取或写入时,对存储在RAM12中的块组不良信息表400执行更新处理(B502)。CPU在块组不良信息表400的更新处理结束时,结束对块组的访问。
接着,使用图5来说明本实施方式涉及的磁盘装置1进行的块组不良信息表400的更新处理。图5是表示第一实施方式涉及的磁盘装置进行的块组不良信息表的更新处理的流程的一例的流程图。
首先,CPU10在对在图4的B501中进行了访问的写范围(或读范围)的块组(下面称为更新对象组)的访问中,判断是否执行替换到磁盘18具有的替换扇区的替换处理(B601)。
在执行了替换到替换扇区的替换处理的情况(B601:是)下,CPU10在块组不良信息表400中更新与更新对象组的块组编号对应地存储的替换信息(B602)。在本实施方式中,CPU10在对更新对象组的访问中,将更新对象组包含的扇区中进行了替换处理的扇区(下面称为替换源)的数量和由与更新对象组的块组编号对应地存储的替换信息所表示的扇区的数量相加。
接着,除了对替换源执行的重试的次数以外,CPU10在块组不良信息表400中更新与更新对象组的块组编号对应地存储的重试信息和块数(B603)。在本实施方式中,在从更新对象组进行了数据读取的情况下,除了对替换源执行的读重试的次数以外,CPU10将在对更新对象组进行的数据读取中执行的读重试的次数和由与该更新对象组的块组编号对应地存储的重试信息(读)所表示的重试次数相加。
此外,在对更新对象组进行了数据写入的情况下,除了在对替换源的数据写入中执行的写重试的次数以外,CPU10将在对更新对象组进行的数据写入中执行的写重试的次数和由与更新对象组的块组编号对应地存储的重试信息(写)所表示的重试次数相加。
在没有执行替换到替换扇区的替换处理的情况(B601:否)下,CPU10不进行块组不良信息表400的替换信息的更新,而是在块组不良信息表400中,对与更新对象组的块组编号对应地存储的重试信息和块数(读或写)进行更新(B604)。
在本实施方式中,在对更新对象组进行了数据读取的情况下,CPU10将对更新对象组中包含的扇区实际进行了数据读取(读)的扇区数和与更新对象组的块组编号对应地存储的块数(读)相加。此外,在对更新对象组进行了数据写入的情况下,CPU10将对更新对象组中包含的扇区实际进行了数据写入(写)的扇区数和与更新对象组的块组编号对应地存储的块数(写)相加。
接着,CPU10(控制部的一例)基于关于针对更新对象组的访问履历的信息(在本实施方式中,存储在块组不良信息表400中的重试信息、块数、替换信息等),求取对该更新对象组的访问的延迟时间,判断该延迟时间是否超过规定的容许延迟时间(B605)。这里,延迟时间是以对块组不执行重试地进行访问的时间为基准的、对块组的访问的延迟时间。规定的容许延迟时间是以对块组不执行重试地进行访问的时间为基准的、在对块组的访问中容许的延迟时间。
在本实施方式中,CPU10将下述时间作为延迟时间求取:对因为在对更新对象组的访问中所执行的替换处理而被分配成替换扇区的扇区的访问所需要的时间(下面称为第一延迟时间)和重试所需要的时间(下面称为第二延迟时间)相加得到的时间。具体而言,CPU10使用下述式(1)求取第一延迟时间。
第一延迟时间=替换扇区数×(寻道时间×2+旋转等待时间+替换扇区访问时间)…(1)
这里,替换扇区数是在块组不良信息表400中与更新对象组的块组编号对应地存储的替换信息所表示的替换扇区的数量。寻道时间是搜寻到替换扇区所需要的时间。在本实施方式中,寻道时间是搜寻到替换扇区所需要的平均时间。旋转等待时间是磁盘18旋转1周所需要的时间。替换扇区访问时间是对替换扇区的访问(数据的读取或写入)所需要的时间。
此外,CPU10使用下述式(2)来求取第二延迟时间。
第二延迟时间=旋转等待时间×重试次数…(2)
这里,旋转等待时间是磁盘18旋转1周所需要的时间。重试次数是在对更新对象组的访问中每1个磁道产生的重试的次数,使用下述式(3)来求取。
重试次数=(重试的次数/块数)×1个磁道的扇区数…(3)
这里,重试的次数是更新对象组的重试信息(在更新对象组为读范围的情况下为重试信息(读)、在更新对象组为写范围的情况下为重试信息(写))表示的重试的次数。块数是更新对象组的块数(在更新对象组为读范围的情况下为块数(读)、在更新对象组为写范围的情况下为块数(写))。
此外,在本实施方式中,在更新对象组为读范围的情况下,CPU10使用下述式(4)来求取读取时间信息。另一方面,在更新对象组为写范围的情况下,CPU10使用下述式(4)来求取写入时间信息。然后,将求出的读取时间信息(或写入时间信息)与更新对象组的块组编号对应地存储在块组不良信息表400中。
读取时间信息(或写入时间信息)=((正常访问时间+延迟时间)/正常访问时间)×100…(4)
这里,正常访问时间是对块组不执行重试地进行访问的时间。
然后,CPU10在求出的读取时间信息(或写入时间信息)超过以正常访问时间为基准的访问容许时间的比例(在本实施方式中为300%)的情况下,将更新对象组判断为不良区域。这里,访问容许时间是对块组的访问所容许的时间,是正常访问时间加上容许延迟时间得到的时间。由此,CPU10将延迟时间超过规定的容许延迟时间的更新对象组判断为不良区域。
即,在判断为延迟时间没有超过规定的容许延迟时间的情况(B605:否)下,CPU10判断是否正在执行重建辅助处理(B608)。在没有执行重建辅助处理的情况(B608:否)下,CPU10在块组不良信息表400中使与更新对象组的块组编号对应地存储的不良判断结果成为“正常”(B606)。然后,CPU10结束块组不良信息表400的更新处理。另一方面,在正在执行重建辅助处理的情况(B608:是)下,CPU10不进行不良判断结果的更新,而结束块组不良信息表400的更新处理。
另一方面,在判断为延迟时间超过规定的容许延迟时间的情况(B605:是)下,CPU10在块组不良信息表400中使与更新对象组的块组编号对应地存储的不良判断结果成为“不良”(B607)。由此,在存储在块组中的数据的重建期间,能减小不能正确地预测不良区域或者过量地预测不良区域的风险,因此能缩短重建所需要的时间。然后,CPU10结束块组不良信息表400的更新处理。在本实施方式中,虽然每次进行读或写都进行块组的不良判断结果的更新,但是如果在重建辅助模式有效化处理后的读或写之前更新了块组的不良判断结果,则在哪个定时进行块组的不良判断处理都可以。
接着,使用图6来说明本实施方式涉及的磁盘装置1进行的重建辅助模式有效化处理。图6是表示第一实施方式涉及的磁盘装置进行的重建辅助模式有效化处理的流程的一例的流程图。
CPU10在通过主机IF控制部14从主机2接收到指示执行重建辅助处理的命令的情况下,按磁盘18的物理属性(例如磁头、区域等)检测该磁盘18的异常,并开始执行将磁盘18包括的块组中具有检测出异常的物理属性的块组作为不良区域的重建辅助模式有效化处理(B702)。
首先,CPU10控制驱动控制部13执行读写验证,即,对磁盘18具有的数据存储区域中预先设定的测试区域进行访问(数据的读取和写入)。然后,CPU10通过读写验证判断是否检测出磁头组件19具有的磁头中的发生了故障的磁头(下面称为故障磁头)(B703)。
在判断为检测出故障磁头的情况(B703:是)下,CPU10将磁盘18具有的块组中由被判断为检测出故障的故障磁头访问的块组判断为不良区域。进而,CPU10在块组不良信息表400中,使与被判断为不良区域的块组(即由故障磁头访问的块组)的块组编号对应地存储的不良判断结果成为“不良”(B704)。
在没有检测出故障磁头的情况(B703:否)下或者使不良判断结果成为“不良”(B704)之后,CPU10控制驱动控制部13执行搜寻验证,即,使磁头组件19具有的磁头进行搜寻,来判断是否检测出磁盘18中不能使磁头进行搜寻的区域即搜寻不可区域(B705)。
在判断为检测出搜寻不可区域的情况(B705:是)下,CPU10将磁盘18具有的块组中属于检测出的搜寻不可区域的块组判断为不良区域。进而,CPU10在块组不良信息表400中使与被判断为不良区域的块组(即属于搜寻不可区域的块组)的块组编号对应地存储的不良判断结果成为“不良”(B706)。
在判断为没有检测出搜寻不可区域的情况(B705:否)下或者使不良判断结果成为“不良”(B706)之后,CPU10控制驱动控制部13执行读取验证,该读取验证判断是否检测出磁盘18具有的数据存储区域中的、不能读取数据的区域即读取不可区域(B707)。
在判断为检测出不可读区域的情况(B707:是)下,CPU10将磁盘18具有的块组中的、属于检测出的不可读区域的块组判断为不良区域。进而,CPU10在块组不良信息表400中,使与被判断为不良区域的块组(即属于不可读区域的块组)的块组编号对应地存储的不良判断结果成为“不良”(B708)。然后,在判断为没有检测出不可读区域的情况(B707:否)下、以及使不良判断结果成为“不良”(B708)之后,CPU10结束重建辅助模式有效化处理。
进而,在本实施方式中,CPU10在重建辅助模式有效化处理之后执行以下处理:将不良判断结果为不良的块组的数量超过第一规定数的块组群判断为不良区域。CPU10将磁盘18具有的块组群中的、块组群编号最小的块组群(即块组群编号:0的块组群)设定为作为判断是否为不良区域的对象的处理对象块组群(B709)。
接着,CPU10在块组不良信息表400中读取属于处理对象块组群的各块组的不良判断结果(B710)。然后,CPU10判断属于处理对象块组群的块组中的、读取的不良判断结果为“不良”的块组的数量是否超过第一规定数(B711)。这里,第一规定数是用于将块组群判断为不良区域的块组的数量。
在读取的不良判断结果为“不良”的块组的数量超过第一规定数的情况(B711:是)下,CPU10在块组不良信息表400中使属于处理对象块组群的全部块组的不良判断结果成为“不良”(B712)。即,CPU10将被判断为不良的块组的数量超过第一规定数的处理对象块组群判断为不良区域。由此,不需要按每个块组判断是否为不良区域,而能将全部块组为不良的可能性较高的块组群判断为不良区域,因此能缩短重建所需要的时间。
在使属于处理对象块组群的块组的不良判断结果成为“不良”(B712)之后,或者在读取的不良判断结果为“不良”的块组的数量在第一规定数以下的情况(B711:否)下,CPU10使处理对象块组群成为块组群编号次小的块组群,来更新处理对象块组群(B713)。
接着,CPU10判断是否执行了全部块组群的不良判断(B714)。在判断为没有执行全部块组群的不良判断的情况(B714:否)下,CPU10返回B710,读取属于处理对象块组群的块组的不良判断结果。另一方面,在判断为执行了全部块组群的不良判断的情况(B714:是)下,CPU10相对于从主机2接收到的读命令或写命令(下面称为读/写命令),使执行重建辅助处理的重建辅助模式有效化(B715)。然后,CPU10结束将块组群判断为不良区域的处理。
接着,使用图7来说明本实施方式涉及的磁盘装置1进行的重建辅助处理。图7是表示第一实施方式涉及的磁盘装置进行的重建辅助处理的流程的一例的流程图。
CPU10在图6所示的重建辅助模式有效化处理后按照从主机2接收到的读/写命令来执行重建辅助处理的情况下,参照块组不良信息表400,获取磁盘18的块组中的、包含在读/写范围内的块组的不良判断结果(B801)。
接着,CPU10判断在包含在从主机2接收到的读/写命令的读/写范围内的块组中是否有不良判断结果为“不良”的块组(不良区域)(B802)。在被判断为不良区域的情况(B802:是)下,CPU10参照块组不良信息表400来判断包含在读/写范围内的块组中的、包括作为最小LBA的开始LBA的扇区的块组(下面称为读/写范围开始LBA组)的不良判断结果是否为“不良”(B803)。
在读/写范围开始LBA组的不良判断结果为“不良”的情况(B803:是)下,CPU10将不良判断开始LBA和不良判断最终LBA(B804)通知到主机2。不良判断开始LBA是包含在读/写范围内并且不良判断结果为“不良”的块组的LBA中最小的LBA。不良判断最终LBA是不良判断结果为“不良”的块组的LBA中最大的LBA。
另一方面,在读/写范围开始LBA组的不良判断结果并非“不良”的情况(B803:否)下,CPU10参照块组不良信息表400来读取包含在读/写范围内并且不良判断结果为“不良”的块组的LBA中的、最小的LBA即不良开始LBA。然后,CPU10将从读/写范围开始LBA组起至包含不良开始LBA的前一个LBA的扇区的块组为止,设定为对从主机2接收到的读/写命令的读/写范围实际执行读或写处理的范围(实际读/写范围)(B805)。
CPU10对实际读/写范围执行数据的读取或写入(B806)。在对实际读/写范围执行了数据的读取和写入之后,CPU10执行图3所示的块组不良信息表400的更新处理(B807)。进而,CPU10判断在对实际读/写范围进行的数据读取或写入中是否发生了不可修正的错误(下面称为不可恢复的错误)(B808)。在发生了不可恢复的错误的情况(B808:是)下,CPU10控制主机IF控制部14,将对实际读/写范围进行的数据读取或写入的结果即读取/写入结果和发生了不可恢复的错误的块组中的最小的LBA通知到主机2(B809)。
在没有发生不可恢复的错误的情况(B808:否)下,CPU10通过主机IF控制部14,将读取/写入结果、不良判断开始LBA和不良判断最终LBA通知到主机2(B804)。
此外,在判断为包含在从主机2接收到的读/写命令的读/写范围内的块组中没有不良区域的情况(B802:否)下,CPU10将从主机2接收到的读/写命令的读/写范围直接作为实际读/写范围来执行数据的读取或写入(B810)。然后,CPU10执行图3所示的块组不良信息表400的更新处理(B811)。
进而,CPU10判断在对实际读/写范围进行的数据的读取或写入中是否发生了不可恢复的错误(B808)。在发生了不可恢复的错误的情况(B808:是)下,CPU10控制主机IF控制部14,将读取/写入结果和发生了不可恢复的错误的块组的最小的LBA通知到主机2(B809)。
另一方面,在没有发生不可恢复的错误的情况(B808:否)下,CPU10控制主机IF控制部14,将读取/写入结果通知到主机2(B804)。
接着,使用图8来详细说明获取包含在读/写范围内的块组的不良判断结果的处理(图7所示的B801)。图8是表示第一实施方式涉及的磁盘装置进行的不良判断结果的获取处理的流程的一例的流程图。
首先,CPU10特定读/写范围的包含开始LBA的扇区的块组,使该特定的块组成为获取不良判断结果的获取对象组(B901)。进而,CPU10从块组不良信息表400取得获取对象组的不良判断结果(B902)。
接着,CPU10判断获取对象组的不良判断结果是否为“不良”(B903)。在获取对象组的不良判断结果为“不良”的情况(B903:是)下,CPU10使获取对象组的包含次小LBA的扇区的块组(下一个块组)成为新的获取对象组(B904)。然后,CPU10从块组不良信息表400获取新的获取对象组的不良判断结果(B905)。
CPU10判断新的获取对象组的不良判断结果是否为“正常”(B906)。在新的获取对象组的不良判断结果为“不良”的情况(B906:否)下,CPU10判断是否残留没有获取不良判断结果的块组(B907)。在残留没有获取不良判断结果的块组的情况(B907:是)下,CPU10返回B904,再次进行新的获取对象组的设定。
在包含在读/写范围内的块组中未残留没有获取不良判断结果的块组的情况(B907:否)下,CPU10特定读/写范围的包含开始LBA的扇区的块组是不良区域、不良判断开始LBA、以及不良判断最终LBA(B908)。这里,不良判断开始LBA是读/写范围的开始LBA。此外,不良判断最终LBA是最后成为获取对象组的块组的最大的LBA。此后,处理结束。
另一方面,在新的获取对象组的不良判断结果是“正常”的情况(B906:是)下,CPU10将读/写范围的包含开始LBA的扇区的块组为不良区域、不良判断开始LBA、以及不良判断最终LBA通知到主机2(B908)。这里,不良判断开始LBA和不良判断最终LBA与上述的一样。
此外,在获取对象组(包含开始LBA的扇区的块组)的不良判断结果是“正常”的情况(B903:否)下,CPU10判断在包含在读/写范围内的块组中是否残留没有获取不良判断结果的块组(未确认的块组)(B909)。在没有残留未确认的块组的情况(B909:否)下,CPU10特定读/写范围是正常的(B914)。此后,处理结束。
另一方面,在残留未确认的块组的情况(B909:是)下,CPU10使获取对象组的包含次小LBA的扇区的块组(下一个块组)成为新的获取对象组(B910)。进而,CPU10从块组不良信息表400获取新的获取对象组的不良判断结果(B911)。然后,CPU10判断新的获取对象组的不良判断结果是否为“不良”(B912)。在新的获取对象组的不良判断结果为“正常”的情况(B912:否)下,CPU10返回B909,进行是否残留未确认的块组的判断。
在新的获取对象的块组的不良判断结果为“不良”的情况(B912:是)下,CPU10特定读/写范围的包含开始LBA的扇区的块组是正常的、以及不良判断开始LBA(B913)。这里,不良判断开始LBA是最后成为获取对象组的块组的最小的LBA。进而,CPU10基于所特定的不良判断开始LBA,执行与B904~B908同样的处理,特定不良范围最终LBA(B913)。
根据第一实施方式,将基于关于针对块组的访问履历的信息而求出的各块组的延迟时间超过规定的容许延迟时间的块组判断为不良区域。其结果,在存储在块组中的数据的重建期间,能减小不能正确地预测不良区域或者过量地预测不良区域的风险。由此,能获得能缩短重建所需要的时间的效果。
在第一实施方式中,CPU10将块组的延迟时间超过规定的容许延迟时间的块组判断为不良区域,但是不限于此。CPU10基于关于针对块组的访问履历的信息,判断各块组是否是不良区域即可。CPU10例如也可以将基于关于针对块组的访问履历的信息的、重试的执行率超过规定的容许重试执行率的块组判断为不良区域。这里,规定的容许重试执行率是对块组的重试被容许的执行率。此外,重试的执行率例如通过用存储在块组不良信息表400中的块数去除存储在块组不良信息表400中的重试信息表示的重试的次数而求得的。
此外,在本实施方式中,对通过磁盘装置1具有的1个CPU10来执行图6所示的块组不良信息表的更新处理、图6所示的重建辅助模式有效化处理、以及图7和图8所示的重建辅助处理的示例进行了说明,但是不限于此。例如也可以通过主机2等外部设备具有的CPU来执行块组不良信息表的更新处理、重建辅助模式有效化处理、以及重建辅助处理,主机2等外部设备具有的CPU也可以执行块组不良信息表的更新处理、重建辅助模式有效化处理、以及重建辅助处理的一部分。
(第二实施方式)
本第二实施方式将块组群分类为具有物理配置共用的多个块组群的上级组群(第二存储区域群),并且在第二实施方式中,将被判断为不良区域的块组群超过第二规定数的上级组群判断为不良区域。在下面的说明中,省略与第一实施方式相同的部分的说明。
图9是用于说明在第二实施方式涉及的磁盘装置中将上级组群判断为不良区域的处理的一例的图。图9(a)是表示块组群的不良判断处理前的块组的不良判断结果的一例的图。图9(b)是表示块组群的不良判断处理后的块组的不良判断结果的一例的图。图9(c)是表示上级组群的不良判断处理后的上级组群的不良判断结果的一例的图。在本实施方式中,如图9所示,CPU10按照块组群的物理配置,按每5个块组群分配成为上级组群。例示了块组群编号:0~4的上级组群(上级组群编号:0)、块组群编号:5~9(关于块组群编号:7以后的省略)的上级组群(上级组群编号:1)。
CPU10用与图6的B710~B714所示的处理相同的方法,判断块组群编号:0的块组群内的不良区域的数量是否超过第一规定数(在本实施方式中为“2”)。然后,CPU10将不良区域的数量超过第一规定数的块组群判断为不良区域。通过本处理(块组群的不良判断处理),CPU10将块组群(块组群编号:1、2、4的块组群)具有的全部块组(块组编号:4~7、8~11、16~19的块组)判断为不良区域。本处理后的块组群的不良判断结果是图9(b)所示的状态。被分类为上级组群编号:0的块组群编号:0~4中的、被判断为不良区域的块组群(块组群编号:1、2、4的块组群)的数量超过第二规定数(在本实施方式中为“2”)。这里,第二规定数是将上级组群判断为不良区域的的块组群的数量。
因此,如图9所示,CPU10将被分类为上级组群编号:0的块组群编号:0~4具有的全部块组(块组编号:0~19的块组)判断为不良区域。由此,CPU10将上级组群编号:0设为不良区域。
根据第二实施方式,将被判断为不良区域的块组群超过第二规定数的上级组群判断为不良区域。其结果,能将全部块组群为不良区域的可能性较高的上级组群判断为不良区域。由此,可获得能缩短重建所需要的时间的效果。
虽然说明了本发明的几个实施方式,但是,这些实施方式仅为例示,并不意在限定本发明的范围。这些新颖的实施方式能以其他各种方式实施,在不脱离发明主旨的范围内,可进行各种省略、替换、改变。这些实施方式和/或其变形包含于发明的范围和主旨内,且包含于请求保护的范围记载的发明及其均等的范围内。
Claims (8)
1.一种信息处理装置,其特征在于,
具备:
存储介质;和
控制部,其基于与针对所述存储介质具有的存储区域的访问履历相关的第一信息,而按每个存储区域求取对所述存储区域的访问的延迟时间,其中,该延迟时间以对所述存储区域不执行重试地进行访问的时间为基准,并且将该延迟时间超过规定的容许延迟时间的所述存储区域判断为不良区域。
2.根据权利要求1所述的信息处理装置,其特征在于,
所述控制部还按所述存储介质的每个物理属性检测该存储介质的异常,并将与检测出异常的物理属性对应的所述存储区域判断为所述不良区域。
3.根据权利要求1所述的信息处理装置,其特征在于,
所述存储介质根据基于所述存储介质的物理属性的分类条件而被分类为具有多个所述存储区域的第一存储区域群,
所述控制部将被判断为所述不良区域的存储区域的数量超过第一规定数的第一存储区域群判断为所述不良区域。
4.根据权利要求3所述的信息处理装置,其特征在于,
所述存储介质被分类为具有物理配置共用的多个所述第一存储区域群的第二存储区域群,
所述控制部将被判断为所述不良区域的第一存储区域群的数量超过第二规定数的第二存储区域群判断为所述不良区域。
5.根据权利要求1至4中任一项所述的信息处理装置,其特征在于,
所述第一信息包含对所述存储区域进行重试的次数。
6.根据权利要求1至4中任一项所述的信息处理装置,其特征在于,
所述第一信息包含在对所述存储区域的访问中执行的替换处理所形成的替换区域的数量。
7.根据权利要求1至4中任一项所述的信息处理装置,其特征在于,
所述控制部还将基于所述第一信息的重试的执行率超过规定的执行率的所述存储区域判断为所述不良区域。
8.一种信息处理方法,其用于具备存储介质的信息处理装置,该信息处理方法的特征在于,包括:
基于与针对所述存储介质具有的存储区域的访问履历相关的第一信息,而按每个存储区域求取对所述存储区域的访问的延迟时间,其中,该延迟时间以对所述存储区域不执行重试地进行访问的时间为基准,
将所述延迟时间超过规定的容许延迟时间的所述存储区域判断为不良区域。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462030275P | 2014-07-29 | 2014-07-29 | |
US62/030,275 | 2014-07-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105302677A true CN105302677A (zh) | 2016-02-03 |
Family
ID=55180135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410487610.9A Pending CN105302677A (zh) | 2014-07-29 | 2014-09-22 | 信息处理装置和信息处理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20160034330A1 (zh) |
CN (1) | CN105302677A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109725847A (zh) * | 2017-10-30 | 2019-05-07 | 东芝存储器株式会社 | 存储器系统及控制方法 |
CN110310675A (zh) * | 2018-03-20 | 2019-10-08 | 株式会社东芝 | 磁盘装置以及读取处理方法 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160123452A (ko) * | 2015-04-15 | 2016-10-26 | 삼성디스플레이 주식회사 | 유기 발광 표시 장치 및 그의 구동 방법 |
KR102572357B1 (ko) * | 2016-02-03 | 2023-08-29 | 삼성전자주식회사 | Raid-6 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101097531A (zh) * | 2006-06-28 | 2008-01-02 | 联想(北京)有限公司 | 一种计算机raid阵列预警系统及方法 |
CN102012847A (zh) * | 2010-12-06 | 2011-04-13 | 创新科存储技术有限公司 | 一种改进的磁盘阵列重建方法 |
CN102033797A (zh) * | 2009-09-28 | 2011-04-27 | 佳能株式会社 | 信息处理装置及信息处理装置的控制方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5535328A (en) * | 1989-04-13 | 1996-07-09 | Sandisk Corporation | Non-volatile memory system card with flash erasable sectors of EEprom cells including a mechanism for substituting defective cells |
DE69033438T2 (de) * | 1989-04-13 | 2000-07-06 | Sandisk Corp., Santa Clara | Austausch von fehlerhaften Speicherzellen einer EEprommatritze |
US5488702A (en) * | 1994-04-26 | 1996-01-30 | Unisys Corporation | Data block check sequence generation and validation in a file cache system |
US6000006A (en) * | 1997-08-25 | 1999-12-07 | Bit Microsystems, Inc. | Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage |
US7050252B1 (en) * | 2002-06-01 | 2006-05-23 | Western Digital Technologies, Inc. | Disk drive employing off-line sector verification and relocation of marginal sectors discovered during read error recovery procedure |
JP4110000B2 (ja) * | 2003-01-28 | 2008-07-02 | 株式会社ルネサステクノロジ | 記憶装置 |
US7881133B2 (en) * | 2003-11-11 | 2011-02-01 | Samsung Electronics Co., Ltd. | Method of managing a flash memory and the flash memory |
US7774643B2 (en) * | 2006-01-06 | 2010-08-10 | Dot Hill Systems Corporation | Method and apparatus for preventing permanent data loss due to single failure of a fault tolerant array |
US7573775B2 (en) * | 2006-02-09 | 2009-08-11 | Fujitsu Limited | Setting threshold voltages of cells in a memory block to reduce leakage in the memory block |
JP2009211233A (ja) * | 2008-03-01 | 2009-09-17 | Toshiba Corp | メモリシステム |
US9047187B2 (en) * | 2012-06-28 | 2015-06-02 | Intel Corporation | Defect management in memory systems |
US9201777B2 (en) * | 2012-12-23 | 2015-12-01 | Advanced Micro Devices, Inc. | Quality of service support using stacked memory device with logic die |
-
2014
- 2014-09-22 CN CN201410487610.9A patent/CN105302677A/zh active Pending
- 2014-12-10 US US14/566,023 patent/US20160034330A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101097531A (zh) * | 2006-06-28 | 2008-01-02 | 联想(北京)有限公司 | 一种计算机raid阵列预警系统及方法 |
CN102033797A (zh) * | 2009-09-28 | 2011-04-27 | 佳能株式会社 | 信息处理装置及信息处理装置的控制方法 |
CN102012847A (zh) * | 2010-12-06 | 2011-04-13 | 创新科存储技术有限公司 | 一种改进的磁盘阵列重建方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109725847A (zh) * | 2017-10-30 | 2019-05-07 | 东芝存储器株式会社 | 存储器系统及控制方法 |
CN109725847B (zh) * | 2017-10-30 | 2021-12-07 | 东芝存储器株式会社 | 存储器系统及控制方法 |
CN110310675A (zh) * | 2018-03-20 | 2019-10-08 | 株式会社东芝 | 磁盘装置以及读取处理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20160034330A1 (en) | 2016-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9009526B2 (en) | Rebuilding drive data | |
EP2778926B1 (en) | Hard disk data recovery method, device and system | |
US9047219B2 (en) | Storage system, storage control device, and storage control method | |
US8943358B2 (en) | Storage system, apparatus, and method for failure recovery during unsuccessful rebuild process | |
US10120769B2 (en) | Raid rebuild algorithm with low I/O impact | |
JP4886209B2 (ja) | アレイコントローラ、当該アレイコントローラを含む情報処理装置及びディスクアレイ制御方法 | |
US9563552B2 (en) | Storage control device and storage control method | |
US20050229033A1 (en) | Disk array controller and information processing apparatus | |
JP2005122338A (ja) | スペアディスクドライブをもつディスクアレイ装置及びデータスペアリング方法 | |
US10606490B2 (en) | Storage control device and storage control method for detecting storage device in potential fault state | |
US20060077726A1 (en) | Data transfer method, storage apparatus and computer-readable storage medium | |
CN105302677A (zh) | 信息处理装置和信息处理方法 | |
US20150347224A1 (en) | Storage control apparatus and method therefor | |
JP5040331B2 (ja) | 記憶装置、記憶装置の制御方法、及び記憶装置の制御プログラム | |
US20130179726A1 (en) | Automatic remapping in redundant array of independent disks and related raid | |
JP5218147B2 (ja) | ストレージ制御装置,ストレージ制御方法およびストレージ制御プログラム | |
US20050283651A1 (en) | Disk controller, disk patrol method, and computer product | |
JP5181795B2 (ja) | Raidシステム、及びエラーセクタの修復方法 | |
US9343113B2 (en) | Control apparatus and control method | |
CN104205097A (zh) | 一种去重方法装置与系统 | |
US20140380090A1 (en) | Storage control device and storage control method | |
JP2008234446A (ja) | データ整合性チェック方法およびデータ整合性チェックシステム | |
CN113190179B (zh) | 提升机械硬盘使用寿命的方法、存储设备及系统 | |
JP2013149112A (ja) | 記憶媒体の管理方法 | |
CN104572380B (zh) | 一种检测磁盘的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160203 |