JP4714776B2 - プログラム、記憶制御方法及び記憶制御装置 - Google Patents
プログラム、記憶制御方法及び記憶制御装置 Download PDFInfo
- Publication number
- JP4714776B2 JP4714776B2 JP2009004282A JP2009004282A JP4714776B2 JP 4714776 B2 JP4714776 B2 JP 4714776B2 JP 2009004282 A JP2009004282 A JP 2009004282A JP 2009004282 A JP2009004282 A JP 2009004282A JP 4714776 B2 JP4714776 B2 JP 4714776B2
- Authority
- JP
- Japan
- Prior art keywords
- disk device
- data
- read
- normal
- write
- 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
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、上位装置からのコマンドに基づいて冗長構成を取る複数のディスク装置にデータを読み書きするプログラム、方法及び装置に関し、特に、エラー統計加算値が閾値に達した被疑ディスク装置のデータをホットスタンバイしている予備装置に復元して切り離すプログラム、方法及び装置に関する。
従来、ホストからの入出力要求を処理するディスクアレイサブシステムにあっては、RAID1やRAID5として知られた冗長構成を採用し、冗長構成をとる一部のディスク装置が故障しても残りの正常なディスク装置によりホストからの入出力要求に対応できるようにしている。
ところでディスクアレイを構成しているディスク装置の故障は、モーター故障等による突然の故障と、部分故障等の要因が少しずつ積み重なり故障に至る場合がある。このうち後者の部分故障等の要因が少しずつ積み重なり故障に至るディスク故障については、故障要因の積み重なりによるエラー統計加算値を求め、エラー統計加算値が所定の閾値に達した時に、ホットスタンバイとして知られた待機中の予備ディスク装置にデータの復元処理を実行し、復元が完了した時点で故障ディスク装置を切り離して予備ディスク装置に接続し、故障ディスク装置の交換修理を行っている。
しかしながら、このような従来のディスクアレイサブシステムにおける故障ディスク装置から予備ディスク装置へのデータ復元処理あっては、データ復元中に再びエラーが検出された場合、エラー統計加算値が閾値を越えた後のエラーであることから、予備ディスク装置へのデータ復元が未完了状態でも故障ディスク装置の切り離し処理が行われ、冗長性が失われてしまう問題があった。
本発明は、データ復元中に故障状態が検出されても故障ディスク装置を切り離すことなく可能な限り冗長構成を保持した状態での保守を可能として信頼性を向上するプログラム、方法及び装置を提供することを目的とする。
(プログラム)
本発明は、上位装置16からのコマンドに基づいて冗長構成をとる複数のディスク装置にデータを読み書きするディスクアレイ制御装置12のコンピュータで実行されるプログラムを提供する。本発明にあっては、予備ディスク装置34へのデータ復元を同じデバイスアダプタの配下にある被疑ディスク装置からのコピー処理を主体に行うことを特徴とする。
本発明は、上位装置16からのコマンドに基づいて冗長構成をとる複数のディスク装置にデータを読み書きするディスクアレイ制御装置12のコンピュータで実行されるプログラムを提供する。本発明にあっては、予備ディスク装置34へのデータ復元を同じデバイスアダプタの配下にある被疑ディスク装置からのコピー処理を主体に行うことを特徴とする。
本発明のプログラムは、コンピュータに、
複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答するリード処理ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置を及び予備ディスク装置にデータをライトし、被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを予備ディスク装置にリビルドして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする。
複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答するリード処理ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置を及び予備ディスク装置にデータをライトし、被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを予備ディスク装置にリビルドして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする。
ここで本発明の記憶装置は、例えば同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、この場合、本発明のプログラムは、コンピュータに、
エラー判定ステップは、プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
リード処理ステップは、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
ライト処理ステップは、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をライト管理テーブルに登録し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、擬似ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、
アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを予備ディスク装置にリビルドして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
エラー判定ステップは、プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
リード処理ステップは、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
ライト処理ステップは、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をライト管理テーブルに登録し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、擬似ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、
アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを予備ディスク装置にリビルドして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
また本発明の記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、この場合、本発明のプログラムは、コンピュータに、
エラー判定ステップは、ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
リード処理ステップは、
復元モードの設定中に上位装置から被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
ライト処理ステップは、
復元モード設定中に上位装置から被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をライト管理テーブルに登録し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、擬似ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、
アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のデータを算出して予備ディスク装置にリビルドして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
エラー判定ステップは、ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
リード処理ステップは、
復元モードの設定中に上位装置から被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
ライト処理ステップは、
復元モード設定中に上位装置から被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をライト管理テーブルに登録し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、擬似ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、
アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のデータを算出して予備ディスク装置にリビルドして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
本発明の別の形態にあっては、予備ディスク装置へのデータ復元を別のデバイスアダプタの配下にある正常ディスク装置からのリビルド処理を主体に行うことを特徴とする。
本願は、また上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶装置のコンピュータで実行されるプログラムを提供する。
本願は、また上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶装置のコンピュータで実行されるプログラムを提供する。
本発明による別の形態のプログラムにあっては、コンピュータに、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とする。
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とする。
また記憶装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
エラー判定ステップは、プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
ライト処理ステップは、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
リード処理ステップは、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク以の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答し、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
エラー判定ステップは、プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
ライト処理ステップは、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
リード処理ステップは、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク以の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答し、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答し、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
更に、記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
ライト処理ステップは、
復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
リード処理ステップは、
復元モードの設定中に上位装置から被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して応答し、
正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、正常ディスク装置のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始し、
リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
ライト処理ステップは、
復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
リード処理ステップは、
復元モードの設定中に上位装置から被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して応答し、
正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答し、
復元処理ステップは、
復元モード設定中の上位装置からのアクセス空き時間に、正常ディスク装置のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき被疑ディスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始し、
リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、
復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする。
(方法)
本発明は記憶制御方法を提供する。本発明は、上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御方法に於いて、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答するリード処理ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置を及び予備ディスク装置にデータをライトし、被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを予備ディスク装置にリビルドして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする。
本発明は記憶制御方法の別の形態を提供する。本発明は、上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御方法に於いて、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする。
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理ステップと、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする。
(装置)
本発明は記憶装置を提供する。本発明は、上位装置からのコマンドに基づいて冗長構成を取る複数のディスク装置に対しデータを読み書きする記憶装置に於いて、
前記ディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に被疑ディスク装置からデータをリードして応答するリード処理部と、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置、被疑ディスク装置を及び予備ディスク装置にデータをライトし、被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
復元モード設定中の上位装置からのアクセス空き時間に、被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当した時または被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする。
本発明は、複数の記憶部と、記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、複数の記憶部の一方にエラーが発生した場合に、リードコマンドを受信したときには、複数の記憶部の他方よりデータをリードし、他方の記憶部からのデータリードが失敗した場合にはた一方の記憶部からデータをリードするリード処理部を備えたことを特徴とする。
本発明は、複数の記憶部と、記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
複数の記憶部の一方にエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中にライトコマンドを受信したときに、一方の記憶部へのデータライト失敗が判定された場合には、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
一方の記憶部のアドレス範囲を指定しながらデータを予備記憶部へ順次コピーして復元する処理を行ない、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当したとき、または一方の記憶部から予備記憶部への復元処理が失敗したときには、複数の記憶部の他方に記憶されたデータを予備記憶部に復元する復元処理部と、
を備えたことを特徴とする。
複数の記憶部の一方にエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中にライトコマンドを受信したときに、一方の記憶部へのデータライト失敗が判定された場合には、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
一方の記憶部のアドレス範囲を指定しながらデータを予備記憶部へ順次コピーして復元する処理を行ない、アドレス範囲が管理テーブルのライト失敗アドレス範囲に該当したとき、または一方の記憶部から予備記憶部への復元処理が失敗したときには、複数の記憶部の他方に記憶されたデータを予備記憶部に復元する復元処理部と、
を備えたことを特徴とする。
本発明は記憶装置の別の形態を提供する。本発明は、上位装置からのコマンドに基づいて冗長構成をとる複数のディスク装置にデータを読み書きする記憶装置に於いて、
複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理部と、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする。
複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と、
復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合に管理テーブルから有効アドレス範囲にあることを確認して被疑ディスク装置のデータをリード応答するリード処理部と、
復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、リビルド復元処理が失敗した場合に管理テーブルの有効アドレス範囲にあることを確認して被疑ディスク装置のデータを予備ディスク装置にコピーして復元し、復元完了で被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする。
本発明は、複数の記憶部と、記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
複数の記憶部のいずれかにエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中にライトコマンドを受信したときに、ライトアドレス範囲に対応して、ライト処理の正常終了とエラーを発生した記憶部のデータの無効またはライト処理の異常終了とエラーを発生した記憶部のデータの有効を管理テーブルに登録するライト処理部と、
復元モード設定中に、正常な記憶部のアドレス範囲を指定しながらデータを予備記憶部に復元する処理を実行し、復元処理が失敗した際に、失敗したアドレス範囲のデータが有効であることを管理テーブルから確認してエラーを発生した記憶部のデータを予備記憶部に復元する復元処理部と、
を備えたことを特徴とする。
複数の記憶部のいずれかにエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
復元モード設定中にライトコマンドを受信したときに、ライトアドレス範囲に対応して、ライト処理の正常終了とエラーを発生した記憶部のデータの無効またはライト処理の異常終了とエラーを発生した記憶部のデータの有効を管理テーブルに登録するライト処理部と、
復元モード設定中に、正常な記憶部のアドレス範囲を指定しながらデータを予備記憶部に復元する処理を実行し、復元処理が失敗した際に、失敗したアドレス範囲のデータが有効であることを管理テーブルから確認してエラーを発生した記憶部のデータを予備記憶部に復元する復元処理部と、
を備えたことを特徴とする。
なお、本発明の方法及び装置におけるRAID1及びRAID5についての具体例は本発明のプログラムと基本的に同じになる。
(スムージング)
本発明は、入力された2値化白黒ドットデータの画質を補正して印刷出力する印刷装置を防止できる。また間引によるジャギーについては、誤差拡散法により2値化した後のスムージングにより適正に補正される。
本発明は、入力された2値化白黒ドットデータの画質を補正して印刷出力する印刷装置を防止できる。また間引によるジャギーについては、誤差拡散法により2値化した後のスムージングにより適正に補正される。
更に画質補正ユニットは、白黒ドットデータとして注目ドット及び複数の周辺ドットのグル−プを順次入力して登録凹凸パターンと比較し、パターン一致が得られた場合に、注目ドットをn分割したドット内の所定位置と所定数のドット内分割領域を黒領域とする面積階調補正を行う。
本発明によれば、エラー統計加算値が所定の閾値を越えた被疑ディスク装置から予備ディスク装置へのデータ復元処理中に上位装置からの入出力要求に対しリード失敗やライト失敗が発生しても被疑ディスク装置を含む冗長処理で対応することで、被疑ディスク装置の切り離し条件が発生しにくい状況を作り出し、データ復元中であっても冗長性を可能な限り保持し、冗長性が喪失される時間及び領域を最小限に抑え、データ喪失の危険性を大幅に低減することができる。
本発明の被疑ディスクを主体とした復元処理にあっては、被疑ディスク装置をコピー元として同じディスクアダプタの配下にある予備ディスク装置にデータを復元することを基本とする。この場合、ホスト入出力要求の内、リード要求については、正常ディスク装置のリード処理が失敗した場合を除いて被疑ディスク装置へのリード要求は行わず、データ復元中の故障発生の可能性を低減する。
またライト要求については、被疑ディスク装置を含む冗長構成のディスク装置と予備ディスク装置に2重ライトするが、被疑ディスク装置のライト処理でエラーが発生しても、被疑ディスク装置の切り離しやホストへのエラー応答は行わず、被疑ディスク装置のライト失敗箇所を管理テーブルに登録しておく。
データ復元処理は、被疑ディスク装置をコピー元として同じデバイスアダプタの配下にある予備ディスク装置にデータを復元しているが、被疑ディスク装置のライト失敗箇所を管理テーブルから認識した場合、ライト失敗箇所については別のデバイスアダプタの配下にある正常ディスク装置から予備ディスク装置にデータをリビルド処理で復元する。また被疑ディスク装置から予備ディスク装置へデータ復元処理が失敗した場合も正常ディスク装置から予備ディスク装置へリビルド処理でデータを復元する。これによってデータ復元処理を冗長処理とすることができる。
本発明の別の形態にあっては、正常ディスク装置を主体としたデータ復元処理は、正常ディスク装置をコピー元としてリビルド処理により予備ディスク装置にデータを復元することを基本とする。この場合、ホスト入出力要求の内、リード要求については、正常ディスク装置のリード処理が失敗した場合を除いて被疑ディスク装置へのリード要求は行わず、データ復元中の故障発生の可能性を低減する。
またライト要求については、被疑ディスク装置を除く冗長構成の正常ディスク装置と予備ディスク装置にライトし、ライトアドレス範囲に対応してライト処理の正常終了か異常終了かと、被疑ディスク装置のデータが有効(ライト異常終了時)か無効(ライト正常終了時)かを管理テーブルに登録しておく。
データ復元処理は、別のデバイスアダプタの配下にある正常ディスク装置をコピー元としリビルド処理により予備ディスク装置にデータを復元しているが、リビルド処理に失敗した場合、管理テーブルから有効アドレス範囲を確認して被疑ディスク装置から予備ディスク装置へコピー処理によりデータ復元する。これによってデータ復元処理についても冗長処理とすることができる。
図2は、本発明が適用される冗長構成をとる記憶装置であるディスクアレイサブシステムのブロック図である。図2において、ディスクアレイサブシステム10は、ディスクアレイ制御装置12とデバイスエンクロージャ14−1,14−2で構成される。ディスクアレイ制御装置12に対しては上位装置としてホスト16−1,16−2が接続される。
ディスクアレイ制御装置12には、チャネルアダプタ18−1〜18−4、ルータ20−1,20−2、中央処理モジュール22−1〜22−4、ルータ20−3,20−4及びデバイスアダプタ24−1〜24−4が設けられる。
デバイスエンクロージャ14−1,14−2には論理物理デバイス(PLU)として、この実施形態にあってはハードディスクドライブHDDを用いたディスク装置26−11〜26−2nを設けている。なお、ディスクアレイサブシステム10におけるチャネルアダプタ、ルータ及びデバイスアダプタの台数は、必要に応じて更に増加させることができる。
図3は、本発明によるディスクアレイ制御装置の第1実施形態のブロック図であり、この第1実施形態にあってはRAID1の冗長構成を対象とし、復元モードにおける予備ディスクへのデータの復元を、エラー統計加算値が閾値を超えた被疑ディスク装置を主体に行うようにしたことを特徴とする。
図3において、ディスクアレイ制御装置12は図2の中央処理モジュール22−1の系統について取り出して示しており、中央処理モジュール22−1はプロセッサ36とキャッシュ処理部38を備えている。プロセッサ36にはホスト16−1が、図2に示したチャネルアダプタ18−1〜18−4のいずれか及びルータ20−1〜20−2のいずれかを介して接続される。
またプロセッサ36は、ルータ20−3,20−4のいずれかを介してデバイスアダプタ24−1,24−2に接続され、デバイスアダプタ24−1,24−2に対してはディスクアレイ28が接続され、ディスクアレイ28はRAID1に対応してプライマリディスク装置30とセカンダリディスク装置32が設けられ、更にホットスタンバイとしての予備ディスク装置34が設けられている。
ここでデバイスアダプタ24−1,24−2はその配下に予備ディスク装置を少なくとも1台接続しており、図3にあっては、セカンダリディスク装置32のデータを予備ディスク装置に復元する場合を例につることから、デバイスアダプタ24−2の配下の予備ディスク装置34を示している。
RAID1の冗長構成にあっては、プライマリディスク装置30とセカンダリディスク装置32に同じデータを格納したミラー構成としており、ホスト16−1からの入出力要求に基づくリード要求に対しては、例えば予め定めたプライマリディスク30からリードして応答し、一方、ライト要求についてはプライマリディスク30とセカンダリディスク32の両方に書き込む。
ディスクアレイ制御装置12に設けているプロセッサ36には、そのプログラム制御により実現される機能として、エラー判定部40、リード処理部42、ライト処理部44、データ復元処理部46、更に管理テーブル48が設けられている。
エラー判定部40はプライマリディスク装置30及びセカンダリディスク装置32のそれぞれについて、エラー統計加算値が所定の閾値を超えた場合に被疑ディスクと判定して、被疑ディスク装置から同じデバイスアダプタ24−2の配下にある予備ディスク装置34にデータを復元するための復元モードを設定する。この例ではセカンダリディスク32のエラー統計加算値が閾値を超え、セカンダリディスク装置32が被疑ディスク装置と判定された場合を例にとって以下説明する。
ここでディスク装置のエラー統計加算値は、ディスクアレイ制御装置12の運用中におけるディスク装置の各種の故障、例えばモータストップ、媒体欠陥エラー、モードエラーなどのエラー種別について、予め加算値を設定しておき、エラー発生ごとに対応する加算値をエラー統計加算値として求め、これが閾値を超えたときに復元モードを設定することになる。
リード処理部42は、復元モードの設定中にホスト16−1からリードコマンドを受信した際に、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、正常ディスク装置のリードが失敗した場合には被疑ディスク装置からデータをリードして応答する。このように被疑ディスク装置をリード対象から除外しておくことで、データ復元中における故障発生を可能な限り回避する。
ライト処理部44は、復元モードの設定中にホスト16−1からライトコマンドを受信した場合、正常ディスク装置及び被疑ディスク装置の両方にデータを書き込み、更に被疑ディスク装置については同時に予備ディスク装置34のも同時に書き込む2重書込みを行う。
このとき、被疑ディスク装置の書込みに失敗した場合には、被疑ディスク装置の切り離し処理やライト処理のエラー応答は行わず、管理テーブル48に書込みを失敗したアドレス範囲を登録する。この書込みを失敗したアドレス範囲の登録としては、被疑ディスク装置における論理ブロックアドレスLBAによる開始アドレスと終了アドレスを登録することになる。
データ復元処理部46は、復元モード設定中におけるホスト16−1からのアクセス空き時間に被疑ディスク装置のアドレス範囲を所定単位に指定しながら、被疑ディスク装置のデータを同じデバイスアダプタ24−2の配下にある予備ディスク装置34に順次コピーして復元する。
このデータ復元処理の際には、被疑ディスク装置の管理テーブル48を参照し、コピーするアドレス範囲が管理テーブル48に登録している書込みが失敗したアドレス範囲に該当するときは、別のデバイスアダプタ24−1の配下にある正常ディスク装置から中央処理モジュール22−1にステージングした後に予備ディスク装置34にライトするリビルド処理によってデータを復元する。
またコピーするアドレス範囲が管理テーブル48の書込みを失敗したアドレス範囲に該当せずに、被疑ディスク装置からデータを復元した際に、このデータ復元処理が失敗した場合にも、正常ディスク装置からデータをリビルド処理により復元する。
この被疑ディスク装置を主体とした予備ディスク装置34に対するデータ復元が完了すると、被疑ディスク装置を切り離して予備ディスク装置に切り替える。切り離された被疑ディスク装置は、その後、保守要員が交換修理などの必要な処置をとることになる。
図4は図3のディスクアレイ制御装置による復元モードへのリード処理、ライト処理及びデータ復元処理の概略の説明図である。図4において、セカンダリディスク装置32が被疑ディスク装置と判定された復元モードの設定中にあっては、ホスト16−1からのリード要求に対しては正常ディスク装置であるプライマリディスク装置30のみからリードデータを応答するリード処理48を行う。
またホスト16−1からのライト要求に対しては、正常ディスク装置であるプライマリディスク装置30に書き込むライト処理50を行うと共に、被疑ディスク装置であるセカンダリディスク装置32と予備ディスク装置34の両方に同時書込みを行う2重ライト処理52を行う。
またホスト16−1からのアクセスがないアイドル状態にあっては、被疑ディスク装置であるセカンダリディスク装置32からデバイスアダプタ24−2経由で予備ディスク装置34にデータをコピーして復元させるコピー処理54を行う。
図5は、図3のディスクアレイ制御装置12に設けている管理テーブル48の説明図である。管理テーブル48は、インデックス、ライト失敗開始アドレス、ライト失敗終了アドレスを持ち、被疑ディスク装置に対するライト処理が失敗した場合に、そのときのライト開始の論理ブロックアドレス(LBA)及び終了論理ブロックアドレスを登録している。
この管理テーブル48は、予備ディスク装置に対する被疑ディスク装置からのデータコピーによる復元処理の際に参照され、もし管理テーブル48に登録しているライト失敗アドレス範囲に該当する場合には被疑ディスク装置からのデータ復元は行わず、正常ディスク装置からデータ復元を行うことになる。
図6は、図3のディスクアレイ制御処理のフローチャートである。図6において、ステップS1にあっては、RAID1の冗長構成を持つプライマリディスク装置30とセカンダリディスク装置32につき、それぞれのエラー統計加算値が所定の閾値を超えたか否かチェックしており、超えていなければステップS2でRAID1の通常処理を行う。
ステップS1でプライマリディスク装置30またはセカンダリディスク装置32のうちのいずれか、例えばセカンダリディスク装置32のエラー統計加算値が閾値を超えると、同じデバイスアダプタ24−2の配下にある予備ディスク装置34に対する復元モードを設定してステップS3に進み、ホストコマンドの受信をチェックしている。
ホストコマンドの受信がないアイドル状態にあっては、ステップS14に進んでデータ復元処理を実行する。データ復元処理は被疑ディスク装置であるセカンダリディスク装置32のデータを予備ディスク装置34にコピーして復元する処理である。
ステップS3で復元モード設定中にホストコマンドを受信すると、ステップS4に進み、リードコマンドであった場合には、ステップS7でステップS5で正常ディスク装置であるプライマリディスク装置30からリードして応答する。もし正常ディスク装置からのリードにつきステップS6でリードエラーが判定された場合には、被疑ディスク装置であるセカンダリディスク装置32からリードして応答する。この被疑ディスク装置のリードについてステップS8でリードエラーが判定された場合には異常終了とする。
一方、ホストコマンドがステップS9でライトコマンドと判定された場合には、ステップS10に進み、正常ディスク装置と被疑ディスク装置、即ちプライマリディスク装置30とセカンダリディスク装置32、更に予備ディスク装置34にデータをライトする。
このときステップS11で被疑ディスク装置であるセカンダリディスク装置32のライト失敗が判定されると、セカンダリディスク装置32の切り離しやライト処理のエラー応答をすることなく、ステップS12で図5に示した被疑ディスク装置用の管理テーブル48にライト失敗のアドレス範囲として開始アドレスと終了アドレスを登録する。
続いてステップS13で停止指示の有無をチェックしており、停止指示があるまでステップS3からの処理を繰り返す。またステップS14のデータ復元処理において予備ディスク装置34への復元処理が完了すると復元モードが解除され、ステップS1,S2の通常処理に戻る。
図7は、図6におけるステップS14のデータ復元処理のフローチャートである。図7において、ステップS1でコピー元となる被疑ディスク装置の論理ブロックアドレスLBAについて最初のコピー範囲をセットし、ステップS2で被疑ディスク用の管理テーブル48を参照し、セットしたアドレス範囲がライト失敗アドレス範囲かどうか、ステップS3で判定する。
ライト失敗アドレス範囲でなければステップS4に進み、被疑ディスク装置から予備ディスク装置34に、セットしたアドレス範囲のデータのコピーを行う。続いてステップS5でデータ復元処理が失敗していなければ、ステップS7に進み、最終論理ブロックアドレスか否かチェックし、そうでなければステップS8でコピーアドレスを更新した後、ステップS1に戻って処理を繰り返す。
ステップS3で、セットしたコピー用のアドレス範囲が被疑ディスク用の管理テーブル48のライト失敗アドレス範囲に該当していた場合には、ステップS6に進み、正常ディスク装置から、そのアドレス範囲のデータを予備ディスク装置にリビルド処理で復元する。
ステップS7でコピーアドレス範囲が最終論理ブロックアドレスに達すると、ステップS9に進み、被疑ディスク装置を切り離すと共に、復元モードを解除し、これによって被疑ディスク装置がデータ復元の済んだ予備ディスク装置に切り替わり、RAID1の冗長構成による通常処理に復帰する。
図8は、本発明によるディスクアレイ制御装置の第2実施形態のブロック図である。この第2実施形態にあっては、RAID5の冗長構成を対象とし、図3の第1実施形態と同様、復元モードの設定中に被疑ディスク装置を主体に予備ディスク装置にデータを復元するようにしたことを特徴とする。
図8において、ディスクアレイ制御装置12には中央処理モジュール22−1を代表して示し、中央処理モジュール22−1にはプロセッサ36とキャッシュ処理部38が設けられている。プロセッサ36に対してはホスト16−1が接続されて入出力要求を行い、またデバイスアダプタ24−1,24−2を介してディスクアレイ58を接続している。
ディスクアレイ58はRAID5の冗長構成をとっており、ディスク装置60,62,64,66の4台でRAIDの冗長構成をとり、更にホットスタンバイとして予備ディスク装置68を設けている。
RAID5の冗長構成は、4台のディスク装置60,62,64,66のうちの3台に分割したデータいわゆるストライプデータを格納し、残りの1台に3つのストライプデータから求めたパリティを格納している。そしてパリティを格納するディスク装置は、3つのディスク装置に対するストライプデータのアドレスごとに位置が変化する。
このRAID5の冗長構成をとる4台のディスク装置60,62,64,66に対するデータの格納状態は、例えば図9(A)に示すようになる。なお図8の第2実施形態にあっては、4台のディスクのうちのディスク装置66について、エラー統計加算値が閾値を超えて被疑ディスクと判定された場合を例にとっていることから、図9(A)にあってはディスク装置60,62,64を正常ディスク装置、ディスク装置66を被疑ディスク装置として示している。
図9(A)から明らかなように、ディスク装置60,62,64,66の論理ブロックアドレスLBA=0,1,2,3,・・・にはストライプデータとパリティが格納されている。このうちパリティはアドレスごとに異なる位置に格納されている。
RAID5の冗長構成のディスク装置群に対するアクセスは、各ディスク装置単位のストライプデータを最小単位として読出しまたは書込みを行うことができる。
再び図8を参照するに、ディスクアレイ制御装置12のプロセッサ36には、エラー判定部70、リード処理部72、ライト処理部74、データ復元処理部76及び管理テーブル78が設けられている。
エラー判定部70は、RAID5の冗長構成をとるディスク装置60,62,64,66のいずれかのエラー統計加算値が所定の閾値を超えた場合に被疑ディスク装置と判定して、被疑ディスク装置と同じデバイスアダプタ24−2の配下にある予備ディスク装置68にデータを復元するための復元モードを設定する。この実施形態の説明にあっては、ディスク装置66でエラー統計加算値が閾値を超えて被疑ディスク装置と判定された場合を例にとっている。
リード処理部72は、復元モードの設定中にホスト16−1からリードコマンドを受信した場合、リード対象に被疑ディスク装置としてのディスク装置66のデータを含む場合、正常ディスク装置であるディスク装置60,62,64からリードしたデータ及びまたはパリティに基づき、RAID5の冗長方式に従って被疑ディスク装置であるディスク装置66のデータを算出して応答する。
例えば図9(A)の論理ブロックアドレスLBA=0で被疑ディスク装置であるディスク装置66のリード要求を受けたとすると、正常ディスク装置であるディスク装置60,62,64のデータP1,D1,D2を、図9(B)のように読み出す。ここで図9(A)のように既にディスク装置に格納されているデータを読み出した場合、これを旧データと呼び、パリティについては旧パリティと呼び、それぞれ符号の後ろに「OLD」を下付けする。また新たにディスク装置に書き込むデータについては、新データまたは新パリティと呼んで、符合の後ろに「NEW」を下付けして表わす。
(旧パリティP1OLD)、(旧データD1OLD、)、(旧データD2OLD)
となり、被疑ディスク装置66のデータD3OLDは破線のように読み出していない。
(旧パリティP1OLD)、(旧データD1OLD、)、(旧データD2OLD)
となり、被疑ディスク装置66のデータD3OLDは破線のように読み出していない。
この図9(B)の正常ディスク装置60,62,64からの読出しデータに基づき、図9(C)のようにRAIDの冗長方式に従って被疑ディスク66に格納している旧データD3OLDを算出する。即ち、正常ディスク装置60,62,64から読み出した旧パリティP1OLD、旧データD1OLD、D2OLDの3つの(+)で示す排他論理和をとることで算出する。
このように図8の復元モード設定中におけるリード処理にあっては、被疑ディスク装置であるディスク装置66のストライプデータのリード要求について、被疑ディスク装置から読み出さずに他の正常なディスク装置60,62,64から読み出したデータに基づいて計算して求めることで、被疑ディスク装置となっているディスク装置66からのリード処理に伴うエラー発生を回避するようにしている。
プロセッサ36に設けたライト処理部74は、復元モード設定中にホスト16−1からライトコマンドを受信した場合、ライト対象に被疑ディスク装置であるディスク装置66のデータを含む場合、リード処理部72の場合と同様に正常ディスク装置であるディスク装置60,62,64から読み出したデータに基づいて、例えば図9(B)(C)に示したようにして被疑ディスク装置であるディスク装置66のデータを計算する。
続いて図9(D)に示すような被疑ディスク装置66に対するライト要求の新データD3NEWが得られていることから、図9(E)に示すように
新パリティ=旧パリティ(+)旧データ(+)新データ
P1NEW=P1OLD(+)D3OLD(+)D3NEW
によって新パリティを計算する。
新パリティ=旧パリティ(+)旧データ(+)新データ
P1NEW=P1OLD(+)D3OLD(+)D3NEW
によって新パリティを計算する。
そして、新パリティP1NEWを新データD3NEWと共に、図9(F)のように、パリティについては対応するディスク装置60に書き込み、新データについては被疑ディスク装置66に書き込む。
更に、新データを被疑ディスク装置66に書き込んだ際に書き込み失敗を判定した場合には、管理テーブル78に書込みに失敗したアドレス範囲を登録する。この管理テーブル78は、図5に示した第1実施形態の管理テーブル48と基本的に同じであり、インデックス、ライト失敗開始アドレス及びライト失敗終了アドレスを登録する。
プロセッサ36に設けたデータ復元処理部76は、復元モードの設定中のホスト16−1からのアクセス空き時間に、被疑ディスク装置であるディスク装置66のアドレス範囲を指定しながらデータを予備ディスク装置68に順次コピーして復元する。
この予備ディスク装置68への復元処理は、コピー元となる被疑ディスク装置66のコピーアドレス範囲が管理テーブル78のライト失敗アドレス範囲に該当するか否かチェックし、該当しなければ被疑ディスク装置66から復元し、該当する場合には正常ディスク装置であるディスク装置60,62,64からリードしたデータ及びパリティに基づき、被疑ディスク装置66のデータを算出して、予備ディスク装置68にリビルド処理により復元する。
図10は図8のRAID5の冗長構成を対象としたディスクアレイ制御装置による復元モードでのリード処理、ライト処理及びデータ復元処理の概略を示している。まずホスト16−1から被疑ディスク装置66に対しリード要求があった場合には、被疑ディスク装置66からリード応答せず、正常ディスク装置60,62,64からデータを読み出し、読み出したデータ及びまたはパリティに基づいて論理和計算を行うことで被疑ディスク装置66のデータを求め、これを応答する。
ホスト16−1から被疑ディスク装置66に対しライト要求があった場合には、リード要求の場合と同様、正常ディスク装置60,62,64の読出しデータから排他論理和をとることにより被疑ディスク装置66のデータを計算し、ホストからの新データと被疑ディスク装置66の計算した旧データ、更に正常ディスク装置60,62,64のいずれかから得られた旧パリティに基づいて新パリティを計算し、新データはデータライト処理80により被疑ディスク装置66に格納し、新パリティについては例えばパリティを格納している正常ディスク装置64に対しパリティライト処理82を行う。
復元モードの設定中における被疑ディスク装置66からの予備ディスク装置68に対するデータ復元処理は、被疑ディスク装置66のコピーアドレス範囲が、その管理テーブル78のライト失敗アドレス範囲に該当しなければ、被疑ディスク装置66のデータをコピー処理84によりコピーして予備ディスク装置68に格納するコピー処理84を行う。
被疑ディスク装置66のコピーアドレス範囲が管理テーブル78に登録されているライト失敗アドレス範囲に該当する場合には、正常ディスク装置60,62,64の読出しデータから排他論理和計算により被疑ディスク装置66のデータを計算して、リビルド処理により予備ディスク装置68に復元する。
図11は、図8のディスクアレイ制御処理のフローチャートである。図11において、ステップS1でRAID5の冗長構成をとる4台のディスク装置正常ディスク装置60,62,64,66についてエラー統計加算値が閾値を超えたか否かチェックしており、閾値を超えるまではステップS2のRAID5通常処理を行っている。
ステップS1でいずれかのディスク装置のエラー統計加算値が閾値を超えると、復元モードを設定してステップS3に進み、ホストコマンドの受信の有無をチェックしており、ホストコマンドを受信されないアイドル状態において、ステップS12のデータ復元処理を実行している。
ステップS3でホストコマンドが受信され、ステップS4でリードコマンドであることが判別されると、ステップS5のRAID5のリード処理を実行する。続いてステップS6でリードエラーの有無をチェックし、もしリードエラーがあった場合には異常終了とする。ホストコマンドがライトコマンドであることをステップS7で判別すると、ステップS8に進み、RAID5のライト処理を実行する。
続いてステップS9で被疑ディスク装置のライト失敗が判別されると、ステップS10に進み、被疑ディスク用の管理テーブル78にライト失敗とアドレス範囲を記録し、ステップS11で停止指示があるまで、ステップS3からの処理を繰り返す。ステップS5のRAID5リード処理、ステップS8のRAID5ライト処理、更にステップS12のデータ復元処理は、図12、図13及び図14のフローチャートで詳細に示す。
図12は、図11のステップS5におけるRAID5リード処理のフローチャートである。図12において、ステップS1でリード要求が被疑ディスク装置からのリードか否かチェックし、被疑ディスク装置からのリードであればステップS2に進み、正常ディスク装置の全ストライプデータ(パリティを含む)をリードし、全データの排他論理和をとることにより、ステップS3で被疑ディスク装置のデータを計算により復元してリード応答とする。またステップS1でリード要求が被疑ディスク装置以外のディスク装置であった場合には、ステップS4に進み、正常ディスク装置のストライプデータをリードして応答する。
このように復元応答設定中のRAID5リード処理にあっては、被疑ディスク装置からのリード処理は行なわず、正常ディスク装置のリードデータから計算により被疑ディスク装置のデータを復元してリード応答することで、被疑ディスク装置のリード処理を行なうことによるエラー発生を回避している。
図13は、図11のステップS8のRAID5ライト処理のフローチャートである。図13において、ステップS1でライト要求が行なわれたアドレスの全ストライプデータのライト要求か否かチェックしており、一部であればステップS2に進み、被疑ディスク装置を含む部分ストライプデータのライト要求か否かチェックする。
被疑ディスク装置のデータを含むライト要求であった場合にはステップS3に進み、正常ディスク装置の全データをリードした後、ステップS4で正常ディスク装置の全データの排他論理和を求めることで被疑ディスク装置のデータを計算により復元する。続いてステップS5で旧パリティ、旧データ及び新データの排他論理和をとることで新パリティを計算する。そしてステップS6で新データを被疑ディスク装置にライトするとともに新パリティを開放する正常ディスク装置にライトする。
ステップS2で部分ストライプデータのライトが被疑ディスク装置を含まない場合には、ステップS7でストライプデータとパリティを正常ディスク装置からそれぞれ読み出し、ステップS5で新パリティを計算し、ステップS6で新データと新パリティをそれぞれ正常ディスク装置にライトする。
更にステップS1で全ストライプデータのライトであった場合にはステップS8に進み、この場合には新データの排他論理和から新パリティを計算し、ステップS6で新データと新パリティを対応するディスク装置にライトする。
図14は、図11のステップS12におけるデータ復元処理のフローチャートである。図14において、ステップS1で被疑ディスク装置の論理ブロックアドレスLBAにつき最初のコピー範囲をセットし、ステップS2で被疑ディスク装置68の管理テーブル78を参照し、ステップS3でライト失敗アドレス範囲になければステップS4で被疑ディスク装置から予備ディスク装置にコピー処理を行なってデータを復元をする。
続いてステップS5でデータ復元失敗の有無をチェックしており、失敗がなければステップS7に進み、最終論理ブロックアドレスに達していなければステップS8でコピーアドレスを更新した後、ステップS1からの処理を繰り返す。
ステップS3でコピーアドレス範囲が管理テーブル78のライト失敗アドレス範囲に該当する場合にはステップS6に進み、正常ディスク装置からデータを読み出して排他論理和計算により被疑ディスク装置のデータを再生成した後、予備ディスク装置68にコピー処理により復元する。
ステップS7で最終論理ブロックアドレスへの到達が判別されると、ステップS9で被疑ディスク装置を切り離して復元のすんだ予備ディスク装置に切り替え、復元モードを解除してRAID5通常処理に戻る。
図15は本発明によるディスクアレイ制御処理の第3実施形態のブロック図である。この第3実施形態にあってはRAID1の冗長構成を対象とし、データ復元処理については異なるデバイスアダプタの配下にある正常ディスク装置からのリビルド処理により予備ディスク装置にデータを復元するようにしたことを特徴とする。
図15において、ディスクアレイ制御装置12の中央処理モジュール22−1にはプロセッサ36とキャッシュ処理部38が設けられ、デバイスアダプタ24−1,24−2を介して接続したディスクアレイ28にはRAID1の冗長構成をとるプライマリディスク装置30とセカンダリディスク装置32が設けられ、更にホットスタンバイとしての予備ディスク34が設けられている。ここでセカンダリディスク装置32のエラー統計合計値が閾値に達して被疑ディスク装置と判定された場合を例にとる。
プロセッサ36にはエラー判定部90、リード処理部92、ライト処理部94、データ復元処理部96及び管理テーブル98が設けられている。エラー判定部90は、ディスクアレイでRAID1の冗長構成をとるプライマリディスク装置30とセカンダリディスク装置32のエラー統計合計値を監視し、所定の閾値を超えた場合に被疑ディスク装置と判定して、同じデバイスアダプタ24−2の配下にある予備ディスク装置34にデータを復元するための復元モードを設定する。
リード処理部92は復元モードの設定中にホスト16−1からリードコマンドを受信した場合、正常ディスク装置であるプライマリディスク装置30からデータをリードして応答し、被疑ディスク装置としてセカンダリディスク装置32からのリード応答は行なわない。また正常ディスク装置であるプライマリディスク装置30のリード処理に失敗した場合には、後の説明で明らかにする管理テーブル98から有効アドレス範囲にあることを確認して被疑ディスク装置であるセカンダリディスク装置32からデータをリードして応答する。
ライト処理部94は復元モード設定中にホスト16−1からライトコマンドを受信した場合、被疑ディスク装置であるセカンダリディスク装置32は除き、正常ディスク装置であるプライマリディスク装置30と予備ディスク34に書き込む。そしてライト処理につき、管理テーブル98にライトアドレス範囲に対応してライト処理は正常終了か異常終了か、及び被疑ディスク装置となるセカンダリディスク装置32のデータの有効と無効を登録する。
ここで、ライト処理が正常終了であれば被疑ディスク装置となるセカンダリディスク装置32のデータは更新されていないことから無効となり、一方、ライト処理が異常終了であれば被疑ディスク装置となるセカンダリディスク装置32のデータは有効となっている。
図16は、図15の管理テーブル98の説明図である。管理テーブル98はインデックス、ライト開始アドレス、ライト終了アドレス、ライト処理の終了状態(正常終了または異常終了)、及び被疑ディスクデータの有効/無効で構成されている。ライト開始アドレスとライト終了アドレスはライトのアドレス範囲を特定する。
ライト処理の終了状態はライト実行による正常終了またはライト非実行による異常終了を登録する。被疑ディスクデータの有効/無効については、ライト処理が正常終了であれば被疑ディスク装置のデータは更新されていないことから無効を登録し、一方、ライト処理が異常終了であれば正常ディスク装置のデータは更新されていないから被疑ディスク装置のデータは有効を登録する。
なお、図16の管理テーブル98の具体例にあっては、ライト処理の終了状態について正常終了であればフラグビット1をセットし、異常終了であればフラグビット0をセットし、また被疑ディスクデータの有効/無効についても、有効でフラグピット1をセットし、無効でフラグビット0をセットすることになる。
再び図15を参照するに、データ復元処理部96は、復元モード設定中のホスト16−1からのアクセス空き時間に正常ディスク装置であるプライマリディスク装置30のアドレス範囲を順次指定しながらデータを予備ディスク装置34にリビルド処理により復元する。
リビルド処理は、別のデバイスアダプタ24−1の配下にあるプライマリディスク装置30のデータをプロセッサ36のキャッシュ処理部38に設けているキャッシュメモリ上にステージングした後に予備ディスク装置34に書き込む処理となる。
またデータ復元処理部96は予備ディスク装置34に対するデータ復元のためのリビルド処理が失敗した際に、失敗したアドレス範囲が管理テーブル98の被疑ディスク装置であるセカンダリディスク装置32のデータが有効となる有効アドレス範囲に含まれている場合には、被疑ディスク装置であるセカンダリディスク装置32のデータを予備ディスク装置34にコピー処理により復元する。このように予備ディスク装置34に対する正常ディスク装置のリビルド処理を主体としたデータ復元についても、被疑ディスク装置であるセカンダリディスク装置32による冗長処理が行なわれることになる。
図17は、図15のディスクアレイ制御装置12による復元モードでのリード処理、ライト処理及びデータ復元処理の概略説明図である。図17において、セカンダリディスク装置32が被疑ディスク装置と判定された復元モードの設定中にホスト16−1からリード要求があると、正常ディスク装置であるプライマリディスク装置30からリード応答100を行なう。
またホスト16−1から復元モード設定中にライト要求を受けると、正常ディスク装置であるプライマリディスク装置30にライト処理102を行なうと共に、予備ディスク装置34に対してもライト104を行なう。
一方、ホスト16−1から入出力要求のないアイドル状態にあっては、正常ディスク装置であるプライマリディスク装置30のデータを中央処理モジュール22−1のキャッシュ上にステージングした後に予備ディスク装置34に書き込むリビルド処理106を行なっている。
このリビルド処理106についてエラーが判別された場合、管理テーブル98を参照して被疑ディスク装置であるセカンダリディスク装置32のアドレス範囲が有効データとなっていることを確認した場合には、セカンダリディスク装置32からコピー処理によりデータを予備ディスク装置34に復元する。
図18は、図15のディスクアレイ制御処理のフローチャートである。図18において、ステップS1でいずれかのディスク装置のエラー統計加算値が閾値を超えたことを判別した場合の復元モードの設定によるリード処理及びライト処理であるステップS1〜S10の処理は、図6の第1実施形態の処理と同じである。
これに対し図18の第4実施形態にあっては、正常ディスク装置を主体としたリビルド処理により予備ディスク装置34に対するデータ復元を行なうことから、ステップS10で正常ディスク装置と予備ディスク装置34にライト処理を行なった後、ステップS11で管理テーブル98に対し、図16に示したように、ライト開始アドレスとライト終了アドレスによるアドレス範囲、ライト処理の正常終了または異常終了、更に被疑ディスク装置のデータが有効か無効かを登録する。ライト処理が正常終了すれば、被疑ディスク装置のデータについて無効を登録し、ライト処理が異常終了すれば被疑ディスク装置のデータについて有効を登録する。なお、管理テーブルに登録されていないアドレス範囲について、当然に、被疑ディスク装置のデータはある。
図19は、図18のステップS13のデータ復元処理のフローチャートである。図19において、ステップS1で正常ディスク装置の論理ブロックアドレスLBAにつきリビルドのアドレス範囲をセットした後、ステップS2で正常ディスク装置から予備ディスク装置にリビルド処理によりデータを復元する。
続いてステップS3でリビルド処理の失敗の有無をチェックしており、万一、リビルド処理に失敗した場合には、ステップS4で管理テーブル98を参照し、ステップS5で有効データのアドレス範囲であることを確認した場合にはステップS6に進み、被疑ディスク装置から予備ディスク装置34にコピー処理によりデータを復元する。なお、ステップS6でアドレス範囲が無効でデータの場合又はステップS7で被疑ディスク装置からのリビルド処理に失敗した場合には異常終了となる。
ステップS8にあっては最終論理ブロックアドレスへの到達の有無をチェックしており、到達するまではステップS9でアドレスを更新した後、ステップS1からの処理を繰り返す。ステップS8で最終論理ブロックアドレスへの到達が判別されるとステップS10で被疑ディスク装置を切り離して、データ復元のその他予備ディスク装置68に切り替え復元モードを解除することで通常のRAID1の処理に戻る。
図20は、本発明によるディスクアレイ制御装置の第4実施形態のブロック図である。この第4実施形態にあってはRAID5の冗長構成をとり、予備ディスク装置に対するデータ復元については正常ディスク装置を主体に復元することを特徴とする。
図20において、ディスクアレイ制御装置12の中央処理モジュール22−1にはプロセッサ36とキャッシュ処理部38が設けられ、デバイスアダプタ24−1,24−2を介してディスクアレイ58としてRAID5の冗長構成をとる例えば4台のディスク装置60、62,64,66を接続し、更にホットスタンバイとして予備ディスク装置68を設けている。ここでディスク装置66のエラー統計加算値が閾値を超えて被疑ディスクと判定されて復元モードが設定された場合を例にとって説明する。
プロセッサ36にはエラー判定部110、リード処理部112、ライト処理部114、データ復元処理部116及び管理テーブル118が設けられている。エラー判定部110はRAID5の冗長構成をとるディスク装置60,62,64,66のいずれかのエラー統計合計値が所定の閾値を超えた場合、被疑ディスク装置と判定して同じデバイスアダプタ24−2の配下にある予備ディスク装置68にデータを復元するための復元モードを設定する。この例ではディスク装置66が被疑ディスク装置と判定されている。
リード処理部112は復元モード設定中にホスト16−1から被疑ディスク装置66のデータを対象とするリードコマンドを受信した場合、正常ディスク装置であるディスク装置60,62,64から読み出したデータ及びパリティに基づき、図9(B)(C)に示したように、被疑ディスク装置であるディスク装置66のデータを排他論理和計算により算出して応答する。
この場合、正常ディスク装置であるディスク装置60,62,64からのリード処理に失敗した場合には、管理テーブル118から被疑ディスク装置であるディスク装置66のデータが有効であることを確認した場合に、読み出し応答する。
ライト処理部114は、復元モード設定中にホスト16−1から被疑ディスク装置であるディスク装置66のデータを対象にライトコマンドを受信した場合、正常ディスク装置であるディスク装置60,62,64からリードした旧データ及び旧パリティに基づき、被疑ディスク装置であるディスク装置66の旧データの排他論理和をとることにより復元し、更に復元した被疑ディスク装置の旧データ、ホスト16−1から受けた新データ、更に正常ディスク装置から読み出した旧パリティに基づいて新パリティを排他論理和により算出し、新データを予備ディスク装置68にも書き込む。更にパリティについては対応する正常なディスク装置に書き込む。
更にライト処理の結果に基づき管理テーブル118にアドレス範囲である開始アドレス及び終了アドレス、ライト処理の正常終了又は異常終了、更に被疑ディスク装置のデータの有効又は無効を登録する。
データ復元処理部116は、復元モード設定中にホスト16−1からのアクセス空き時間となるアイドル中に正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置68にリビルド処理により復元する。
この正常ディスク装置からのリビルド復元処理に失敗した場合、失敗したアドレス範囲が被疑ディスク装置の有効データのアドレス範囲に含まれることを管理テーブル118の参照で確認した場合は、被疑ディスク装置のデータを予備ディスク装置68にコピーにより復元する。このため予備ディスク装置68に対するデータ復元のリビルド処理についても冗長処理が維持できる。
図21は、図20のディスクアレイ制御装置による復元モードでのリード処理、ライト処理及びデータ復元処理の概略である。図21において、復元モード設定中にホスト16−1から被疑ディスク装置66に対するリード要求があると、正常ディスク装置60,62,64からステージング120により読み出したデータに基づいて、その排他論理和から被疑ディスク装置66のデータを計算122により復元し、ホスト16−1にリード応答124を行う。
また復元モード設定中にホスト16−1から被疑ディスク装置66を対象にライト要求を受けると、リード要求の場合と同様、正常ディスク装置60,62,64のリードデータの排他論理和から被疑ディスク装置66のデータを計算122により復元し、これにホスト16−1から受けた新データと正常ディスク装置60,62,64側からリードしている旧パリティの排他論理和をとることにより新パリティを計算し、新データは予備ディスク装置68にデータライト128により書込み、また新パリティは例えば対応する正常ディスク装置60,62,64にパリティライト126により書き込む。
またホスト16−1からのアクセスのないアイドル中にあっては、正常ディスク装置60,62,64のリードデータの排他論理和から被疑ディスク装置66のデータを中央処理モジュール22−1のキャッシュ上にステージング122により展開し、ステージングしたデータから被疑ディスク装置66のデータを排他論理和により計算して復元し、これをリビルド処理130により予備ディスク装置68に書き込んでデータを復元する。
また正常ディスク装置60,62,64からのステージングに失敗した場合には、管理テーブル118の参照で被疑ディスク装置68のアドレス範囲のデータが有効であることを確認した場合に、被疑ディスク装置66のデータを予備ディスク装置68に書き込むコピー132を行なう。
図22は、図21のディスクアレイ制御装置のフローチャートである。復元モード設定状態におけるRAID5のリード処理及びRAID5のライト処理となるステップS1〜S8の処理については図11の第2実施形態のステップS1〜S8と同じである。一方、ステップS8でRAID5のライト処理を行なった後、ステップS9で被疑ディスク装置用の管理テーブル118にライト処理の結果に基づきアドレス範囲、ライト処理の正常終了又は異常終了,及び被疑ディスク装置のデータの有効又は無効を登録している。
ここで図22のステップS5のRAID5のリード処理は図23のフローチャートのようになり、これは図12に示した第2実施形態と同じである。また図22のステップS8のRAID5のライト処理は図24のフローチャートに示しており、図13に示した第2実施形態に示したRAID5のライト処理と同じである。
図25は、図22のステップS11のデータ復元処理のフローチャートである。図25において、ステップS1で正常ディスク装置を対象に論理ブロックアドレスLABにつきリビルド範囲となるアドレス範囲をセットする。続いてステップS2で正常ディスク装置のストライプデータをステージングして被疑ディスク装置のストライプデータを排他論理和を求めることにより再生成し、予備ディスク装置68に書き込むリビルド処理を実行する。
次にステップS3でリビルド処理の失敗の有無をチェックしており、万一、リビルド処理に失敗した場合にはステップS4で管理テーブル118を参照し、ステップS5で失敗したアドレス範囲が被疑ディスク装置に有効データとして存在していることを確認した場合、ステップS6で被疑ディスク装置から予備ディスク装置へのコピー処理を実行する。なお、ステップS5で被疑ディスク装置のデータが無効の場合又はステップS7の被疑ディスク装置からのコピー処理について処理失敗が判別された場合は異常終了とする。
ステップS8のあっては最終論理ブロックアドレスへの到達をチェックしており、到達するまではステップS9でアドレスの更新を行なってステップS1からの処理を繰り返す。ステップS8で最終論理ブロックアドレスへの到達が判別されるとステップS10で被疑ディスク装置を切り離してデータ復元の済んだ予備ディスク装置を接続して復元モードを解除してRAID5の通常処理に戻る。
また、本発明はディスク制御装置12の中央処理モジュールに設けているプロセッサで実行されるプログラムを提供するものであり、第1実施例、第2実施例、第3実施例、第4実施例のいずれについても、それぞれに対応して示したフローチャートがそのプログラムの処理手順を示している。
また本発明のプログラムが実行されるコンピュータのハードウェア資源としては、ディスクアレイ制御装置12のプロセッサ36におけるCPU、RAM、ハードディスクドライブで構成され、本発明のプログラムをハードディスクドライブにローディングしており、コンピュータの起動時にハードディスクドライブからプログラムを読み出してRAM上に展開し、CPUにより実行することになる。
なお、本発明はその目的と利点を損なうことのない適宜の変形を含み、更に上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴をまとめて列挙すると次の付記のようになる。
(付記1)
コンピュータに、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピートして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とするプログラム。(1)
コンピュータに、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピートして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とするプログラム。(1)
(付記2)
付記1記載のプログラムに於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(2)
付記1記載のプログラムに於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(2)
(付記3)
付記1記載のプログラムに於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを
受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき
前記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(3)
付記1記載のプログラムに於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを
受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき
前記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(3)
(付記4)
コンピュータに、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とするプログラム。(4)
コンピュータに、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とするプログラム。(4)
(付記5)
付記4記載のプログラムに於いて、
前記記憶装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(5)
付記4記載のプログラムに於いて、
前記記憶装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(5)
(付記6)
付記4記載のプログラムに於いて、
前記記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置
のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑デ
ィスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始
し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(6)
付記4記載のプログラムに於いて、
前記記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置
のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑デ
ィスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始
し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とするプログラム。(6)
(付記7)
上位装置からのコマンドに基づいて冗長構成のディスクアレイにデータを読み書きする記憶制御方法に於いて、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする記憶制御方法。(7)
上位装置からのコマンドに基づいて冗長構成のディスクアレイにデータを読み書きする記憶制御方法に於いて、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする記憶制御方法。(7)
(付記8)
付記7記載の記憶制御方法に於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
付記7記載の記憶制御方法に於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
(付記9)
付記7記載の記憶制御方法に於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを
受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき
前記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
付記7記載の記憶制御方法に於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを
受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき
前記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
(付記10)
上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御方法に於いて、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする記憶制御方法。(7)
上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御方法に於いて、
冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする記憶制御方法。(7)
(付記11)
付記10記載の記憶制御方法に於いて、
前記記憶装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
付記10記載の記憶制御方法に於いて、
前記記憶装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定ステップは、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
(付記12)
付記10記載の記憶制御方法に於いて、
前記記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置
のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑デ
ィスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始
し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
付記10記載の記憶制御方法に於いて、
前記記憶装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定ステップは、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理ステップは、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理ステップは、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理ステップは、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置
のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑デ
ィスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始
し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
(付記13)
上位装置からのコマンドに基づいて冗長構成のディスクアレイにデータを読み書きする記憶装置に於いて、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピートして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする記憶装置。(9)
上位装置からのコマンドに基づいて冗長構成のディスクアレイにデータを読み書きする記憶装置に於いて、
冗長構成のディスクアレイに含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置、被疑ディスク装置を及び前記予備ディスク装置にデータをライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピートして復元する処理を開始し、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別のデバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置にリビルドして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする記憶装置。(9)
(付記14)
付記13記載の記憶装置に於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定部は、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理部は、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理部は、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
付記13記載の記憶装置に於いて、
前記ディスクアレイは、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定部は、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理部は、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理部は、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディ
スク装置、被疑ディスク装置及び予備ディスク装置にデータをライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、別の
デバイスアダプタの配下にある前記正常ディスク装置のデータを前記予備ディスク装置
にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
(付記15)
付記13記載の記憶装置に於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定部は、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理部は、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理部は、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前
記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パ
リティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
付記13記載の記憶装置に於いて、
前記ディスクアレイは、同一アドレスに複数のストライプデータとそのパリティを格納し且つパリティデータの格納ディスク位置をアドレス毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定部は、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記リード処理部は、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマン
ドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記
被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記ライト処理部は、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前
記被疑ディスク装置の旧データを復元し、
更に復元した被疑ディスク装置の旧データ、新データ、旧パリティに基づいて新パリ
ティを算出し、
前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パ
リティを対応する正常ディスク装置にライトし、
前記被疑ディスク装置のライト失敗を判定した場合は、ライト失敗アドレス範囲をラ
イト管理テーブルに登録し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記擬似ディスク装置
のアドレス範囲を指定しながらデータを予備ディスク装置へ順次コピーして復元する処
理を開始し、
前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当した時
または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、正常
ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデー
タを算出して前記予備ディスク装置にリビルドして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶制御方法。
(付記16)
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部の一方にエラーが発生した場合に、リードコマンドを受信したときには、前記複数の記憶部の他方よりデータをリードし、前記他方の記憶部からのデータリードが失敗した場合には前記一方の記憶部からデータをリードするリード処理部を備えたことを特徴とする記憶装置。
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部の一方にエラーが発生した場合に、リードコマンドを受信したときには、前記複数の記憶部の他方よりデータをリードし、前記他方の記憶部からのデータリードが失敗した場合には前記一方の記憶部からデータをリードするリード処理部を備えたことを特徴とする記憶装置。
(付記17)
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部の一方にエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中にライトコマンドを受信したときに、前記一方の記憶部へのデータライト失敗が判定された場合には、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
前記一方の記憶部のアドレス範囲を指定しながらデータを予備記憶部へ順次コピーして復元する処理を行ない、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当したとき、または前記一方の記憶部から前記予備記憶部への復元処理が失敗したときには、前記複数の記憶部の他方に記憶されたデータを前記予備記憶部に復元する復元処理部と、
を備えたことを特徴とする記憶装置。
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部の一方にエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中にライトコマンドを受信したときに、前記一方の記憶部へのデータライト失敗が判定された場合には、ライト失敗アドレス範囲を管理テーブルに登録するライト処理部と、
前記一方の記憶部のアドレス範囲を指定しながらデータを予備記憶部へ順次コピーして復元する処理を行ない、前記アドレス範囲が前記管理テーブルのライト失敗アドレス範囲に該当したとき、または前記一方の記憶部から前記予備記憶部への復元処理が失敗したときには、前記複数の記憶部の他方に記憶されたデータを前記予備記憶部に復元する復元処理部と、
を備えたことを特徴とする記憶装置。
(付記18)
上位装置からのコマンドに基づいて冗長構成をとる複数のディスク装置にデータを読み書きする記憶装置に於いて、
前記複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする記憶装置。(10)
上位装置からのコマンドに基づいて冗長構成をとる複数のディスク装置にデータを読み書きする記憶装置に於いて、
前記複数のディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、および前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする記憶装置。(10)
(付記19)
付記18記載の記憶装置に於いて、
前記複数のディスク装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定部は、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理部は、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理部は、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
付記18記載の記憶装置に於いて、
前記複数のディスク装置は、同一データを格納したプライマリディスク装置とセカンダリディスク装置を備えたRAID1の冗長構成であり、
前記エラー判定部は、前記プライマリディスク装置又はセカンダリディスク装置のエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理部は、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、および被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理部は、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディス
ク以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータを
リードして応答し、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元モード設定中の上位装置からのアクセス空き時間に、別のデバイスアダプタの配下にある前記正常ディスク装置のアドレス範囲を順次指定しながらデータを予備ディスク装置へリビルドして復元する処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
(付記20)
付記18記載の記憶装置に於いて、
前記複数のディスク装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定部は、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理部は、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理部は、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
付記18記載の記憶装置に於いて、
前記複数のディスク装置は、複数のストライプデータとそのパリティを格納し、且つパリティデータの格納ディスク位置をストライプ位置毎に変化させる複数のディスク装置を備えたRAID5の冗長構成であり、
前記エラー判定部は、前記ディスク装置のいずれかのエラー統計加算値が所定の閾値を越えた場合に被疑ディスク装置と判定して同一デバイスアダプタの配下にある予備ディスク装置にデータを復元するための復元モードを設定し、
前記ライト処理部は、
前記復元モード設定中に上位装置から前記被疑ディスク装置に対するライトコマンド
を受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づ
き前記被疑ディスク装置の旧データ又は旧パリティを復元し、
更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、
前記新データとパリティを正常ディスクと予備ディスク装置にライトし、
更にライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録し、
前記リード処理部は、
前記復元モードの設定中に上位装置から前記被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、
前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答し、
前記復元処理部は、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記正常ディスク装置のアドレス範囲を順次指定しながらリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して予備ディスク装置へリビルドする復元処理を開始し、
前記リビルド復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、
復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える、
ことを特徴とする記憶装置。
(付記21)
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部のいずれかにエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中にライトコマンドを受信したときに、ライトアドレス範囲に対応して、ライト処理の正常終了とエラーを発生した記憶部のデータの無効またはライト処理の異常終了とエラーを発生した記憶部のデータの有効を管理テーブルに登録するライト処理部と、
前記復元モード設定中に、正常な記憶部のアドレス範囲を指定しながらデータを予備記憶部に復元する処理を実行し、前記復元処理が失敗した際に、失敗したアドレス範囲のデータが有効であることを前記管理テーブルから確認して前記エラーを発生した記憶部のデータを前記予備記憶部に復元する復元処理部と、
を備えたことを特徴とする記憶装置。
複数の記憶部と、前記記憶部へのデータ入出力を制御する制御部とを備えた記憶装置に於いて、
前記複数の記憶部のいずれかにエラーが発生した場合、予備記憶部にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中にライトコマンドを受信したときに、ライトアドレス範囲に対応して、ライト処理の正常終了とエラーを発生した記憶部のデータの無効またはライト処理の異常終了とエラーを発生した記憶部のデータの有効を管理テーブルに登録するライト処理部と、
前記復元モード設定中に、正常な記憶部のアドレス範囲を指定しながらデータを予備記憶部に復元する処理を実行し、前記復元処理が失敗した際に、失敗したアドレス範囲のデータが有効であることを前記管理テーブルから確認して前記エラーを発生した記憶部のデータを前記予備記憶部に復元する復元処理部と、
を備えたことを特徴とする記憶装置。
10:ディスクアレイサブシステム
12:ディスクアレイ制御装置
14−1,14−2:デバイスエンクロージャ
16:上位装置
16−1,16−2:ホスト
18−1〜18−4:チャネルアダプタ
20−1〜20−4:ルーター
22−1〜22−4:中央処理モジュール
24−1〜24−4:デバイスアダプタ
26−11〜26−2n:ディスク装置
28,58:ディスクアレイ
30:プライマリディスク装置
32:セカンダリディスク装置(被疑ディスク装置)
34,68:予備ディスク装置
36:プロセッサ
38:キャッシュ処理部
40,70,90,110:エラー判定部
42,72,92,,112:リード処理部
44,74,94,114:ライト処理部
46,76,96,116:データ復元処理部
48,78,98,118:管理テーブル
60,62,64:正常ディスク装置
66:被疑ディスク装置
12:ディスクアレイ制御装置
14−1,14−2:デバイスエンクロージャ
16:上位装置
16−1,16−2:ホスト
18−1〜18−4:チャネルアダプタ
20−1〜20−4:ルーター
22−1〜22−4:中央処理モジュール
24−1〜24−4:デバイスアダプタ
26−11〜26−2n:ディスク装置
28,58:ディスクアレイ
30:プライマリディスク装置
32:セカンダリディスク装置(被疑ディスク装置)
34,68:予備ディスク装置
36:プロセッサ
38:キャッシュ処理部
40,70,90,110:エラー判定部
42,72,92,,112:リード処理部
44,74,94,114:ライト処理部
46,76,96,116:データ復元処理部
48,78,98,118:管理テーブル
60,62,64:正常ディスク装置
66:被疑ディスク装置
Claims (6)
- コンピュータに、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライトに失敗した領域の先頭アドレスと最終アドレスとを管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置からデータを予備ディスク装置へコピーして復元する処理を開始し、コピー対象データが前記管理テーブルに登録されているライトに失敗した領域に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、前記正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデータを算出して復元する復元処理ステップと、
を実行させることを特徴とするプログラム。
- コンピュータに、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、及び前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、ライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置から前記被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスクのリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリードして応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記復元モード設置中の上位装置からのアクセス空き時間に、前記正常ディスク装置のアドレス範囲を指定しながらリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して予備ディスク装置へ復元する復元処理を開始し、前記復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を実行させることを特徴とするプログラム。
- 上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御方法に於いて、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライトに失敗した領域の先頭アドレスと最終アドレスとを管理テーブルに登録するライト処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置からデータを予備ディスク装置へコピーして復元する処理を開始し、コピー対象データが前記管理テーブルに登録されているライトに失敗した領域に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、前記正常ディスク装置前記被疑ディスク装置のデータを算出して復元する復元処理ステップと、
を備えたことを特徴とする記憶制御方法。
- コンピュータに、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、及び前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、ライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理ステップと
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理ステップと、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置から前記被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスクのリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリードして応答するリード処理ステップと、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記復元モード設置中の上位装置からのアクセス空き時間に、前記正常ディスク装置のアドレス範囲を指定しながらリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して予備ディスク装置へ復元する復元処理を開始し、前記復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理ステップと、
を備えたことを特徴とする記憶制御方法。
- 上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御装置に於いて、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスク装置のリードが失敗した場合に前記被疑ディスク装置からデータをリードして応答するリード処理部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、前記被疑ディスク装置のライト失敗を判定した場合は、ライトに失敗した領域の先頭アドレスと最終アドレスとを管理テーブルに登録するライト処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記被疑ディスク装置からデータを予備ディスク装置へコピーして復元する処理を開始し、コピー対象データが前記管理テーブルに登録されているライトに失敗した領域に該当した時または前記被疑ディスク装置から予備ディスク装置への復元処理が失敗した時は、前記正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のデータを算出して復元する復元処理部と、
を備えたことを特徴とする記憶装置。
- 上位装置からのコマンドに基づいて冗長構成の記憶装置にデータを読み書きする記憶制御装置に於いて、
複数のディスク装置に上位装置から受信したデータを分割したストライプデータと前記ストライプデータから求められるパリティデータとを分散して格納した冗長構成の記憶装置に含まれるディスク装置のエラー統計加算値が所定の閾値を越えた場合に、被疑ディスク装置と判定して予備ディスク装置にデータを復元するための復元モードを設定するエラー判定部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、前記正常ディスク装置と予備ディスク装置にデータをライトし、更にライトアドレス範囲に対応して前記正常ディスク装置のライト処理の正常終了又は異常終了、及び前記被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と、
前記復元モード設定中に上位装置からライトコマンドを受信した場合、正常ディスク装置からリードした旧データ及び又は旧パリティに基づき前記被疑ディスク装置の旧データを復元し、更に復元した被疑ディスク装置の新データと旧パリティに基づいて新パリティを算出し、前記新データを前記被疑ディスク装置及び予備ディスク装置にライトすると共に新パリティを対応する正常ディスク装置にライトし、ライトアドレス範囲に対応して正常ディスク装置のライト処理の正常終了又は異常終了、及び被疑ディスク装置のデータの有効又は無効を管理テーブルに登録するライト処理部と
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置からデータをリードして応答し、前記正常ディスク装置のリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリード応答するリード処理部と、
前記復元モードの設定中に上位装置からリードコマンドを受信した場合、被疑ディスク装置以外の正常ディスク装置から前記被疑ディスク装置に対するリードコマンドを受信した場合、正常ディスク装置からリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して応答し、前記正常ディスクのリードが失敗した場合に前記管理テーブルから有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータをリードして応答するリード処理部と、
前記復元モード設定中の上位装置からのアクセス空き時間に、前記復元モード設置中の上位装置からのアクセス空き時間に、前記正常ディスク装置のアドレス範囲を指定しながらリードしたデータ及びパリティに基づき前記被疑ディスク装置のリードデータを算出して予備ディスク装置へ復元する復元処理を開始し、前記復元処理が失敗した場合に前記管理テーブルの有効アドレス範囲にあることを確認して前記被疑ディスク装置のデータを前記予備ディスク装置にコピーして復元し、復元完了で前記被疑ディスク装置を切り離して予備ディスク装置に切替える復元処理部と、
を備えたことを特徴とする記憶装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009004282A JP4714776B2 (ja) | 2009-01-13 | 2009-01-13 | プログラム、記憶制御方法及び記憶制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009004282A JP4714776B2 (ja) | 2009-01-13 | 2009-01-13 | プログラム、記憶制御方法及び記憶制御装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004325939A Division JP4303187B2 (ja) | 2004-11-10 | 2004-11-10 | プログラム、記憶制御方法及び記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009116896A JP2009116896A (ja) | 2009-05-28 |
JP4714776B2 true JP4714776B2 (ja) | 2011-06-29 |
Family
ID=40783902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009004282A Active JP4714776B2 (ja) | 2009-01-13 | 2009-01-13 | プログラム、記憶制御方法及び記憶制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4714776B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6191346B2 (ja) * | 2013-09-09 | 2017-09-06 | 富士通株式会社 | ストレージ制御装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002169660A (ja) * | 2000-09-19 | 2002-06-14 | Matsushita Electric Ind Co Ltd | データ記憶アレイ装置、その制御方法、プログラム記録媒体及びプログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3681766B2 (ja) * | 1994-01-10 | 2005-08-10 | 富士通株式会社 | ディスクアレイ装置 |
JPH11345095A (ja) * | 1998-06-02 | 1999-12-14 | Toshiba Corp | ディスクアレイ装置およびその制御方法 |
-
2009
- 2009-01-13 JP JP2009004282A patent/JP4714776B2/ja active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002169660A (ja) * | 2000-09-19 | 2002-06-14 | Matsushita Electric Ind Co Ltd | データ記憶アレイ装置、その制御方法、プログラム記録媒体及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP2009116896A (ja) | 2009-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4303187B2 (ja) | プログラム、記憶制御方法及び記憶装置 | |
JP5768587B2 (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
US20110264949A1 (en) | Disk array | |
US7549084B2 (en) | Storage control apparatus and failure recovery method for storage control apparatus | |
US7558981B2 (en) | Method and apparatus for mirroring customer data and metadata in paired controllers | |
JP5887757B2 (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
JP3184171B2 (ja) | ディスクアレイ装置、そのエラー制御方法、ならびにその制御プログラムを記録した記録媒体 | |
US20090327801A1 (en) | Disk array system, disk controller, and method for performing rebuild process | |
JPH11345095A (ja) | ディスクアレイ装置およびその制御方法 | |
JP3681766B2 (ja) | ディスクアレイ装置 | |
JP2000510273A (ja) | ディスク・アレイにおいてパリティ保全性を維持するための妥当性検査システム | |
JP2010033287A (ja) | ストレージサブシステム及びこれを用いたデータ検証方法 | |
JP2006227964A (ja) | ストレージシステム、処理方法及びプログラム | |
JP4836014B2 (ja) | ディスクアレイ装置及び物理ディスクの復元方法 | |
JPH09269871A (ja) | ディスクアレイ装置におけるデータ再冗長化方式 | |
WO2015011835A1 (ja) | コンピュータシステム | |
JP4203034B2 (ja) | アレイコントローラ、メディアエラー修復方法及びプログラム | |
JP4714776B2 (ja) | プログラム、記憶制御方法及び記憶制御装置 | |
US20140173337A1 (en) | Storage apparatus, control method, and control program | |
JP2005293119A (ja) | ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム | |
JPH06119125A (ja) | ディスクアレイ装置 | |
JP3991947B2 (ja) | 2種類のパリティと複数のデータ復旧方式とを有するディスクアレイ装置 | |
JP2004171373A (ja) | ディスクアレイ装置 | |
JP4831093B2 (ja) | ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム | |
JP2014041523A (ja) | データ管理装置、及び、データ管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20110301 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110328 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4714776 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |