(57)【要約】【課題】各ディスク装置におけるデータ劣化に関する再書き込み処理を同期して実行するストレージ制御技術を提供する。【解決手段】ストレージ制御装置は、データを記憶する複数のディスク装置に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求する劣化情報要求部と、複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて複数のディスク装置に対して、再書き込みを行うように指示する再書込指示部と、を備えることにより、上記課題の解決を図る。【選択図】図１
2014199578.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶する複数のディスク装置に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求する劣化情報要求部と、
前記複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて前記複数のディスク装置に対して、該再書き込みを行うように指示する再書込指示部と、
を備えることを特徴とするストレージ制御装置。
【請求項２】
前記複数のディスク装置は、
それぞれ独立して、データの劣化に関する判定を行う判定機能と、
該判定の結果に基づいて、それぞれ独立して、データの再書き込みを行なう再書き込み機能と、を有し、
前記ストレージ制御装置は、さらに、
前記複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて、前記複数のディスク装置に対して、前記再書き込み機能を無効にする無効化指示を行う無効化指示部
を備えることを特徴とする請求項１に記載のストレージ制御装置。
【請求項３】
前記劣化情報要求部は、該無効化指示により前記複数のディスク装置のそれぞれの該書き込み機能が無効化されたことを確認した場合に、前記複数のディスク装置に対して、前記劣化情報を通知するように要求する
ことを特徴とする請求項２に記載のストレージ制御装置。
【請求項４】
前記ストレージ制御装置は、さらに、
前記複数のディスク装置への書き込み処理の回数を計測する計測部と、
を備え、
前記劣化情報要求部は、計測された前記書き込み処理の回数が第１の閾値以上である場合、前記複数のディスク装置のそれぞれに対して、前記劣化情報を通知するように要求し、
前記再書込指示部は、第２の閾値以上の数の前記ディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて、前記複数のディスク装置に対して、該データの再書き込みを行うように指示する
ことを特徴とする請求項１〜３のうちいずれか１項に記載のストレージ制御装置。
【請求項５】
前記第１の閾値、前記第２の閾値はそれぞれ、前記ディスク装置により構築されるＲＡＩＤグループの種別に応じて、設定される
ことを特徴とする請求項１〜４のうちいずれか１項に記載のストレージ制御装置。
【請求項６】
前記ストレージ制御装置は、さらに、
前記書き込み処理の回数に応じて、前記ディスク装置による前記データの劣化の検出の頻度を調整する調整部と、
を備えることを特徴とする請求項１〜５のうちいずれか１項に記載のストレージ制御装置。
【請求項７】
コンピュータに、
データを記憶する複数のディスク装置に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求し、
前記複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて前記複数のディスク装置に対して、該再書き込みを行うように指示する、
処理を実行させることを特徴とするストレージ制御プログラム。
【請求項８】
コンピュータにより実行されるストレージ制御方法であって、
前記コンピュータは、
データを記憶する複数のディスク装置に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求し、
前記複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて前記複数のディスク装置に対して、該再書き込みを行うように指示する、
することを特徴とするストレージ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置の制御に関する。
【背景技術】
【０００２】
ストレージ装置では、データを複数のハードディスク（磁気ディスク装置）に分散することで、性能と耐障害性を確保するＲＡＩＤ（Redundant Array of Inexpensive Disks）技術が用いられている。ストレージ装置は、ＲＡＩＤコントローラにより、ディスクへのデータ配置や、データの冗長化（多重化）等のＲＡＩＤ技術を実現する。
【０００３】
ところで、ディスク装置では、高記録密度化により、あるセクタへのデータ書き込み時に、書き込み磁場の漏洩により隣接するトラックのデータセクタに書き込まれているデータが消されてしまう隣接トラック干渉（Adjacent Track Interference：ＡＴＩ）が生じる。
【０００４】
ディスク装置は、ＡＴＩの影響を受けたデータを診断するために、自身の記憶領域にスキャンを行う。ＡＴＩの影響を受けたデータが検出された場合であって、データの修復が必要な場合には、ディスク装置は、ＡＴＩの影響を受けたデータを書き直す。ＡＴＩに対処する技術として、例えば、以下の技術がある。
【０００５】
第１の技術として、上位装置からの要求に応じて該上位装置から送られる情報を記憶媒体に書き込む書き込み処理を実行するディスク装置に実行させる媒体スキャン方法がある。この媒体スキャン方法では、媒体監視処理と、媒体スキャン判断処理と、媒体スキャン処理と、をディスク装置に実行させる。媒体監視処理は、該書き込み処理によって前記情報が書き込まれた記憶媒体の状態を監視する。媒体スキャン判断処理は、該記憶媒体の状態に応じて媒体スキャンが必要か否かを判断する。媒体スキャン処理は、該媒体スキャン判断処理によって媒体スキャンを必要と判断された記憶媒体に対して媒体スキャンを実行する。
【０００６】
第２の技術として、不要なリフレッシュが発生するのを効果的に防止する技術がある。第２の技術では、磁気ディスク装置は、グループ化手段とリフレッシュ制御手段とを含む。グループ化手段は、ディスク上のトラックの集合を、物理位置が非連続の２以上のトラックを含む複数のトラックを備えた複数のグループにグループ化する。リフレッシュ制御手段と前記複数のグループを対象にグループ単位にリフレッシュ処理を制御する。
【０００７】
第３の技術として、電磁記憶媒体の同心状に隣接するトラックにデータを記録する大容量データ記憶装置におけるエラー状態を処理するエラー状態処理方法がある。エラー状態処理方法は、記憶媒体内の特定の領域へのアクセスの間に、トラック・スクイーズ・エラー状態が発生し始めそうな場合を検出する検出工程と、特定の領域に最も近い少なくとも１つのトラックに再度書込みを行う再度書込み工程とを備える。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−２４２２０７号公報
【特許文献２】特開２０１２−１４７９０号公報
【特許文献３】特開２００５−３２２３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ＡＴＩの影響による劣化したデータを診断するスキャンの結果、データの劣化が検出された場合において、そのデータの修復が必要と判断された場合には、ディスク装置は、そのデータを書き直す処理（データリフレッシュ）を実行する。その処理の間、ディスク装置は、入出力（Ｉ／Ｏ）処理を行うことができない。
【００１０】
したがって、ストレージ装置内の各ディスク装置が、個別に、スキャン、データリフレッシュを実行すると、ディスク装置の台数分のＩ／Ｏ処理の遅延が発生するおそれがある。そのため、スキャン処理及びデータリフレッシュ処理は、それらのディスク装置間では、同じタイミングで実行されるのが望ましい。
【００１１】
本発明は、一側面として、各ディスク装置におけるデータ劣化に関する再書き込み処理を同期して実行するストレージ制御技術を提供する。
【課題を解決するための手段】
【００１２】
本発明の一側面としてのストレージ制御装置は、劣化情報要求部、再書込指示部を含む。劣化情報要求部は、データを記憶する複数のディスク装置に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求する。再書込指示部は、複数のディスク装置から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて複数のディスク装置に対して、再書き込みを行うように指示する。
【発明の効果】
【００１３】
本発明の一側面としてのストレージ制御技術によれば、各ディスク装置におけるデータ劣化に関する再書き込み処理を同期して実行することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態におけるストレージ制御装置の一例を示す。
【図２】本実施形態におけるストレージ装置の一例を示す。
【図３】本実施形態における動作タイミング管理テーブルの一例を示す。
【図４】本実施形態における、ＲＡＩＤレベルに応じたＡＴＩスキャン及びＡＴＩリフレッシュのタイミングについて説明するための図である。
【図５】本実施形態における、ＲＡＩＤボリューム作成時のＲＡＩＤグループの再構成時の動作タイミング管理テーブルの作成処理フローの一例を示す。
【図６】本実施形態における、ＲＡＩＤコントローラによるＡＴＩスキャン／ＡＴＩＡＴＩリフレッシュ処理フローの一例を示す。
【発明を実施するための形態】
【００１５】
ディスク装置は、ＡＴＩに関するスキャン（以下、「ＡＴＩスキャン」と称する。）機能及びＡＴＩに関するデータリフレッシュ（以下、「ＡＴＩリフレッシュ」と称する。）機能を用いて、ＡＴＩに対処する。ＡＴＩスキャン機能は、管理領域へのライト（Write）回数がある閾値を超えた際に起動し、ＡＴＩによるデータ消失具合を診断する機能である。ＡＴＩリフレッシュ機能は、ＡＴＩスキャンによりデータ消去具合がある閾値を超えたと診断された場合に、管理領域のデータを書き直す機能である。
【００１６】
ＡＴＩスキャン機能、ＡＴＩリフレッシュ機能が起動するタイミングは、個々のディスク装置が持つ閾値に依存し、ＡＴＩスキャン、ＡＴＩリフレッシュは強制的に実施される。
【００１７】
そのため、複数のディスク装置の同一の位置（ＬＢＡ）に対して入出力（Ｉ／Ｏ）アクセスを行うストレージ装置では、ストレージ装置内の各ディスク装置に対して、非同期でＡＴＩスキャン、ＡＴＩリフレッシュが実施される可能性がある。ここで、ＬＢＡは、Logical Block Addressingの略称である。ＲＡＩＤを構成するディスク装置が全て非同期でＡＴＩスキャン及びＡＴＩリフレッシュを実施した場合では、ディスク装置の台数分のＩ／Ｏ処理の遅延が発生するおそれがある。
【００１８】
そこで、ＲＡＩＤコントローラが、インターフェース（Ｉ／Ｆ）を介して、ディスク装置に対してコマンドを発行し、ＲＡＩＤ内のディスク装置に対して、同期をとりながら、ＡＴＩスキャン、ＡＴＩリフレッシュを実施させる。
【００１９】
図１は、本実施形態におけるストレージ制御装置の一例を示す。ストレージ制御装置１は、劣化情報要求部２、再書込指示部３を含む。
劣化情報要求部２は、データを記憶する複数のディスク装置７に対して、記憶されているデータの劣化に関する劣化情報を通知するように要求する。劣化情報要求部２の一例として、ＡＴＩスキャン指示部１３２が挙げられる。
【００２０】
再書込指示部３は、複数のディスク装置７から通知された劣化情報のうち１以上のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて複数のディスク装置７に対して、再書き込みを行うように指示する。再書込指示部３の一例として、ＡＴＩリフレッシュ指示部１３３が挙げられる。
【００２１】
このように構成することにより、各ディスク装置７におけるデータ劣化に関する再書き込み処理を同期して実行することができる。
【００２２】
複数のディスク装置７は、それぞれ独立して、データの劣化に関する判定を行う判定機能と、判定の結果に基づいて、それぞれ独立して、データの再書き込みを行なう再書き込み機能と、を有する。ストレージ制御装置１は、さらに、無効化指示部４を含む。無効化指示部４は、複数のディスク装置７から通知された劣化情報のうち１以上のディスク装置７から通知された、データの再書き込みの契機となる劣化情報に基づいて、複数のディスク装置７に対して、再書き込み機能を無効にする無効化指示を行う。この機能は、独立して、データの劣化に関する判定を行い、判定の結果、データの劣化によりデータの再書き込みを必要とする際には、前記データの再書き込みを行う機能である。無効化指示部４の一例として、切替指示部１３４が挙げられる。劣化情報要求部２は、無効化指示により複数のディスク装置７のそれぞれの書き込み機能が無効化されたことを確認した場合に、複数のディスク装置７に対して、劣化情報を通知するように要求する。
【００２３】
このように構成することにより、各ディスク装置が独立して実行していた再書き込みを停止させて、ストレージ制御装置は再書き込み処理のタイミングを一元管理することができる。
【００２４】
ストレージ制御装置１は、さらに、計測部５を含む。計測部５は、複数のディスク装置７への書き込み処理の回数を計測する。計測部５の一例として、カウンタ更新部１３５が挙げられる。劣化情報要求部２は、計測された書き込み処理の回数が第１の閾値以上である場合、複数のディスク装置７のそれぞれに対して、劣化情報を通知するように要求する。再書込指示部３は、第２の閾値以上の数のディスク装置から通知された、データの再書き込みの契機となる劣化情報に基づいて、複数のディスク装置に対して、データの再書き込みを行うように指示する。
【００２５】
第１の閾値、第２の閾値はそれぞれ、ディスク装置により構築されるＲＡＩＤグループの種別に応じて、設定される。第１の閾値の一例として、本実施形態の閾値Ｔ１が挙げられる。第２の閾値の一例として、本実施形態の閾値Ｔ２が挙げられる。ＲＡＩＤグループの種別に応じて、第１の閾値、第２の閾値を選択することにより、ＲＡＩＤグループの種別に応じて、ＡＴＩスキャンのタイミング及びＡＴＩリフレッシュのタイミングを調整することができる。
【００２６】
ストレージ制御装置１は、さらに、調整部６を含む。調整部６は、前記書き込み処理の回数に応じて、前記ディスク装置による前記データの劣化の検出の頻度を調整する。調整部６の一例として、スキャン頻度調整部１３６が挙げられる。
【００２７】
このように構成することにより、再設定値を新たな閾値Ｔ１として用いることで、ＡＴＩスキャン回数の頻度を減らすことができ、ＡＴＩスキャン実施による性能影響の低減を図ることができる。
【００２８】
以下に、本実施形態の詳細を説明する。
図２は、本実施形態におけるストレージ装置の一例を示す。ストレージ装置１１は、ＲＡＩＤコントローラ１２、ＲＡＩＤグループ２１を含む。ＲＡＩＤグループ２１は、複数のディスク装置２２を含み、ＲＡＩＤを構成する。
【００２９】
ＲＡＩＤコントローラ１２は、複数のディスク装置２２により構築されるＲＡＩＤグループ２１等を管理する。ＲＡＩＤコントローラ１２は、制御部１３、記憶部１８、インターフェース２０を含む。
【００３０】
記憶部１８は、例えば、キャッシュメモリ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等の情報を記録するデバイスである。記憶部１８には、動作タイミング管理テーブル１９が格納される。
【００３１】
制御部１３は、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）等の集積回路またはＣＰＵ（Central Processing Unit）やＭＰＵ（Micro Processing Unit）等の電子回路である。制御部１３は、ＡＴＩ管理情報要求部１３１、ＡＴＩスキャン指示部１３２、ＡＴＩリフレッシュ指示部１３３、切替指示部１３４、カウンタ更新部１３５、スキャン頻度調整部１３６として機能する。
【００３２】
ＡＴＩ管理情報要求部１３１は、各ディスク装置２２からの起動後の準備完了の通知を受信したことを契機に、ディスク装置２２にＡＴＩ管理情報を送信するように要求するコマンド（ＡＴＩ管理情報要求コマンド）を発行する。ＡＴＩ管理情報は、ＡＴＩを管理する記憶領域（管理領域）に対応するＬＢＡ範囲情報と、ＡＴＩスキャンを実行するために用いるライト回数の閾値情報と、ライト回数カウンタ情報を含む。ＡＴＩ管理情報要求部１３１は、ＡＴＩ管理情報要求コマンド実行の結果、各ディスク装置２２から取得したＡＴＩ管理情報を用いて、動作タイミング管理テーブル１９を作成する。
【００３３】
ＡＴＩスキャン指示部１３２は、動作タイミング管理テーブル１９に基づいて、各ディスク装置２２に対し、ＡＴＩスキャン動作を起動させるコマンド（ＡＴＩスキャンコマンド）を発行する。
【００３４】
ＡＴＩリフレッシュ指示部１３３は、ＡＴＩスキャンの結果と、ディスク装置２２により構成されるＲＡＩＤレベルとに応じて、ＡＴＩリフレッシュの実施の要否を判定する。ＡＴＩリフレッシュの実施が必要と判定した場合、ＡＴＩリフレッシュ指示部１３３は、各ディスク装置２２に対し、ＡＴＩリフレッシュ動作を起動させるコマンド（ＡＴＩリフレッシュコマンド）を発行する。
【００３５】
切替指示部１３４は、ディスク装置２２が自動でＡＴＩスキャン動作及びＡＴＩリフレッシュ動作を行う機能を有効（ＯＮ）にしたり、無効（ＯＦＦ）したりすることを切り替えるコマンド（切替コマンド）を発行する。
【００３６】
カウンタ更新部１３５は、ライト処理の回数を計測し、その計測値を用いて、動作タイミング管理テーブル１９を更新する。
【００３７】
スキャン頻度調整部１３６は、ＡＴＩスキャンのタイミングを適正にするために、ＡＴＩスキャン回数の頻度を調整する。
【００３８】
インターフェース（「Ｉ／Ｆ」と称する）２０は、各ディスク装置２２と接続されており、制御部１３とディスク装置２２との間のデータ転送を媒介する。
【００３９】
ディスク装置２２は、自身の内部処理であるＡＴＩスキャン処理及びＡＴＩリフレッシュ処理について、Ｉ／Ｆ２０を介し、ＲＡＩＤコントローラ１２からの切替コマンドにより、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能のＯＮ／ＯＦＦの変更をする。また、ディスク装置２２は、ＲＡＩＤコントローラ１２からの取得コマンド発行に対して、ＡＴＩ管理情報を送信する。また、ディスク装置２２は、ＲＡＩＤコントローラ１２からのＡＴＩスキャンコマンド／ＡＴＩリフレッシュコマンドの発行に対して、ＡＴＩスキャン／ＡＴＩリフレッシュを実行する。
【００４０】
図３は、本実施形態における動作タイミング管理テーブルの一例を示す。ＡＴＩ管理情報要求部１３１は、取得コマンドの発行により、ＲＡＩＤレベルごとに、以下のデータ項目を含む動作タイミング管理テーブル１９を作成する。
【００４１】
動作タイミング管理テーブル１９は、「ＲＡＩＤ  Ｎｏ．」３１、「管理領域範囲」３２、「閾値Ｔ１」３３、「ライト回数カウンタ」３４、「ＡＴＩスキャン実行回数」３５、「閾値Ｔ２」３６、「ＡＴＩリフレッシュ対象数」３７のデータ項目を含む。
【００４２】
「ＲＡＩＤ  Ｎｏ．」３１は、ＲＡＩＤレベルを識別する識別情報を示す。「管理領域範囲」３２は、ディスク装置２２が管理しているＡＴＩスキャン領域の範囲を示す。「閾値Ｔ１」３３は、ＡＴＩスキャンを実行するためのライト回数の閾値を示す。「ライト回数カウンタ」３４は、ライト回数を示す。「ＡＴＩスキャン実行回数」３５は、ＡＴＩスキャンコマンドを実行した回数を示す。「閾値Ｔ２」３６は、ＡＴＩリフレッシュを実行するのに必要なディスク装置２２の数の閾値を示す。「ＡＴＩリフレッシュ対象数」３７は、ＡＴＩリフレッシュの実行が必要なディスク装置数を示す。
【００４３】
「閾値Ｔ１」３３、「閾値Ｔ２」３６には、予め値が設定されているが、後述するように、「閾値Ｔ１」３３は、実際のスキャン回数に応じて再設定される。
【００４４】
次に、ＡＴＩスキャン、ＡＴＩリフレッシュの制御方法について説明する。図４で説明するように、ＡＴＩスキャンのタイミング、及びＡＴＩリフレッシュのタイミングは、ＲＡＩＤレベルに応じて、３つのグループに分けることができる。ＲＡＩＤの構成は、冗長性を持たせたデータの生成方法と配置方法により複数の種別に分類することができる。ＲＡＩＤレベルとは、その分類された定義を示す値であり、ＲＡＩＤ０、ＲＡＩＤ０＋１、ＲＡＩＤ１、ＲＡＩＤ１＋０、ＲＡＩＤ５、ＲＡＩＤ６等で表記される。
【００４５】
図４は、本実施形態における、ＲＡＩＤレベルに応じたＡＴＩスキャン及びＡＴＩリフレッシュのタイミングについて説明するための図である。ＲＡＩＤレベルに応じてグループに分けられる。グループ１には、ＲＡＩＤレベルが“ＲＡＩＤ０”が含まれる。グループ２には、ＲＡＩ０＋１、ＲＡＩＤ１、ＲＡＩＤ１＋０、ＲＡＩＤ５、ＲＡＩＤ５＋０が含まれる。グループ３には、ＲＡＩＤ６が含まれる。このように、ＲＡＩＤレベルに応じてＲＡＩＤグループを３グループに分けるのは、ＲＡＩＤ内で、ＡＴＩスキャン／ＡＴＩリフレッシュ実施によるパフォーマンス影響が小さい（ＡＴＩスキャン／ＡＴＩリフレッシュ実施の頻度が少ない）、冗長性の２点を考慮したことによる。
【００４６】
グループ１は、ＲＡＩＤを構成する１台のディスク装置が故障するとＲＡＩＤ故障となるグループである。グループ２は、ＲＡＩＤを構成する２台のディスク装置が故障するとＲＡＩＤ故障となるグループである。グループ３は、ＲＡＩＤを構成する３台のディスクが故障するとＲＡＩＤ故障となるグループである。
【００４７】
まずは、ストレージ装置１１のＲＡＩＤレベルがグループ１に該当する場合について説明する。ディスク装置が有する閾値のうち、最小の閾値Ｔ１を用いて、ライト回数が閾値Ｔ１に達したときに、ＡＴＩスキャンが行われる。また、ＲＡＩＤを構成するディスク装置２２のうち、いずれかがＡＴＩリフレッシュの必要があると応答したときに、ＡＴＩリフレッシュが行われる。
【００４８】
ストレージ装置１１のＲＡＩＤレベルがグループ２に該当する場合について説明する。ＲＡＩＤグループ内のディスク装置が有する閾値のうち、２番目に小さい閾値Ｔ１を用いて、ライト回数が閾値Ｔ１に達したときに、ＡＴＩスキャンが行われる。また、ＲＡＩＤを構成するディスク装置のうち、ディスク装置２台がＡＴＩリフレッシュの必要があると応答したときに、ＡＴＩリフレッシュが行われる。
【００４９】
ストレージ装置１１のＲＡＩＤレベルがグループ３に該当する場合について説明する。ディスク装置が有する閾値のうち、３番目に小さい閾値Ｔ１を用いて、ライト回数が閾値Ｔ１に達したときに、ＡＴＩスキャンが行われる。また、ＲＡＩＤを構成するディスク装置のうち、ディスク装置３台がＡＴＩリフレッシュの必要があると応答したときに、ＡＴＩリフレッシュが行われる。
【００５０】
次に、ＡＴＩスキャンタイミングの学習方法について説明する。ＡＴＩリフレッシュタイミングが、ＡＴＩスキャンを３回以上実施した場合に到来した場合（ＡＴＩスキャン閾値再設定タイミング）には、閾値Ｔ１を以下の算出式を用い再設定する。すなわち、ＡＴＩスキャンタイミング到来時のＡＴＩスキャン回数が以下の条件式（１）
ＡＴＩスキャンタイミング到来時のＡＴＩスキャン回数≧３  ・・・（１）
に当てはまる場合は、ＡＴＩスキャン実行するためのライト回数についての閾値Ｔ１を再設定するために、以下の式（２）を用いて、再設定を行う。
再設定値＝（ＡＴＩリフレッシュタイミング到来時のＡＴＩスキャン回数）×
（元の閾値Ｔ１）÷２  ・・・（２）
この再設定値を新たな閾値Ｔ１として用いることで、ＡＴＩスキャン回数の頻度を減らすことができ、ＡＴＩスキャン実施による性能影響の低減を図ることができる。
【００５１】
本実施形態におけるストレージ装置１１の動作は、ＲＡＩＤボリューム作成時でのＲＡＩＤグループの再構成時の動作タイミング管理テーブル１９の作成処理と、ＲＡＩＤコントローラ１２によるＡＴＩスキャン／ＡＴＩリフレッシュ処理の２つに大別される。これらの処理の詳細についてはそれぞれ、図５、図６を用いて説明する。なお、ＲＡＩＤグループの再構成とは、ＲＡＩＤグループを構成するディスク装置が交換等により変更されることにより、再度ＲＡＩＤグループを構成することをいう。ＲＡＩＤボリュームとは、ディスク装置２２が有する記憶領域における、１又は複数のＲＡＩＤ方式に基づく論理ボリュームを表す。
【００５２】
次に、図５、及び図６を用いて、本実施形態に係るＲＡＩＤコントローラ１２のフローについて説明する。このとき、ＲＡＩＤコントローラ１２の制御部１３は、ＡＴＩ管理情報要求部１３１、ＡＴＩスキャン指示部１３２、ＡＴＩリフレッシュ指示部１３３、切替指示部１３４、カウンタ更新部１３５、スキャン頻度調整部１３６として機能する。
【００５３】
図５は、本実施形態における、ＲＡＩＤボリューム作成時のＲＡＩＤグループの再構成時の動作タイミング管理テーブルの作成処理フローの一例を示す。ＲＡＩＤボリューム作成時に、ストレージ装置１１は、以下の動作を行い、動作タイミング管理テーブル１９を作成する。
【００５４】
まず、切替指示部１３４は、各ディスク装置２２に対し、自動でＡＴＩスキャン及びＡＴＩリフレッシュを実行する機能（自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能）をＯＦＦにするコマンドを発行する（Ｓ１）。ディスク装置２２は、自動ＡＴＩスキャン／ＡＴＩリフレッシュをＯＦＦにするコマンドを受信すると、そのコマンドを実行し、その実行結果（正常終了か異常終了かを示すステータス）をＲＡＩＤコントローラ１２へ応答する。
【００５５】
切替指示部１３４は、ＲＡＩＤグループ２１内の全ディスク装置２２から、自動ＡＴＩスキャン／ＡＴＩリフレッシュをＯＦＦにするコマンドを実行した結果（応答結果）を受信する（Ｓ２）。
【００５６】
全てのディスク装置２２において、自動ＡＴＩスキャン／ＡＴＩリフレッシュをＯＦＦにするコマンドの実行結果が正常終了でない場合（Ｓ３で「Ｎｏ」）、切替指示部１３４は、次の処理を行う。すなわち、切替指示部１３４は、各ディスク装置２２に対し、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにするコマンドを発行する（Ｓ８）。なお、切替指示部１３４は、自動ＡＴＩスキャン／ＡＴＩリフレッシュをＯＦＦにするコマンドの実行結果が異常終了であるディスク装置２２に対して、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにするコマンドを発行してもよい。ディスク装置２２は、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにするコマンドを受信すると、自動ＡＴＩスキャン／ＡＴＩリフレッシュを実施する。
【００５７】
ＲＡＩＤグループ２１内の全ディスク装置２２から受信した、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＦＦにするコマンドの実行結果が正常終了である場合（Ｓ３で「Ｙｅｓ」）、切替指示部１３４は、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能がＯＦＦであると判断する。この場合、ＡＴＩ管理情報要求部１３１は、各ディスク装置２２に対してＡＴＩ管理情報の送信を要求するコマンド（ＡＴＩ管理情報要求コマンド）を発行する（Ｓ４）。
【００５８】
ディスク装置２２は、ＡＴＩ管理情報要求コマンドを受信すると、そのコマンドを実行する。ディスク装置２２は、ＡＴＩ管理情報要求コマンドの実行結果（正常終了か異常終了かを示すステータス）と、ＡＴＩ管理情報とをＲＡＩＤコントローラ１２に応答する。ＡＴＩ管理情報要求部１３１は、ディスク装置２２から、ＡＴＩ管理情報要求コマンドに対する実行結果（ステータス）と、ＡＴＩ管理情報を受信する（Ｓ５）。
【００５９】
ＡＴＩ管理情報要求コマンドの実行結果が異常終了の場合（Ｓ６で「Ｎｏ」）、切替指示部１３４は、各ディスク装置２２に対して、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにするコマンドを発行する（Ｓ８）。自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにするコマンドを受信すると、ディスク装置２２は、そのコマンドを実行し、自動ＡＴＩスキャン／ＡＴＩリフレッシュ機能をＯＮにする。すると、ディスク装置２２は、自動ＡＴＩスキャン／ＡＴＩリフレッシュを実施する。
【００６０】
ＡＴＩ管理情報の送信を要求するコマンドの実行結果が正常終了の場合（Ｓ６で「Ｙｅｓ」）、ＡＴＩ管理情報要求部１３１は、受信したＡＴＩ管理情報を用いて、動作タイミング管理テーブル１９を作成する（Ｓ７）。
【００６１】
ＲＡＩＤグループ２１内のディスク装置２２の再構成があるごとに、ＲＡＩＤコントローラ１２は、新たにＲＡＩＤグループ２１に追加されたディスク装置２２に対してＳ１〜Ｓ７を実施し、動作タイミング管理テーブル１９を更新する。
【００６２】
これにより、動作タイミング管理テーブル１９が作成され、それにより、ＲＡＩＤコントローラ１２は、動作タイミング管理テーブル１９を参照して、ＲＡＩＤグループの種別（ＲＡＩＤレベル）を特定することができる。
【００６３】
図６は、本実施形態における、ＲＡＩＤコントローラによるＡＴＩスキャン／ＡＴＩＡＴＩリフレッシュ処理フローの一例を示す。図５のフローにおいて、ＲＡＩＤコントローラ１２は、ＲＡＩＤグループの種別（ＲＡＩＤレベル）を認識する。ＲＡＩＤコントローラ１２は、図４で説明したようにそのＲＡＩＤレベルに応じて、ディスク装置を選択し、そのディスク装置の閾値Ｔ１を設定する。
【００６４】
カウンタ更新部１３５は、上記で選択したディスク装置２１の入出力処理において実行されるライト処理の回数（ライト回数）をカウントし、動作タイミング管理テーブル１９の「ライト回数」３４を更新する（Ｓ１１）。カウンタ更新部１３５は、カウントしたライト回数が閾値Ｔ１に到達したかを判断する（Ｓ１２）。カウントしたライト回数が閾値Ｔ１に到達していない場合（Ｓ１２で「Ｎｏ」）、Ｓ１１の処理へ戻る。
【００６５】
カウントしたライト回数が閾値Ｔ１に到達した場合（Ｓ１２で「Ｙｅｓ」）、ＡＴＩスキャン指示部１３２は、ＲＡＩＤグループ２１を構成する全ディスク装置２２に対して、ＡＴＩスキャンコマンドを発行する（Ｓ１３）。ＡＴＩスキャンコマンドを受信すると、ディスク装置２２は、ＡＴＩスキャンを行い、ＡＴＩによるデータ消失具合を診断する。ディスク装置２２は、そのＡＴＩスキャンコマンドの実行結果（データ消去具合が閾値ＴＴ２を超えたか否かを示す情報、スキャン実行回数等）をＲＡＩＤコントローラ１２へ応答する。
【００６６】
ＡＴＩスキャン指示部１３２は、全ディスク装置２２からＡＴＩスキャンコマンド実行結果を受信する。ＡＴＩスキャン指示部１３２は、そのＡＴＩスキャンコマンド実行結果に基づいて、動作タイミング管理テーブル１９の「ＡＴＩスキャン実行回数」３５、「ＡＴＩリフレッシュ対象数」３７を更新する（Ｓ１４）。
【００６７】
ＡＴＩリフレッシュ指示部１３３は、図４で説明したように、ＲＡＩＤグループ２１のＲＡＩＤレベルに応じたＡＴＩリフレッシュタイミングが到来したかを判定する（Ｓ１５）。すなわち、ＡＴＩリフレッシュ指示部１３３は、動作タイミング管理テーブル１９の「ＡＴＩリフレッシュ対象数」３７の値が閾値Ｔ２以上であるかを判断する。
【００６８】
ＡＴＩリフレッシュタイミングが到来していない場合（Ｓ１５で「Ｎｏ」）、Ｓ１１の処理へ戻る。
【００６９】
ＡＴＩリフレッシュタイミングが到来している場合（Ｓ１５で「Ｙｅｓ」）、ＡＴＩリフレッシュ指示部１３３は、ＲＡＩＤグループ２１内の全ディスク装置２２に対して、ＡＴＩリフレッシュコマンドを発行する（Ｓ１６）。ディスク装置２２は、ＡＴＩリフレッシュコマンドを受信すると、ＡＴＩリフレッシュコマンドを実行し、動作タイミング管理テーブル１９の「管理領域範囲」３２に対応するデータを書き直す。ディスク装置２２は、ＡＴＩリフレッシュコマンドの実行結果をＲＡＩＤコントローラ１２へ応答する。
【００７０】
ＡＴＩリフレッシュ指示部１３３は、全ディスク装置２２からＡＴＩリフレッシュコマンドの実行結果を受信する（Ｓ１７）。
【００７１】
スキャン頻度調整部１３６は、ＡＴＩスキャンタイミングが、ＡＴＩスキャンタイミングを再調整するための条件式（１）に当てはまる場合には、再設定式（２）を従い、ＡＴＩ スキャンを実施するタイミングを再設定する（Ｓ１９）。ＡＴＩスキャンタイミングを再調整するための条件式（１）に当てはまらない場合には、Ｓ１１に戻る。
【００７２】
本実施形態によれば、ディスク装置が自律的にＡＴＩリフレッシュ動作の影響による性能劣化を最小化するために、ＲＡＩＤコントローラはＲＡＩＤグループに属する全てのディスク装置のＡＴＩリフレッシュ動作を同期して実行するように制御することができる。このとき、ＲＡＩＤコントローラはより適切なタイミングでＡＴＩリフレッシュを実行することを制御することができる。
【００７３】
なお、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
【符号の説明】
【００７４】
１      ストレージ制御装置
２      劣化情報要求部
３      再書込指示部
４      無効化指示部
５      計測部
６      調整部
７      ディスク装置
１１    ストレージ装置
１２    ＲＡＩＤコントローラ
１３    制御部
１３１    ＡＴＩ管理情報要求部
１３２    ＡＴＩスキャン指示部
１３３    ＡＴＩリフレッシュ指示部
１３４    切替指示部
１３５    カウンタ更新部
１３６    スキャン頻度調整部
１８    記憶部
１９    動作タイミング管理テーブル
２０    インターフェース
２１    ＲＡＩＤグループ
２２    ディスク装置
【図１】
2014199578.tif 000003
【図２】
2014199578.tif 000004
【図３】
2014199578.tif 000005
【図４】
2014199578.tif 000006
【図５】
2014199578.tif 000007
【図６】
2014199578.tif 000008