JP4627327B2 - 異常判定装置 - Google Patents

異常判定装置 Download PDF

Info

Publication number
JP4627327B2
JP4627327B2 JP2008135743A JP2008135743A JP4627327B2 JP 4627327 B2 JP4627327 B2 JP 4627327B2 JP 2008135743 A JP2008135743 A JP 2008135743A JP 2008135743 A JP2008135743 A JP 2008135743A JP 4627327 B2 JP4627327 B2 JP 4627327B2
Authority
JP
Japan
Prior art keywords
hdd
error
accesses
processing unit
abnormal
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.)
Active
Application number
JP2008135743A
Other languages
English (en)
Other versions
JP2009282848A (ja
Inventor
実希夫 伊藤
栄作 高橋
秀治郎 大黒谷
和彦 池内
秀夫 ▲高▼橋
與志仁 紺田
典秀 久保田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008135743A priority Critical patent/JP4627327B2/ja
Priority to US12/320,591 priority patent/US8089712B2/en
Publication of JP2009282848A publication Critical patent/JP2009282848A/ja
Application granted granted Critical
Publication of JP4627327B2 publication Critical patent/JP4627327B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0706Error 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/0727Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

この発明は、HDD(Hard Disk Drive)のエラー数を検出する異常判定装置に関し、特に、記録媒体に起因せず、記憶装置内部における記録媒体へのリトライ要因となるエラー数の上昇量に基づいて、異常なHDDを確実に検出することができる異常判定装置に関するものである。
各種のサービスを提供する企業の情報システム(例えば、各携帯電話の事業者間接続に伴う通信設備の使用料を管理するシステム)は、サービス提供時に利用するデータの信頼性を高めるべく、RAID(Redundant Arrays of Inexpensive Disks)等のストレージシステムにデータを格納している。このストレージシステムは、様々なデータ保護機能を備えており、例えば、ストレージシステムに備えられた各HDD(Hard Disk Drive)のエラーを定期的に検査することにより、データ損失などの問題を未然に防止している。
従来のストレージシステムに発生するエラーは、HDDの記録媒体に起因するエラーと、記録媒体に起因しないエラーとが存在する。記録媒体に起因するエラーを検出する方法は、例えば、記録媒体にテストデータを書込み、書込んだテストデータを適切に読み出せる否かによってエラーを検出している。
一方、記録媒体に起因しないエラーの検出方法には、処理負荷の低いHDDのI/O(Input/Output)に着目し、かかるHDDにレスポンス時間の遅延が発生した場合には、レスポンス遅延の発生したHDDにエラーが発生したと判定する方法や、RAIDグループ内のHDD対するI/Oアクセスに偏りがある場合に、エラーが発生したと判定する方法等がある。
なお、特許文献1では、エラーの発生回数、発生頻度、発生間隔から、エラーの発生した部分を閉寒するか否かを判定して、エラーを回避する方法が開示されており、特許文献2では、複数の検査項目に対して検査を実施し、検査結果の組合せからディスクに発生し得るエラーを予測するという技術が開示されている。
特開平5−298132号公報 特開2001−265538号公報
しかしながら、上述した従来の技術では、HDDの記録媒体に起因しないエラーを誤検出してしまい、誤って正常なHDDを異常HDDとして検出するという問題があった。
例えば、レスポンス時間の遅延に基づいてエラーを検出する方法においては、HDDが有する自己診断処理とデータアクセスが競合した場合、自己診断後にデータ処理が行なわれる場合があり、結果的に、レスポンス遅延が発生したと誤認し、正常なHDDを異常HDDとして検出してしまう場合があった。
また、I/Oアクセスの偏りによってエラーを検出する方法においては、ランダムI/Oの場合に、一時的に、特定のHDDにデータアクセスが集中してしまう場合もあり得るため、レスポンス遅延が発生したと誤認し、正常なHDDを異常HDDとして検出してしまっていた。
なお、レスポンス遅延と判定する閾値を変更することで、上述のような正常なHDDを異常なHDDとして誤検出することを軽減可能であるが、この場合には、逆に異常なHDDを確実に検出することが難しくなる。
このように従来の技術では、HDDの記録媒体に起因しないエラーを正確に検出することができないため、HDDが正常であるか否かを適切に判定することができないのが現状である。
この発明は、上述した従来技術による課題を解消するためになされたものであり、記録媒体に起因しないようなエラーを正確に検出することで、正常なHDDか否かについて判定することができる異常判定装置を提供することを目的とする。
上述した課題を解決し、目的を達成するため、異常判定装置は、記憶装置に対するアクセスへの応答に際して前記記憶装置内部における記録媒体へのリトライ要因となるエラー数と前記記憶媒体に対するアクセス数とを計数する計数手段と、前記計数手段の計数結果に基づいて単位アクセス数あたりの前記エラー数の上昇量を算出し、算出結果と規定値とを比較することにより前記記憶装置が異常であるか否かを判定する異常判定手段と、を備え、前記異常判定手段は、前記算出結果が規定値を上回り、かつ、所定期間内における前記記憶媒体へのアクセス数が所定数以上の場合に、前記記憶装置が異常であると判定することを要件とする。
この異常判定装置によれば、HDD自身が記録している記録媒体に起因せず、記憶装置内部における記録媒体へのリトライ要因となるエラー数を正確に検出することで、正常なHDDか否についてエラー判定することができる。結果として、これまで性能エラーとみなすことができなかったHDDについてのエラー判定をすることができる。
以下に添付図面を参照して、この発明に係る異常判定装置の好適な実施の形態を詳細に説明する。尚、本実施例では、異常判定装置の一例として、RAID(Redundant Arrays of Inexpensive Disks)装置を例に挙げて説明する。
(用語の説明)
最初に、以下の実施例1で用いる主要な用語を説明する。「RAID(Redundant Arrays of Inexpensive Disks)」とは、複数のHDDをまとめて1台のディスクとして管理する技術であり、データ処理の高速化やデータ損失を未然に防ぐ対策等が図られている。
「NON MEDEIUM ERROR」とは、記憶媒体に起因しないエラーを示し、例えば、HDDのリトライ動作終了までに、100ミリ秒以上要してしまうエラーを示す。そして、「NON MEDEIUM ERROR COUNT」は、HDD自身が収集しているNON MEDEIUM ERRORの数を示す。
「アクセス数」とは、CPU(Central Processing Unit)がメモリやHDDに対して、データの書込み(INPUT)や読出し(OUTPUT)を行った回数を示す。
「IOPS(Input Output Per Second)」は、1秒間あたりのアクセス数を示し、HDDのデータ処理能力を表す。
(RAID装置の概要及び特徴)
次に、本実施例1にかかるRAID装置の概要及び特徴について説明する。本実施例1にかかるRAID装置は、HDDの単位アクセス数に対するNON MEDEIUM ERROR COUNTの上昇量が規定値を超えていて、さらに、そのNON MEDEIUM ERROR COUNTの上昇量が、許容エラー数を超えている場合、異常があるHDDと判定する。また、RAID装置は、HDDに対する所定期間のアクセス数が、異常HDDを検出する条件に達していない場合は、そのアクセス数を適切に上昇させる。
このように、本実施例1にかかるRAID装置は、NON MEDEIUM ERROR COUNTの上昇量に基づいて、異常HDDの判定を適切に行うことができる。結果として、これまで異常なHDDとして検出することができなかったHDDを適切に検出することができ、ストレージシステムから切り離すことができる。
(RAID装置の構成:実施例1)
続いて、本実施例1にかかるRAID装置100の構成について説明する。図1は、本実施例1にかかるRAID装置100の構成を示す機能ブロック図である。図1に示すように、このRAID装置100は、HDD200a、HDD200b、HDD200c、HDD200d、・・・、といったRAIDグループを構成する複数のHDDを搭載し、チャンネルインターフェース300、HDD制御装置400を有する。尚、HDD制御装置は、複数存在し、冗長性が確保されている。
RAIDグループを構成するHDD200a、HDD200b、HDD200c、HDD200d、・・・、といった複数のHDDは、RAID装置100が有するHDDであるため、高速性や安全性のレベルに応じて、データが振り分けられている。
次に、RAIDグループ内の各々のHDDについて、HDD200aを例として説明する。図2は、HDDの構成の一例を示す機能ブロック図である。図2に示すように、HDD200aは、データの書込みやプログラムを記憶する記憶媒体(ディスク)220と制御部210を有する。
制御部210は、特に本発明に密接に関連するものとして、データ処理部210aと、NON MEDEIUM ERROR COUNT部210bと有する。
データ処理部210aは、HDD制御装置400からの処理命令に応じて、記憶媒体220に対するデータの書込みや読出しを行う手段である。
また、HDD制御装置400からのDisk Patrolの実行命令に応じて、アクセス数が少ないHDDのアクセス数を上昇させる手段である。
NON MEDEIUM ERROR COUNT部210bは、HDD200a自身が記録しているNON MEDEIUM ERROR COUNTを記録する手段である。
ここで、図1の説明に戻り、チャンネルインターフェース300について説明する。チャンネルインターフェース300は、ホスト50とHDD制御装置400とのデータの送受信を制御する手段である。
次に、HDD制御装置400について説明する。図1に示すように、HDD制御装置400は、HDD制御装置間通信部410と、RAM(Random Access Memory)420と、CPU(Central Processing Unit)430と、ディスクインターフェース群440とを有する。
HDD制御装置間通信部410は、HDD制御装置400と異なるHDD制御装置とのデータの送受信を制御する手段である。
RAM420は、RAIDグループを構成する各々のHDDに書込むデータ等を一時的に記憶する手段で、ユーザデータ420aと制御テーブル420bを有する。
ユーザデータ420aは、ホスト50からの書込み対象となるユーザデータやRAIDグループを構成する各々のHDDから読取ったデータを記憶する手段である(詳細なデータ構造は省略)。
制御テーブル420bは、RAIDグループ内のHDDが有するNON MEDEIUM ERROR COUNT部が記録している値とHDD制御装置が記録しているアクセス数を記憶する手段である。
図3は、制御テーブルのデータ構造の一例を示す図である。図3に示すように、制御テーブル420bは、RAIDグループ内のHDDの識別情報、NON MEDEIUM ERROR COUNT、アクセス数、及びそれらの値を収集した期間を記憶する手段である。
具体的に、図4を用いながら説明する。図4は、NON MEDEIUM ERRORの発生の一例を示す図である。図4に示している期間の一例を示す「A」は、時刻T0から時刻T1までの期間を示す。尚、一例として、T0は、ホストからHDDへのアクセスが開始する時刻等を示す。
一方、期間の一例である「B」は、期間Aの終了時刻である時刻T1を計測開始時刻として、時刻T2までの期間を示す。そして、期間「C」は、期間「B」の終了時刻T2を計測開始時刻として、時刻T3までの期間を示す。
以下、期間「D」以降に関しても、アルファベット順に応じて、1つ前のアルファベットでの終了時刻であるTnを計測開始時刻として、時刻Tn+1までの期間を示す。例えば、期間「E」においては、1つ前のアルファベットであるD期間の終了時刻T4を計測開始時刻として、時刻T5までの期間を示す。
以上のことから、図3において、「A」は、時刻T0から時刻T1までの期間に対応し、「B」以降については、1つ前のアルファベットの期間の終了時刻であるTnを計測開始時刻として、時刻Tn+1までの期間を記憶する。
そして、制御テーブル420bは、各種アルファベットを例として示される期間ごとに、RAIDグループ内のHDDの識別情報、NON MEDEIUM ERROR COUNT、アクセス数を記憶する。
したがって、図3において、HDD(A)は、期間Aまでに、アクセス数が200000アクセスあり、その発生したアクセス数に対して、累計200コマンドのNON MEDEIUM ERROR COUNTが発生していることを示す。
加えて、期間B内では、アクセス数が17000アクセス発生し、NON MEDEIUM ERROR COUNTが、累計350コマンド発生していることを示す。
したがって、期間Bまでに、350コマンドのNON MEDEIUM ERROR COUNTが発生していることから、期間Aから期間Bまでの間に、NON MEDEIUM ERROR COUNTは150コマンド分上昇していることになる。
また、HDD制御装置400が、期間Bの終了時刻T2において、HDD(A)を異常HDDと判定し、検出した場合は、RAID装置100からHDD(A)を取り除き、期間C以降のHDD(A)のNON MEDEIUM ERROR COUNTとアクセス数は記録されない。
次に、CPU430について説明する。図1に示すように、CPU430は、HDD制御部430a、情報収集部430b、エラー判定処理部430c、Disk Patrol実行部430dを有する。
HDD制御部430aは、ホスト50からRAID装置100内の各HDDに対するデータの書込み命令処理やその書込んだデータに対する読出し命令処理をデータ処理部210aに対して行う手段である。
情報収集部430bは、RAIDグループ内の各HDDが記録しているNON MEDEIUM ERROR COUNTを制御テーブル420bに登録する手段である。
加えて、情報収集部430bは、各HDDに対するアクセス数(例えば、Disk Patrolの実行により発行されるアクセス数等)を記録する手段で、その記録したアクセス数を制御テーブル420bに登録する手段でもある。
次に、エラー判定処理部430cが行う処理について説明する。エラー判定処理部430cは、制御テーブル420bを参照して、RAIDグループ内の各HDDに対する単位アクセス数あたりのNON MEDEIUM ERROR COUNTの上昇量(以下、エラー判定係数とする)が、正常なHDDの規定値(以下、エラー監視係数とする)を超えていて、さらに、そのNON MEDEIUM ERROR COUNTの上昇量が、許容エラー数を超えている場合、異常なHDDとして判定する手段である。また、エラー判定処理部430cは、アクセス負荷が少ないHDDについては、異常HDDか否かを判定しない。
また、許容エラー数とは、エラー判定処理部430cが、異常HDDか否かを判定することができる最低アクセス数の0.5%に相当する任意のアクセス数を示す。
まず、正常なHDDと異常なHDDの違いをNON MEDEIUM ERROR COUNTの上昇量に基づいて説明する。
一般に、正常なHDDのアクセス処理は、5%までのレスポンス低下を許容範囲としている観点がある。尚、この5%に相当するアクセス数をエラー監視係数とし、詳細については、以下に示す。
そして、レスポンス低下に係るアクセス数は、NON MEDEIUM ERROR COUNTの上昇量と一致している観点がある。
例えば、あるアクセス数において、NON MEDEIUM ERROR COUNTの上昇量が7コマンドであれば、7アクセスに相当するレスポンス低下が発生したことになる。
また、正常なHDDが1アクセスを処理した時のレスポンス時間は、1アクセス当たり10[ms](単位:ミリ秒)であるのに対し、異常なHDDが1アクセスを処理したときのレスポンス時間は、1アクセス当たり100[ms]になることが分かっている。
以上の点を踏まえた上で、異常HDDを判定する具体的な計算式の例を示す。
正常なHDDが、1000アクセスを処理した場合のレスポンス時間は、以下の通りである。
1000アクセス×10[ms]=10[s](単位:秒)。
そして、正常なHDDの有する処理能力は、
1000アクセス/10.00[s]=100[IOPS]となる。
一方、あるHDD(例えばHDD1)が、1000アクセスを処理した場合において、正常に処理したアクセス数として993、異常に処理したアクセス数として7、それぞれ処理した場合のレスポンス時間は、以下の通りである。
993アクセス×10[ms]+7アクセス×100[ms]=10.63[s]となり、正常なHDDの処理のみから得られるレスポンス時間と比較とすると0.63[s]の遅延が発生している。
そして、HDD1が有する処理能力は、
1000アクセス/10.63[s]=94[IOPS]となる。
以上より、正常なHDDが有する処理能力を100[IOPS]とすると、HDD1が有する処理能力は、94[IOPS]であるから、HDD1は、IOPSを基準単位として、6%の性能低下が発生していることになる。
したがって、正常なHDDとしての許容範囲である5%の性能低下を超えていることから、HDD1は、異常HDDとして判定される。
また、正常なHDDとしての許容範囲である5%を基準として、正常なHDDであるか否かを判定したが、レスポンス低下に係るアクセス数とNON MEDEIUM ERROR COUNTの上昇量が一致していることから、この許容範囲5%をアクセス数に換算すると0.5%になる。この0.5%で示される規定値をエラー監視係数とする。
例えば、IOPSを基準単位として、HDDに7%の性能低下が発生しているのであれば、HDDが処理した1000アクセスに対して、NON MEDEIUM ERROR COUNTが7コマンド発生していることになり、このアクセス数に占めるNON MEDEIUM ERROR COUNTは0.7%となる。
したがって、IOPSの低下が7%である場合、この値をアクセス数に換算する計算は、以下の通りである。
7コマンド/1000アクセス=0.7%
同様に、HDDに5%の性能低下が発生している場合は、1000アクセスに対して、NON MEDEIUM ERROR COUNTが5コマンド発生していることになり、そのアクセス数に占めるNON MEDEIUM ERROR COUNTは0.5%(エラー監視係数に相当)となる。
エラー監視係数を算出する具体的な計算式は以下の通りである。
5コマンド/1000アクセス=0.5%(エラー監視係数)
以上より、エラー判定処理部430cは、エラー判定係数とエラー監視係数を比較して、HDDが正常か否かを判定する。
しかし、所定期間内のアクセス数が極端に少なかった場合において、上述した規定値0.5%で異常HDDと判定してしまうと、アクセス負荷が少ないHDDを異常HDDとして判定する頻度が多くなってしまうことが予想される。
ここで、上述したアクセス負荷が少ないHDDについて説明する。通常、一般的なHDDに発生する一日あたりのアクセス数は、数十万回発生することから、1時間あたり1000程度のアクセスしか発生していない場合、アクセス負荷が少ないHDDとみなされる。
したがって、本実施例では、1時間あたりのアクセス数が1000以下になるHDDをアクセス負荷が少ないHDDとする。
そして、このアクセス負荷が少ないHDDを、エラー判定処理部430cが、エラー監視係数0.5%で異常HDDと判定してしまうと、異常HDDとして判定する頻度が多くなり、適切な異常判定を行うことができず、交換を要求していないHDDを無駄に交換することになる。
以上のことから、エラー判定処理部430cは、アクセス負荷が少ないHDDを判定した場合、エラー判定係数がエラー監視係数の0.5%を超えていても、異常HDDとは判定しない。
次に、エラー判定処理部430cが行う処理の具体例を図3及び図4を用いながら説明する。例として、図3に示したHDD(A)及び図4に示す期間A、期間B(便宜的に、1時間とする)を条件として、エラー判定処理部430cが行うエラー判定処理について説明する。
まず、HDD制御部430aが、データ処理部210a(図2参照)に対して、HDDのNON MEDEIUM ERROR COUNTや情報収集部430bが記録しているアクセス数のデータ取得の処理命令をする。
続いて、エラー判定処理部430cは、HDD制御部430aからのエラー処理命令を受けて、制御テーブル420bに記憶されているHDD(A)のNON MEDEIUM ERROR COUNT、及びアクセス数の読込みを行う。
次に、エラー判定処理部430cは、期間B内にHDD(A)で発生したアクセス数「17000」及び期間BまでのNON MEDEIUM ERROR COUNTの累計数を示す「350」を取得する。
期間Bまでの、NON MEDEIUM ERROR COUNTの累計数が350コマンドであるため、期間B内におけるNON MEDEIUM ERROR COUNTの上昇量は、150コマンドになる。
したがって、期間Bに、HDD(A)で発生した17000アクセスに対して、NON MEDEIUM ERROR COUNTは、150コマンド上昇したことになる。
これらの条件に基づいて、エラー判定処理部430cは、HDD(A)のエラー判定を行う。
HDD(A)のエラー判定係数を算出する具体的な式は、NON MEDEIUM ERROR COUNTの上昇量/アクセス数となることから、
150コマンド/17000アクセス=0.9%(HDD(A)のエラー判定係数)
となる。
したがって、HDD(A)のエラー判定係数は、0.9%となり、エラー監視係数である0.5%を超えている。
また、NON MEDEIUM ERROR COUNTの上昇量は、150コマンドであるから、許容エラー数を超えていれば、エラー判定処理部430cは、HDD(A)を異常HDDと判定する。
尚、期間Bを便宜的に1時間としたのは、エラー監視係数を、所定期間に発生したアクセス数に対するNON MEDEIUM ERROR COUNTの上昇量で算出していることから、何十万回に及ぶアクセス数が発生する時間を収集期間として、判定を行っても、検出までの時間に、非常に長い時間を費やしたことになってしまう。
結果として、異常HDDを何時間も放置していたことになり、適切な異常検出を行うことができない。したがって、期間Bを適切な収集期間に相当する1時間とした。
次に、エラー判定処理部430cが、アクセス負荷が少ないHDDについて、エラー判定をした具体例を以下に示す。
図3において、HDD(B)、期間C(便宜的に、1時間とする)を例にして説明する。図3より、期間Cにおいて、HDD(B)に対するアクセス数が、1時間あたり1000アクセスであるから、HDD(B)は、アクセス負荷が少ないHDDとみなされる。
また、図3では、期間Cにおいて、HDD(B)にNON MEDEIUM ERROR COUNTが、20コマンド分上昇したことを示している。
上述した条件をもとに、アクセス負荷が少ないHDD(B)をエラー判定処理部430cが判定した場合、以下の通りになる。
具体的な計算式の例を示す。
NON MEDEIUM ERROR COUNTの上昇量が20コマンドで、アクセス数が1000アクセスとなることから、
20コマンド/1000アクセス=2%(HDD(B)のエラー判定係数)
となる。
したがって、HDD(B)のエラー判定係数が2%となり、エラー監視係数である0.5%を超えているが、HDD(B)はアクセス負荷が少ないHDDであるため、エラー判定処理部430cは、異常HDDとは判定しない。
上述したように、エラー判定処理部430cは、アクセス負荷の少ないHDDを判定した場合、エラー判定係数が、エラー監視係数の0.5%を超えていても、異常HDDと判定しない。
次に、Disk Patrol実行部430dについて、図2、図3、図4を用いながら説明する。Disk Patrol実行部430dは、アクセス負荷が少ないHDDのアクセス数を強制的に上昇させる手段である。
まず、Disk Patrol実行部430dは、RAIDグループを構成する各々のHDDのデータ処理部210aに対して、Disk Patrolの実行命令を行う。
続いて、データ処理部210aは、HDD内のユーザ域の媒体診断を実施するために1秒間に1アクセス、書込み領域における読込み/書込みの比較診断が2秒間に2アクセス実行され、その結果、2秒間に計4アクセス(媒体診断×2回、書込み×1回、読込み×1回)実行する。
したがって、データ処理部210aは、1時間あたりに7200回のアクセス数をHDDに対して発生させることができる。
具体的に、HDD(B)を例にして説明する。期間D内の時刻D1(例えば、T3から30分程度経過した時刻)において、アクセス数が500程度の場合は、Disk Patrol実行部430dは、HDD(B)をアクセス数が少ないと判断し、期間DにおけるHDD(B)のアクセス数を上昇させることができる。
結果として、期間Dにおいて、HDD(B)で発生するアクセス数は、1000アクセス程度に留まるはずであったが、Disk Patrolを実行することで、4600アクセスまでアクセス数を上昇させる。
ところで、エラー判定処理部430cは、アクセス負荷の少ないHDDを判定した場合、エラー判定係数が、エラー監視係数の0.5%を超えていても、異常HDDと判定しない。
例えば、HDD(B)においては、期間Cに1000、期間Dに1000(Disk Patrolの実行は考慮しない)アクセスしか発生しておらず、エラー判定処理部430cは、期間C、Dの間において、HDD(B)をアクセス負荷が少ないHDDとみなし、異常判定を行っていなかった(期間C、Dは、便宜的に1時間とする)。
しかし、Disk PatrolをHDD(B)に実行すると、HDD(B)に発生するアクセス数が強制的に上昇するので、アクセス負荷の少ないHDDについても異常か否かを判定することができる。
例えば、Disk Patrol実行部430dは、図4に示す期間E(便宜的に、1時間とする)において、HDD(B)に対し、7200のアクセス数を発生させる。
そして、正常なHDDの許容範囲を示すエラー監視係数は、そのアクセス数の0.5%に相当すること、HDDのデータ処理部210a(図2参照)が1時間あたり7200アクセスを発生させることを踏まえた上で、以下のように許容エラー数の一例を示すことができる。
Disk Patrolが発行する7200アクセスの0.5%に相当するアクセス数をNON MEDEIUM ERROR COUNTの上昇量とすると、
許容エラー数についての算出式は、
7200アクセス×0.005=36(許容エラー数)
となる。
したがって、エラー判定処理部430cは、許容エラー数を用いてアクセス負荷の少なかったHDDについても異常か否かを判定することができる。
上述した例では、期間Eに、HDD(B)にDisk Patrolを実行することで、7200アクセス発生し、この間、NON MEDEIUM ERROR COUNTは、50コマンド上昇したことになり、許容エラー数36を超えていることになり、エラー判定処理部430cは、HDD(B)を異常と判定とする。
上記の場合において、HDD(B)のエラー判定係数を算出する式は以下のとおりである。
期間Eにおいて、HDD(B)に発生するアクセス数は7200で、NON MEDEIUM ERROR COUNTの上昇量は50コマンドであるから、HDD(B)のエラー判定係数は、
50コマンド/7200アクセス=0.7%(HDD(B)のエラー判定係数)
となる。
したがって、0.5%のエラー監視係数を超え、NON MEDEIUM ERROR COUNTの上昇量が50コマンドであることから、許容エラー数36も超えることになり、エラー判定処理部430cは、HDD(B)を異常と判定とする。
ここで、図1の説明に戻り、ディスクインターフェース群440について説明する。ディスクインターフェース群440は、HDD制御装置400と、RAIDグループ内の各HDDのデータの送受信を制御する手段である。
次に、エラー判定処理部430cのエラー判定手順について説明する。図5は、エラー判定処理部430cの処理を示すフローチャートである。
次に、エラー判定処理部430cは、グループ内の先頭のHDDを選択し(ステップS100)、判定実行可能な状態であるかを確認し(ステップS101)、判定実行可能状態であれば(ステップS102、Yes)、HDD内のNON MEDEIUM ERROR COUNTを制御テーブル420bから取得する(ステップS103)。
尚、判定可能な状態であるとは、本判定処理をHDDに実施しても、HDDの基本機能であるデータの読込みや書出し等の機能に支障がない状態を示す。
次に、エラー判定処理部430cは、所定期間内のアクセス数を、制御テーブル420bから取得し(ステップS104)、アクセス負荷が少ないかを判定する(ステップS105)。
アクセス負荷が多い場合(ステップS106、No)、エラー判定処理部430cは、エラー判定係数が、エラー監視係数よりも小さいかを判定する(ステップS107)。
一方、アクセス負荷が少ない場合(ステップS106、Yes)、ステップS101に移行する。
次に、エラー判定処理部430cは、エラー判定係数が、エラー監視係数よりも大きい場合(ステップS108、No)、そのNON MEDEIUM ERROR COUNTの上昇量が、許容エラー数よりも小さいかを判定する(ステップS109)。
一方、エラー監視係数よりも、小さい場合(ステップS108、Yes)は、正常なHDDと判定する(ステップS112)。
次に、ステップS109において、エラー判定処理部430cは、NON MEDEIUM ERROR COUNTの上昇量が許容エラー数よりも大きい場合(ステップS110、No)、異常なHDDと判定し(ステップS111)、エラー情報をホスト50に送信する(ステップS113)。
尚、エラー情報とは、HDDのNON MEDEIUM ERROR COUNTの上昇量が規定値と比較した結果、性能異常HDDであること示し、HDDの交換が必要である旨をホスト50に示す情報をいう。
一方、許容エラー数よりも小さい場合(ステップS110、Yes)、エラー判定処理部430cは、正常なHDDと判定する(ステップS112)。
そして、エラー判定処理部430cは、全てのHDDについての判定が終了しているかを判定し、全てのHDDについて判定が終了している場合(ステップS114、Yes)は、判定が終了する。
一方、全てのHDDについて判定が終了していない場合(ステップS114、No)は、エラー判定処理部430cは、次のHDDを選択し(ステップS115)、ステップS101に移行する。
また、エラー判定処理部430cは、ステップS102において、判定実行が可能な状態でなければ(ステップS102、No)、全てのHDDについて判定が終了しているかを判定する(ステップS114)。
そして、エラー判定処理部430cは、全てのHDDについて判定が終了しているとした場合(ステップS114、Yes)、判定を終了させる。
一方、全てのHDDについて判定が終了していない場合(ステップS114、No)、ステップS115に処理を移行し、次の判定するHDDを選択する(ステップS115)。
次に、Disk Patrol実行部430dが行う処理について説明する。図6は、Disk Patrolの処理を示すフローチャートである。
まず、Disk Patrol実行部430dは、Disk Patrolを実行するHDDを選択する(ステップS200)。
次に、選択したHDDのアクセス数を取得し(ステップS201)、アクセス数が所定のアクセス数よりも少ない場合(ステップS202、Yes)、Disk Patrol実行部430dは、HDDのデータ処理部210aに対して実行命令を行う。
そして、実行命令を受けたHDDのデータ処理部210aは、Disk Patrolを実行する(ステップS203)。
一方、アクセス数が所定のアクセス数よりも大きい場合(ステップS202、No)、Disk Patrol実行部430dは、ステップS204へ移行する。
次に、Disk Patrol実行部430dは、実行を終了させる場合(ステップS204、Yes)、Disk Patrolを終了する。
一方、終了させない場合(ステップS204、No)、Disk Patrol実行部430dは、次のHDDを選択する(ステップS205)。
上述してきたように、本実施例1に係るRAID装置100は、エラー判定処理部430cが、エラー判定係数をエラー監視係数と比較判定して、エラー判定係数がエラー監視係数よりも超えており、さらに、そのNON MEDEIUM ERROR COUNTの上昇量が、許容エラー数を超えている場合、異常なHDDとして検出することで、これまで性能エラーとみなすことができなかったHDDについてのエラー判定をすることができる。
また、エラー判定処理部430cは、アクセス負荷が少なかったHDDを判定した場合、エラー判定係数がエラー監視係数を超えていても、異常HDDとは判定しない。結果として、無駄な異常判定をすることなく、交換が要求されていないHDDの無駄な交換を防ぐことができる。
加えて、Disk Patrol実行部430dが、HDDのデータ処理部210aにDisk Patrolを実行させることにより、アクセス負荷の少なかったHDDのアクセス数を強制的に上昇させて、異常か否かの判定をしていなかったHDDの判定をすることができる。
上記の実施例1を含む実施形態に関し、更に以下の付記を開示する。
(付記1)記憶装置が備える記憶媒体に起因しないエラー数を計数する計数手段と、
前記計数手段の計数結果に基づいて前記エラー数の上昇量を算出し、当該エラー数の上昇量に基づいて前記記憶装置が異常であるか否かを判定する異常判定手段と、
を備えたことを特徴とする異常判定装置。
(付記2)前記計数手段は、前記記憶媒体に対するアクセス数を更に計数し、前記異常判定手段は、前記計数手段の計数結果に基づいて、単位アクセス数あたりの前記エラー数の上昇量を算出し、算出結果と規定値とを比較することにより前記記憶装置が異常であるか否かを判定することを特徴とする付記1に記載の異常判定装置。
(付記3)前記異常判定手段は、前記算出結果が規定値を上回り、かつ、所定期間内におけるアクセス数が所定数以上の場合に、前記記憶装置が異常であると判定することを特徴とする付記2に記載の異常判定装置。
(付記4)所定期間内におけるアクセス数が所定数未満の場合に、前記記憶媒体に対するアクセス数を上昇させるアクセス数上昇手段を更に備えたことを特徴とする付記1、2または3に記載の異常判定装置。
(付記5)前記アクセス数は、上位装置から前記記憶媒体に対して実行されるアクセス数と、前記記憶装置自身が前記記憶媒体に起因するエラーをテストする場合に実行するアクセス数とを含んでいることを特徴とする付記1〜4のいずれか一つに記載の異常判定装置。
(付記6)前記記録媒体に起因しないエラーは、アクセス遅延エラーであることを特徴とする付記1〜5のいずれか一つに記載の異常判定装置。
(付記7)異常判定装置が、
記憶装置の備える記憶媒体に起因しないエラー数を計数して当該記憶装置に保管するステップと、
前記記憶装置に保管した前記エラー数の計数結果に基づいて当該エラー数の上昇量を算出し、その上昇量に基づいて当該記憶装置が異常であるか否かを判定するステップと、
を実行することを特徴とする異常判定方法。
(付記8)前記記憶媒体に対するアクセス数を更に計数して前記記憶装置に保管し、前記記憶装置に保管した前記エラー数とアクセス数に基づいて、単位アクセス数あたりの当該エラー数の上昇量を算出し、算出結果と規定値とを比較することにより当該記憶装置が異常であるか否かを判定することを特徴とする付記7に記載の異常判定方法。
(付記9)前記算出結果と規定値を比較して、当該算出結果が規定値を上回り、かつ、所定期間内におけるアクセス数が所定数以上の場合に、前記記憶装置が異常であると判定することを特徴とする付記8に記載の異常判定方法。
(付記10)所定期間内におけるアクセス数が所定数未満の場合に、前記記憶媒体に対するアクセス数を上昇させるステップを更に備えたことを特徴とする付記7、8または9に記載の異常判定方法。
(付記11)前記アクセス数は、上位装置から前記記憶媒体に対して実行されるアクセス数と、前記記憶装置自身が前記記憶媒体に起因するエラーをテストする場合に実行するアクセス数とを含んでいることを特徴とする付記7〜10のいずれか一つに記載の異常判定方法。
(付記12)前記記録媒体に起因しないエラーは、アクセス遅延エラーであることを特徴とする付記7〜11のいずれか一つに記載の異常判定方法。
本実施例1に係るRAID装置の構成を示す機能ブロック図である。 本実施例1に係るHDDの構成の一例を示す機能ブロック図である。 本実施例1に係る制御テーブルのデータ構造の一例を示す図である。 本実施例1に係るNON MEDEIUM ERRORの発生の一例を示す図である。 本実施例1におけるHDDのエラー処理を示すフローチャートである。 本実施例1におけるDisk Patrolの処理を示すフローチャートである。
符号の説明
50 ホスト
100 RAID装置
200a、b、c、d HDD
210 制御部
210a データ処理部
210b NON MEDEIUM ERROR COUNT部
220 記憶媒体(ディスク)
300 チャンネルインターフェース
400 HDD制御装置
410 HDD制御装置間通信部
420 RAM
420a ユーザデータ
420b 制御テーブル
430 CPU
430a HDD制御部
430b 情報収集部
430c エラー判定処理部
430d Disk Patrol実行部
440 ディスクインターフェース群

Claims (3)

  1. 記憶装置に対するアクセスへの応答に際して前記記憶装置内部における記録媒体へのリトライ要因となるエラー数と前記記憶媒体に対するアクセス数とを計数する計数手段と、
    前記計数手段の計数結果に基づいて単位アクセス数あたりの前記エラー数の上昇量を算出し、算出結果と規定値とを比較することにより前記記憶装置が異常であるか否かを判定する異常判定手段と、
    を備え
    前記異常判定手段は、前記算出結果が規定値を上回り、かつ、所定期間内における前記記憶媒体へのアクセス数が所定数以上の場合に、前記記憶装置が異常であると判定することを特徴とする異常判定装置。
  2. 所定期間内における前記記憶媒体へのアクセス数が所定数未満の場合に、前記記憶媒体に対するアクセス数を上昇させるアクセス数上昇手段を更に備えたことを特徴とする請求項1に記載の異常判定装置。
  3. 前記記憶媒体へのアクセス数は、上位装置から前記記憶媒体に対して実行されるアクセス数と、前記記憶装置自身が前記記憶媒体に起因するエラーをテストする場合に実行するアクセス数とを含んでいることを特徴とする請求項1または2に記載の異常判定装置。
JP2008135743A 2008-05-23 2008-05-23 異常判定装置 Active JP4627327B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008135743A JP4627327B2 (ja) 2008-05-23 2008-05-23 異常判定装置
US12/320,591 US8089712B2 (en) 2008-05-23 2009-01-29 Abnormality determining apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008135743A JP4627327B2 (ja) 2008-05-23 2008-05-23 異常判定装置

Publications (2)

Publication Number Publication Date
JP2009282848A JP2009282848A (ja) 2009-12-03
JP4627327B2 true JP4627327B2 (ja) 2011-02-09

Family

ID=41341919

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008135743A Active JP4627327B2 (ja) 2008-05-23 2008-05-23 異常判定装置

Country Status (2)

Country Link
US (1) US8089712B2 (ja)
JP (1) JP4627327B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9086970B2 (en) 2010-10-07 2015-07-21 International Business Machines Corporation Diagnosing entities associated with software components
JP6212947B2 (ja) 2013-05-16 2017-10-18 富士通株式会社 情報処理装置、制御装置及び制御プログラム
WO2019109299A1 (zh) * 2017-12-07 2019-06-13 华为技术有限公司 内存访问技术及计算机系统
CN117033044B (zh) * 2023-07-28 2024-05-28 深圳荣灿大数据技术有限公司 可视化访问系统及方法

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261278A (ja) * 1996-03-19 1997-10-03 Fujitsu Ltd 通信制御装置及び通信制御方法並びに中間通信制御ユニット
WO1998041915A1 (fr) * 1997-03-19 1998-09-24 Hitachi, Ltd. Sous-systeme pour pile de disques
JPH10283122A (ja) * 1997-04-02 1998-10-23 Sony Corp ディスク型データ記録再生装置
JP2002245613A (ja) * 2001-02-15 2002-08-30 Tdk Corp 磁気記録媒体および磁気記録再生システム
JP2002342532A (ja) * 2001-05-21 2002-11-29 Nippon Telegr & Teleph Corp <Ntt> トレンド予測装置および方法とトレンド予測プログラムおよび該プログラムを記録した記録媒体
JP2003006875A (ja) * 2001-06-22 2003-01-10 Sony Corp 光記録媒体
WO2003010763A1 (fr) * 2001-07-23 2003-02-06 Sony Corporation Appareil et procede d'effacement par prechauffage d'un support d'enregistrement optique et support d'enregistrement optique
JP2004152157A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd 端末管理システム、端末管理方法および端末管理プログラム
JP2004253087A (ja) * 2003-02-21 2004-09-09 Sony Corp 磁気記録媒体
JP2005122756A (ja) * 2004-11-22 2005-05-12 Hitachi Ltd 輻輳制御方法
JP2006147146A (ja) * 2006-02-24 2006-06-08 Toshiba Corp 半導体記憶装置
JP2007241837A (ja) * 2006-03-10 2007-09-20 Nec Corp ディスクアレイ制御装置および故障診断方法
JP2007323499A (ja) * 2006-06-02 2007-12-13 Mitsubishi Electric Corp システム分散処理装置およびシステム分散処理システム
JP2008511083A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. データ記憶部内のデータ位置に関する修正履歴を提供するためのシステムと方法
JP2008511084A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. 記憶装置の従前のデータ内容にアクセスするための、時刻マップの生成および使用
JP2008511082A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. チェックポイントを使用して記憶処理のi/oエラーを復旧させる方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3010763A (en) * 1960-07-18 1961-11-28 Getman Brothers Mfg Company Mine truck with sidewardly facing seat
JP3212677B2 (ja) 1992-04-07 2001-09-25 日本電気株式会社 周辺制御装置
JP2880701B2 (ja) 1997-05-21 1999-04-12 三菱電機株式会社 ディスクサブシステム
JP2001265538A (ja) 2000-03-16 2001-09-28 Matsushita Electric Ind Co Ltd ディスク装置の故障を予測する故障予測装置、媒体、および情報集合体
JP2006048789A (ja) * 2004-08-02 2006-02-16 Hitachi Global Storage Technologies Netherlands Bv 磁気ディスク装置の故障予測方法及びこれを用いた磁気ディスク装置

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261278A (ja) * 1996-03-19 1997-10-03 Fujitsu Ltd 通信制御装置及び通信制御方法並びに中間通信制御ユニット
WO1998041915A1 (fr) * 1997-03-19 1998-09-24 Hitachi, Ltd. Sous-systeme pour pile de disques
JPH10283122A (ja) * 1997-04-02 1998-10-23 Sony Corp ディスク型データ記録再生装置
JP2002245613A (ja) * 2001-02-15 2002-08-30 Tdk Corp 磁気記録媒体および磁気記録再生システム
JP2002342532A (ja) * 2001-05-21 2002-11-29 Nippon Telegr & Teleph Corp <Ntt> トレンド予測装置および方法とトレンド予測プログラムおよび該プログラムを記録した記録媒体
JP2003006875A (ja) * 2001-06-22 2003-01-10 Sony Corp 光記録媒体
WO2003010763A1 (fr) * 2001-07-23 2003-02-06 Sony Corporation Appareil et procede d'effacement par prechauffage d'un support d'enregistrement optique et support d'enregistrement optique
JP2004152157A (ja) * 2002-10-31 2004-05-27 Matsushita Electric Ind Co Ltd 端末管理システム、端末管理方法および端末管理プログラム
JP2004253087A (ja) * 2003-02-21 2004-09-09 Sony Corp 磁気記録媒体
JP2008511083A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. データ記憶部内のデータ位置に関する修正履歴を提供するためのシステムと方法
JP2008511084A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. 記憶装置の従前のデータ内容にアクセスするための、時刻マップの生成および使用
JP2008511082A (ja) * 2004-08-24 2008-04-10 レヴィヴィオ,インク. チェックポイントを使用して記憶処理のi/oエラーを復旧させる方法
JP2005122756A (ja) * 2004-11-22 2005-05-12 Hitachi Ltd 輻輳制御方法
JP2006147146A (ja) * 2006-02-24 2006-06-08 Toshiba Corp 半導体記憶装置
JP2007241837A (ja) * 2006-03-10 2007-09-20 Nec Corp ディスクアレイ制御装置および故障診断方法
JP2007323499A (ja) * 2006-06-02 2007-12-13 Mitsubishi Electric Corp システム分散処理装置およびシステム分散処理システム

Also Published As

Publication number Publication date
US20090290247A1 (en) 2009-11-26
JP2009282848A (ja) 2009-12-03
US8089712B2 (en) 2012-01-03

Similar Documents

Publication Publication Date Title
US6233108B1 (en) Storage device with the ability to check for defects in same
US8185784B2 (en) Drive health monitoring with provisions for drive probation state and drive copy rebuild
JP5078235B2 (ja) 磁気ディスク記憶装置におけるトラック・データ完全性の維持方法
CN109684140B (zh) 一种慢盘检测方法、装置、设备及计算机可读存储介质
US20090235110A1 (en) Input/output control method, information processing apparatus, computer readable recording medium
JP4573179B2 (ja) 性能負荷異常検出システム、性能負荷異常検出方法、及びプログラム
JP2006164445A (ja) 監視装置
CN111104293A (zh) 用于支持盘故障预测的方法、设备和计算机程序产品
CN103207820A (zh) 基于raid卡日志的硬盘的故障定位方法及装置
US10606490B2 (en) Storage control device and storage control method for detecting storage device in potential fault state
JP4627327B2 (ja) 異常判定装置
CN110704287B (zh) Linux系统下RAID卡异常日志收集方法、系统及存储介质
US7624300B2 (en) Managing storage stability
US7590801B1 (en) Identifying suspect disks
CN103049345A (zh) 基于异步通信机制的磁盘状态变迁检测方法及装置
JP2017037626A (ja) 故障予測装置、故障予測方法及び故障予測プログラム
JP4775843B2 (ja) ストレージシステム及び記憶制御方法
CN108170375B (zh) 一种分布式存储系统中的超限保护方法和装置
JP2008257411A (ja) ディスク制御システム
US20070277059A1 (en) Storage device, control device, and error reporting method
JP2880701B2 (ja) ディスクサブシステム
WO2021170048A1 (zh) 一种数据存储方法、装置及存储介质
US8661288B2 (en) Diagnosis system for removable media drive
CN115470059A (zh) 一种磁盘检测方法、装置、设备及存储介质
JP2004118397A (ja) 磁気ディスク装置の障害発生予測システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100608

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100907

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101102

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101104

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4627327

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150