(57)【要約】      （修正有）【課題】  アクセス性能を大幅に低下させることなく、ハードディスクドライブにおいて消費する電力を削減すること。  【解決手段】  論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信した時刻をメモリに当該論理ボリュームを構成するＲＡＩＤグループのアクセス時刻として記憶し、アクセス時刻が所定の時間を経過している場合、ＲＡＩＤグループの冗長性に応じた数の前記ハードディスクドライブを節電モードとする。また、第一のインタフェース規格の第一のハードディスクドライブと、第一のハードディスクドライブよりも寿命の短い、第二のインタフェース規格の第二のハードディスクドライブとを有し、アクセス時刻が所定の時間を経過しているＲＡＩＤグループについて、ＲＡＩＤグループが第一のハードディスクドライブのみである場合は、ＲＡＩＤグループの冗長性に応じた数の第一のハードディスクドライブを節電モードとし、ＲＡＩＤグループが第二のハードディスクドライブのみである場合は、任意の数の第二のハードディスクドライブを節電モードとする。【選択図】  図１
2005228288.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置と通信可能に接続され、
複数のハードディスクドライブと、
前記情報処理装置から前記ハードディスクドライブに対するデータの読み出し要求と書き込み要求とを受信するホストインタフェースと、通信経路を介して前記ハードディスクドライブと通信可能に接続され前記ハードディスクドライブとの間でデータの入出力を行うディスクインタフェースと、メモリと、前記ホストインタフェースと前記ディスクインタフェースとの制御を司るＣＰＵと、計時機構とを含んで構成されるコントローラと
を有し、
複数の前記ハードディスクドライブにより構成される冗長性を有するＲＡＩＤグループに論理ボリュームが形成され、
前記情報処理装置から前記論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信すると前記計時機構より取得される時刻を前記メモリにアクセス時刻として当該論理ボリュームが形成されている前記ＲＡＩＤグループの識別子と対応付けて記憶するアクセス時刻記憶部と、
前記メモリに記憶されている前記アクセス時刻を参照し、前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている場合、前記ＲＡＩＤグループの冗長性に応じた数の前記ハードディスクドライブを節電モードとする節電モード実行部と
を有することを特徴とするディスクアレイ装置。
【請求項２】
請求項１に記載のディスクアレイ装置であって、
前記ディスクインタフェースと前記複数のハードディスクドライブとを接続する複数の通信経路を備え、
前記ハードディスクドライブは前記通信経路のうちのいずれかと通信可能に接続され、
節電モードとなっている前記ハードディスクドライブの数が最も少ない前記通信経路を選択する通信経路選択部を有し、
前記節電モード実行部は、前記通信経路選択部により選択される前記通信経路と通信可能に接続されている前記ハードディスクドライブを節電モードとすること
を特徴とするディスクアレイ装置。
【請求項３】
請求項１に記載のディスクアレイ装置であって、
前記情報処理装置から前記節電モードとなっている前記ハードディスクドライブを含んで形成される前記論理ボリュームに対する前記読み出し要求を受信すると、前記論理ボリュームを構成する前記ハードディスクドライブのうちの節電モードとなっていない前記ハードディスクドライブから前記ＲＡＩＤグループの冗長性を用いて前記読み出し要求に応答する読み出し要求応答部と、
前記読み出し要求応答部が前記読み出し要求に応答した後に、節電モードとなっている前記ハードディスクドライブの節電モードを解除する節電モード解除部と
を有することを特徴とするディスクアレイ装置。
【請求項４】
請求項１に記載のディスクアレイ装置であって、
前記節電モード実行部が前記ハードディスクドライブを節電モードとする前に、当該ハードディスクドライブに記憶されているデータの複製を予備の前記ハードディスクドライブであるスペアドライブに記憶するスペアドライブ記憶部と、
節電モードとなっている前記ハードディスクドライブを含んで形成される前記論理ボリュームに対する前記書き込み要求を受信すると、前記論理ボリュームを構成する前記ハードディスクドライブのうちの節電モードとなっていない前記ハードディスクドライブと前記スペアドライブとを前記論理ボリュームが形成されている前記ＲＡＩＤグループとして前記書き込み要求に応答する書き込み要求応答部と、
前記書き込み要求応答部が前記書き込み要求に応答した後に、節電モードとなっている前記ハードディスクドライブの節電モードを解除し、前記スペアドライブに記憶されているデータの複製を節電モードが解除された前記ハードディスクドライブに記憶する節電モード解除部と
を有することを特徴とするディスクアレイ装置。
【請求項５】
請求項４に記載のディスクアレイ装置であって、
前記書き込み要求応答部が前記書き込み要求に応じて前記スペアドライブに書き込んだデータの位置情報を前記メモリに記憶する位置情報記憶部を有し、
前記節電モード解除部は、前記スペアドライブの前記位置情報で示される位置に記憶されている前記データの複製を節電モードが解除された前記ハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項６】
請求項１に記載のディスクアレイ装置であって、
節電モードとなっている前記ハードディスクドライブを含んで形成される前記論理ボリュームに対する前記書き込み要求を受信すると、当該書き込み要求に伴うデータを前記論理ボリュームを構成する前記ハードディスクドライブのうちの節電モードとなっていない前記ハードディスクドライブのみに書き込んで当該書き込み要求に応答する書き込み要求応答部と、
前記書き込み要求応答部が前記書き込み要求に応答した後に、節電モードとなっている前記ハードディスクドライブの節電モードを解除し、前記論理ボリュームを構成する前記ハードディスクドライブのうちの節電モードとなっていなかった前記ハードディスクドライブに記憶されているデータから前記ＲＡＩＤグループの冗長性を用いて節電モードとなっていた前記ハードディスクドライブに記憶されるデータを生成し、生成された当該データを節電モードが解除された前記ハードディスクドライブに記憶する節電モード解除部と
を有することを特徴とするディスクアレイ装置。
【請求項７】
請求項６に記載のディスクアレイ装置であって、
前記書き込み要求において節電モードとなっている前記ハードディスクドライブに書き込まれるデータの当該ハードディスクドライブにおける位置情報を前記メモリに記憶する位置情報記憶部を有し、
前記節電モード解除部は、前記論理ボリュームを構成する前記ハードディスクドライブのうちの節電モードとなっていなかった前記ハードディスクドライブに記憶されているデータから前記ＲＡＩＤグループの冗長性を用いて節電モードとなっていた前記ハードディスクドライブの前記位置情報で示される位置に記憶されるデータを生成し、生成された当該データを節電モードが解除された前記ハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項８】
情報処理装置と通信可能に接続され、
第一のインタフェース規格によりデータの送受信を行う複数の第一のハードディスクドライブと、
前記第一のハードディスクドライブよりも寿命の短い、第二のインタフェース規格によりデータの送受信を行う複数の第二のハードディスクドライブと、
前記情報処理装置から前記第一又は第二のハードディスクドライブに対するデータの読み出し要求と書き込み要求とを受信するホストインタフェースと、通信経路を介して前記第一又は第二のハードディスクドライブと通信可能に接続され前記第一又は第二のハードディスクドライブとの間でデータの入出力を行うディスクインタフェースと、メモリと、前記ホストインタフェースと前記ディスクインタフェースとの制御を司るＣＰＵと、計時機構とを含んで構成されるコントローラと
を有し、
複数の前記第一又は第二のハードディスクドライブにより構成されるＲＡＩＤグループに論理ボリュームが形成され、
前記情報処理装置から前記論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信すると前記計時機構より取得される時刻をアクセス時刻として当該論理ボリュームが形成されている前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶するアクセス時刻記憶部と、
前記メモリに記憶されている前記アクセス時刻を参照し、前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている前記ＲＡＩＤグループについて、前記ＲＡＩＤグループが前記第一のハードディスクドライブのみで構成されている場合は、前記ＲＡＩＤグループの冗長性に応じた数の前記第一のハードディスクドライブを節電モードとし、前記ＲＡＩＤグループが前記第二のハードディスクドライブのみで構成されている場合は、任意の数の前記第二のハードディスクドライブを節電モードとする節電モード実行部と、
前記節電モード実行部により前記第一又は第二のハードディスクドライブが節電モードとなると、前記計時機構より取得される時刻を節電開始時刻として前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶する節電開始時刻記憶部と、
前記節電開始時刻を参照し、当該節電開始時刻と前記計時機構より取得される時刻との差が所定の時間を超えている場合は、節電モードとなっている前記第一又は第二のハードディスクドライブの節電モードを解除する節電モード解除部と
を有することを特徴とするディスクアレイ装置。
【請求項９】
請求項８に記載のディスクアレイ装置であって、
前記ＲＡＩＤグループ毎の利用形態が前記メモリに記憶され、
前記節電モード実行部は、前記ＲＡＩＤグループが前記第一のハードディスクドライブと前記第二のハードディスクドライブとで構成されている場合は、前記ＲＡＩＤグループの前記利用形態に応じて、前記ＲＡＩＤグループの冗長性に応じた数又は任意の数の前記第一又は第二のハードディスクドライブを節電モードとすること
を特徴とするディスクアレイ装置。
【請求項１０】
請求項８に記載のディスクアレイ装置であって、
前記ＲＡＩＤグループ毎の連続稼働時間を前記メモリに記憶する連続稼働時間記憶部と、
前記連続稼働時間が所定の時間を超えている前記ＲＡＩＤグループを構成する全ての前記第一又は第二のハードディスクドライブに記憶されているデータの複製を予備の前記第一又は第二のハードディスクドライブであるスペアドライブに記憶し、前記ＲＡＩＤグループを構成する全ての前記第一又は第二のハードディスクドライブを節電モードとする一括スペア実行部と
を有することを特徴とするディスクアレイ装置。
【請求項１１】
請求項８に記載のディスクアレイ装置であって、
前記第一又は第二のハードディスクドライブ毎の累積稼働時間を前記メモリに記憶する累積稼働時間記憶部を有し、
前記節電モード実行部は、前記ＲＡＩＤグループを構成する前記第一又は第二のハードディスクドライブのうちで前記累積稼働時間が長い前記第一又は第二のハードディスクドライブを節電モードとすること
を特徴とするディスクアレイ装置。
【請求項１２】
請求項１１に記載のディスクアレイ装置であって、
節電モード解除部が節電モードとなっている前記第一又は第二のハードディスクドライブの節電モードを解除した後に、前記節電モード実行部は、当該第一又は第二のハードディスクドライブを含むＲＡＩＤグループの前記第一又は第二のハードディスクドライブの中から、前記稼働時間が長い前記第一又は第二のハードディスクドライブを節電モードとすること
を特徴とするディスクアレイ装置。
【請求項１３】
請求項８に記載のディスクアレイ装置であって、
前記第一又は第二のハードディスクドライブ毎のヘッドがロードされた時刻をロード時刻として前記メモリに記憶するロード時刻記憶部と、
前記ロード時刻と前記計時機構より取得される時刻との差が所定の時間を超えている前記ハードディスクドライブのヘッドをアンロードするアンロード実行部と
を有することを特徴とするディスクアレイ装置。
【請求項１４】
請求項８に記載のディスクアレイ装置であって、
前記第一又は第二のハードディスクドライブ毎の累積稼働時間を前記メモリに記憶する累積稼働時間記憶部と、
前記第一又は第二のハードディスクドライブ毎に発生したエラーの回数を前記メモリに記憶するエラー回数記憶部と、
前記エラー回数が前記累積稼働時間に応じた所定のエラー回数を超えている前記第一又は第二のハードディスクドライブに記憶されているデータの複製を予備の前記第一又は第二のハードディスクドライブであるスペアドライブに記憶するダイナミックスペア実行部と
を有することを特徴とするディスクアレイ装置。
【請求項１５】
請求項８に記載のディスクアレイ装置であって、
前記情報処理装置から前記節電モードとなっている前記第一のハードディスクドライブを含んで形成される前記論理ボリュームに対する前記読み出し要求を受信すると、前記論理ボリュームを構成する前記第一のハードディスクドライブのうちの節電モードとなっていない前記第一のハードディスクドライブから前記ＲＡＩＤグループの冗長性を用いて前記読み出し要求に応答し、前記情報処理装置から前記節電モードとなっている前記第二のハードディスクドライブを含んで形成される前記論理ボリュームに対する前記読み出し要求を受信すると、節電モードとなっている前記第二のハードディスクドライブの節電モードを解除して前記読み出し要求に応答する読み出し要求応答部を有すること
を特徴とするディスクアレイ装置。
【請求項１６】
請求項８に記載のディスクアレイ装置であって、
前記節電モード実行部が前記第一のハードディスクドライブを節電モードとする前に、当該第一のハードディスクドライブに記憶されているデータの複製を予備の前記第一又は第二のハードディスクドライブであるスペアドライブに記憶するスペアドライブ記憶部と、
節電モードとなっている前記第一のハードディスクドライブを含んで形成される前記論理ボリュームに対する前記書き込み要求を受信すると、前記論理ボリュームを構成する前記第一のハードディスクドライブのうちの節電モードとなっていない前記第一のハードディスクドライブと前記スペアドライブとを前記論理ボリュームが形成されている前記ＲＡＩＤグループとして前記書き込み要求に応答する書き込み要求応答部と
を有し、
前記節電モード解除部は、前記スペアドライブに記憶されているデータの複製を節電モードが解除された前記第一のハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項１７】
請求項１６に記載のディスクアレイ装置であって、
前記書き込み要求応答部が前記書き込み要求に応じて前記スペアドライブに書き込んだデータの位置情報を前記メモリに記憶する位置情報記憶部を有し、
前記節電モード解除部は、前記スペアドライブの前記位置情報で示される位置に記憶されている前記データの複製を節電モードが解除された前記第一のハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項１８】
請求項８に記載のディスクアレイ装置であって、
節電モードとなっている前記第一のハードディスクドライブを含んで形成される前記論理ボリュームに対する前記書き込み要求を受信すると、当該書き込み要求に伴うデータを前記論理ボリュームを構成する前記第一のハードディスクドライブのうちの節電モードとなっていない前記第一のハードディスクドライブのみに書き込んで当該書き込み要求に応答する書き込み要求応答部を有し、
前記節電モード解除部は、前記論理ボリュームを構成する前記第一のハードディスクドライブのうちの節電モードとなっていなかった前記第一のハードディスクドライブに記憶されているデータから前記ＲＡＩＤグループの冗長性を用いて節電モードとなっていた前記第一のハードディスクドライブに記憶されるデータを生成し、生成された当該データを節電モードが解除された前記第一のハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項１９】
請求項１８に記載のディスクアレイ装置であって、
前記書き込み要求において節電モードとなっている前記第一のハードディスクドライブに書き込まれるデータの当該第一のハードディスクドライブにおける位置情報を前記メモリに記憶する位置情報記憶部を有し、
前記節電モード解除部は、前記論理ボリュームを構成する前記第一のハードディスクドライブのうちの節電モードとなっていなかった前記第一のハードディスクドライブに記憶されているデータから前記ＲＡＩＤグループの冗長性を用いて節電モードとなっていた前記第一のハードディスクドライブの前記位置情報で示される位置に記憶されるデータを生成し、生成された当該データを節電モードが解除された前記第一のハードディスクドライブに記憶すること
を特徴とするディスクアレイ装置。
【請求項２０】
情報処理装置と通信可能に接続され、
第一のインタフェース規格によりデータの送受信を行う複数の第一のハードディスクドライブと、
前記第一のハードディスクドライブよりも寿命の短い、第二のインタフェース規格によりデータの送受信を行う複数の第二のハードディスクドライブと、
前記情報処理装置から前記第一又は第二のハードディスクドライブに対するデータの読み出し要求と書き込み要求とを受信するホストインタフェースと、通信経路を介して前記第一又は第二のハードディスクドライブと通信可能に接続され前記第一又は第二のハードディスクドライブとの間でデータの入出力を行うディスクインタフェースと、メモリと、前記ホストインタフェースと前記ディスクインタフェースとの制御を司るＣＰＵと、計時機構とを含んで構成されるコントローラとを有し、
複数の前記第一又は第二のハードディスクドライブにより構成されるＲＡＩＤグループに論理ボリュームが形成されているディスクアレイ装置の制御方法であって、
前記情報処理装置から前記論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信すると前記計時機構より取得される時刻をアクセス時刻として当該論理ボリュームが形成されている前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶するステップと、
前記メモリに記憶されている前記アクセス時刻を参照し、前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えているかどうか確認するステップと、
前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている前記ＲＡＩＤグループについて、前記ＲＡＩＤグループが前記第一のハードディスクドライブのみで構成されている場合は、前記ＲＡＩＤグループの冗長性に応じた数の前記第一のハードディスクドライブを節電モードとするステップと、
前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている前記ＲＡＩＤグループについて、前記ＲＡＩＤグループが前記第二のハードディスクドライブのみで構成されている場合は、任意の数の前記第二のハードディスクドライブを節電モードとするステップと、
前記第一又は第二のハードディスクドライブが節電モードとなると、前記計時機構より取得される時刻を節電開始時刻として前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶するステップと、
前記節電開始時刻を参照し、当該節電開始時刻と前記計時機構より取得される時刻との差が所定の時間を超えている場合は、節電モードとなっている前記第一又は第二のハードディスクドライブの節電モードを解除するステップと
を有することを特徴とするディスクアレイ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ装置及びディスクアレイ装置の制御方法に関する。
【背景技術】
【０００２】
近年、様々な分野において、環境問題への対応やコスト削減が重要視されている。ディスクアレイ装置においては、消費する電力を減らすことにより、これらの問題に対応しようとする流れがある。特許文献１においては、ディスクアレイ装置のハードディスクドライブ群（ＲＡＩＤグループ）ごとに、情報処理装置からのアクセスを管理し、一定時間アクセスが無い場合は、ＲＡＩＤグループを構成する全てのハードディスクドライブを節電モードとする方法が開示されている。
【０００３】
また、ディスクアレイ装置においては、個々のハードディスクドライブの障害発生を防止し、ディスクアレイ装置全体の寿命を長くすることが求められている。特許文献２においては、所定の時間ごとに、ハードディスクドライブを節電モードとする（磁気ディスクの回転を停止する）動作を１台ずつ順番に実施することにより、アクセス性能を大幅に低下させることなくハードディスクドライブの障害発生を防止する方法が開示されている。
【特許文献１】特開２０００−２９３３１４号公報
【特許文献２】特開平１０−８３６１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１による方法においては、ＲＡＩＤグループごとに全てのハードディスクドライブを節電モードとしている。そのため、情報処理装置から当該ＲＡＩＤグループに構成される論理ボリュームに対するアクセス要求があった場合に、節電モードを解除してから当該アクセス要求に応答する必要があり、アクセス性能が大幅に低下してしまう。そのため、アクセス性能を大幅に低下させることなく、ハードディスクドライブにおいて消費する電力を削減することが求められている。
【０００５】
また、近年、インタフェース規格が異なる複数のハードディスクドライブを組み合わせたディスクアレイ装置が用いられるようになってきている。インタフェース規格とは、例えばファイバチャネルやシリアルＡＴＡなどである。シリアルＡＴＡのハードディスクドライブは、ファイバチャネルのハードディスクドライブと比較すると信頼性が低く、また、寿命も短い。しかし、シリアルＡＴＡのハードディスクドライブはファイバチャネルのハードディスクドライブより安価であるため、基幹業務以外の業務に用いる等、用途に応じてファイバチャネルとシリアルＡＴＡとを使い分けている場合が多い。
【０００６】
例えば、ディスクアレイ装置がファイバチャネルのハードディスクドライブとシリアルＡＴＡのハードディスクドライブとにより構成されているとする。この場合、シリアルＡＴＡのハードディスクドライブの方が寿命が短いため、ディスクアレイ装置全体の寿命がシリアルＡＴＡのハードディスクドライブの寿命に影響され短くなってしまう。そのため、ディスクアレイ装置が複数のインタフェース規格のハードディスクドライブにより構成されている場合において、ハードディスクドライブの寿命を延ばすことが求められている。特許文献２に開示されている方法を用いることで、ハードディスクドライブを１台ずつ節電モードとすることによりハードディスクドライブの障害発生を防止し、ハードディスクドライブの寿命を延ばすことができるが、ディスクアレイ装置が複数のインタフェース規格のハードディスクドライブにより構成されている場合の考慮は開示されていない。
【０００７】
本発明は上記課題を鑑みてなされたものであり、ディスクアレイ装置及びディスクアレイ装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明は、情報処理装置と通信可能に接続され、複数のハードディスクドライブと、前記情報処理装置から前記ハードディスクドライブに対するデータの読み出し要求と書き込み要求とを受信するホストインタフェースと、通信経路を介して前記ハードディスクドライブと通信可能に接続され前記ハードディスクドライブとの間でデータの入出力を行うディスクインタフェースと、メモリと、前記ホストインタフェースと前記ディスクインタフェースとの制御を司るＣＰＵと、計時機構とを含んで構成されるコントローラとを有し、複数の前記ハードディスクドライブにより構成される冗長性を有するＲＡＩＤグループに論理ボリュームが形成され、前記情報処理装置から前記論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信すると前記計時機構より取得される時刻を前記メモリにアクセス時刻として当該論理ボリュームが形成されている前記ＲＡＩＤグループの識別子と対応付けて記憶するアクセス時刻記憶部と、前記メモリに記憶されている前記アクセス時刻を参照し、前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている場合、前記ＲＡＩＤグループの冗長性に応じた数の前記ハードディスクドライブを節電モードとする節電モード実行部とを有することを特徴とするディスクアレイ装置に関する。
【０００９】
また、本発明は、情報処理装置と通信可能に接続され、第一のインタフェース規格によりデータの送受信を行う複数の第一のハードディスクドライブと、前記第一のハードディスクドライブよりも寿命の短い、第二のインタフェース規格によりデータの送受信を行う複数の第二のハードディスクドライブと、前記情報処理装置から前記第一又は第二のハードディスクドライブに対するデータの読み出し要求と書き込み要求とを受信するホストインタフェースと、通信経路を介して前記第一又は第二のハードディスクドライブと通信可能に接続され前記第一又は第二のハードディスクドライブとの間でデータの入出力を行うディスクインタフェースと、メモリと、前記ホストインタフェースと前記ディスクインタフェースとの制御を司るＣＰＵと、計時機構とを含んで構成されるコントローラとを有し、複数の前記第一又は第二のハードディスクドライブにより構成されるＲＡＩＤグループに論理ボリュームが形成され、前記情報処理装置から前記論理ボリュームに対するデータの読み出し要求又は書き込み要求を受信すると前記計時機構より取得される時刻をアクセス時刻として当該論理ボリュームが形成されている前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶するアクセス時刻記憶部と、前記メモリに記憶されている前記アクセス時刻を参照し、前記計時機構より取得される時刻と前記アクセス時刻との差が所定の時間を超えている前記ＲＡＩＤグループについて、前記ＲＡＩＤグループが前記第一のハードディスクドライブのみで構成されている場合は、前記ＲＡＩＤグループの冗長性に応じた数の前記第一のハードディスクドライブを節電モードとし、前記ＲＡＩＤグループが前記第二のハードディスクドライブのみで構成されている場合は、任意の数の前記第二のハードディスクドライブを節電モードとする節電モード実行部と、前記節電モード実行部により前記第一又は第二のハードディスクドライブが節電モードとなると、前記計時機構より取得される時刻を節電開始時刻として前記ＲＡＩＤグループの識別子と対応付けて前記メモリに記憶する節電開始時刻記憶部と、前記節電開始時刻を参照し、当該節電開始時刻と前記計時機構より取得される時刻との差が所定の時間を超えている場合は、節電モードとなっている前記第一又は第二のハードディスクドライブの節電モードを解除する節電モード解除部とを有することを特徴とするディスクアレイ装置に関する。
【発明の効果】
【００１０】
ディスクアレイ装置及びディスクアレイ装置の制御方法を提供することができる。
【発明を実施するための最良の形態】
【００１１】
＝＝第一の実施形態＝＝
図１は、本発明の第一の実施形態として説明するディスクアレイ装置のハードウェア構成を示すブロック図である。
【００１２】
ディスクアレイ装置１０には、ＳＡＮ（Storage Area Network）３０を介して情報処理装置２０が接続されており、また、ＬＡＮ（Local Area Network）を介して管理端末９０が接続されている。
【００１３】
情報処理装置２０は、例えば、パーソナルコンピュータ、ワークステーション、メインフレームコンピュータなどである。情報処理装置２０ではオペレーティングシステムが動作している。オペレーティングシステム上ではアプリケーションソフトウエアが動作している。アプリケーションソフトウエアは、例えば、銀行の自動預金預け払いシステムや航空機の座席予約システムの機能を提供する。
【００１４】
管理端末９０は、ディスクアレイ装置１０やハードディスクドライブ８０を保守・管理するためのコンピュータであり、ＬＡＮを介してディスクアレイ装置１０に接続されている。ＬＡＮは、例えばＴＣＰ／ＩＰ等のプロトコルに従って通信が行われ、ディスクアレイ装置１０と管理端末９０とを接続するネットワークである。なお、管理端末９０は、必ずしもＬＡＮのような通信手段で行われる必要はなく、ＳＣＳＩ（Small Computer Systems Interface）規格の通信線やバスライン、ピアツーピア（Peer to Peer）等で接続されていてもよい。また、管理端末９０はディスクアレイ装置に内蔵される形態とすることもできる。
【００１５】
図１に示すように、ディスクアレイ装置１０には、ＳＡＮ３０を介して情報処理装置２０が接続されている。情報処理装置２０は、例えば、パーソナルコンピュータ、ワークステーション、メインフレームコンピュータなどである。
【００１６】
ディスクアレイ装置１０は、基本筐体１１と１つ又は複数の増設筐体１２を備えている。本実施の形態においては、基本筐体１１は、コントローラ１３、ハードディスクドライブ８０などを備えている。コントローラ１３は、ホストインタフェース４０、ディスクインタフェース５０、ＣＰＵ１４、メモリ１５、計時機構１６、キャッシュメモリ６０、及びデータコントローラ１７などを備えている。また、増設筐体１２は、ハードディスクドライブ８０などを備えている。基本筐体及び増設筐体のハードディスクドライブ８０は、通信経路８１により、ディスクインタフェース５０と通信可能に接続されている。なお、ディスクインタフェース５０とハードディスクドライブ８０との接続形態の詳細については後述する。
【００１７】
ホストインタフェース４０は情報処理装置２０との間で通信を行うインタフェースである。ホストインタフェース４０は、ファイバチャネルプロトコルに従ってブロックアクセス要求を受け付ける機能を有する。  
ディスクインタフェース５０は、ＣＰＵ１４からの指示により、ハードディスクドライブ８０との間でデータのやりとりを行うインタフェースである。ディスクインタフェース５０は、ハードディスクドライブ８０を制御するコマンドなどを規定するプロトコルに従ってハードディスクドライブ８０に対するデータ入出力要求を送信する機能を備える。
【００１８】
ＣＰＵ１４は、ディスクアレイ装置１０の全体の制御を司るもので、メモリ１５に格納されたマイクロプログラムを実行することにより、ホストインタフェース４０、ディスクインタフェース５０、及びデータコントローラ１７等の制御を行う。また、メモリ１５には、マイクロプログラム以外にも、後述するＲＡＩＤグループ管理テーブル３０１等が記憶されている。
【００１９】
キャッシュメモリ６０は、ホストインタフェース４０とディスクインタフェース５０との間で授受されるデータを一時的に記憶するために用いられる。  
計時機構１６は、時間を計測することができる回路である。また、計時機構１６は回路等のハードウェアではなく、メモリ１５に格納されるマイクロプログラムにより実現されるものとしてもよい。  
データコントローラ１７は、ＣＰＵ１４の制御によりホストインタフェース４０とキャッシュメモリ６０との間、あるいはキャッシュメモリ６０とディスクインタフェース５０との間でのデータの転送を行うものである。
【００２０】
コントローラ１３は、ハードディスクドライブ８０をいわゆるＲＡＩＤ（Redundant Array of Inexpensive Disks）方式に規定されるＲＡＩＤレベル（例えば、０，１，５）で制御する機能を備えている。ＲＡＩＤ方式においては、複数のハードディスクドライブ８０が１つのグループ（以後、ＲＡＩＤグループと称する）として管理されている。ＲＡＩＤグループ８２上には、情報処理装置２０からのアクセス単位である論理ボリューム８３が形成されており、各論理ボリューム８３にはＬＵＮ（Logical Unit Number）と呼ばれる識別子が付与されている。
【００２１】
また、ディスクアレイ装置１０は、１つ又は複数のハードディスクドライブ８０を、ＲＡＩＤグループ８２を構成するハードディスクドライブ８０に障害が発生した場合の代替装置であるスペアドライブ８５として備えていることもある。
【００２２】
なお、ディスクアレイ装置は、以上に説明した構成のもの以外にも、例えば、ＮＦＳ（Network File System）などのプロトコルにより情報処理装置２０からファイル名指定によるデータ入出力要求を受け付けるように構成されたＮＡＳ（Network Attached Storage）として機能するものなどであってもよい。
【００２３】
ハードディスクドライブ８０は、例えば、ＦＣ（Fibre Channel）やシリアルＡＴＡ（Serial AT Attachment）などのインタフェース規格により通信可能なハードディスク装置である。ハードディスクドライブ８０は、複数枚の磁気ディスクを備え、磁気ディスク上にヘッドがアクセスすることによりデータの読み書きを行う。
【００２４】
ヘッドの動作方式としては、ＣＳＳ（Contact Start Stop）方式やロード／アンロード（Load/Unload）方式などがある。ＣＳＳ方式では、磁気ディスクが回転していない時は、ヘッドは磁気ディスクの最内周部に着地しており、磁気ディスクが回転すると、回転により生じる風圧により磁気ディスクの表面にヘッドが浮上する。ロード／アンロード方式では、磁気ディスクが回転していない時は、ヘッドが磁気ディスクの外側に待避（アンロード）され、磁気ディスクが回転すると、ヘッドが磁気ディスク上に移動（ロード）される。
【００２５】
また、ハードディスクドライブ８０は、電力消費量の異なる複数の動作モードを備えている。これら複数の動作モードは、ハードディスクドライブ８０のスピンドルの回転を制御すること等により実現されている。例えば、ハードディスクドライブ８０のインタフェース規格がシリアルＡＴＡの場合であれば、アクティブ、アイドル、スタンバイ、及びスリープの４つの動作モードが備えられている。これら４つのモードでは、前述の順に消費電力が大きく、データ入出力要求などのアクセス要求に対する応答が速い。したがって、ハードディスクドライブ８０に対してアクセス要求が無い場合であれば、スタンバイやスリープなどの節電モードとすることにより、ハードディスクドライブ８０における消費電力を減らすことができる。
【００２６】
なお、ハードディスクドライブ８０はディスクアレイ装置１０と一体型とすることもできるし、別体とすることもできる。ハードディスクドライブ８０により提供される記憶領域は、前述した論理ボリューム８３を単位として管理されている。ハードディスクドライブ８０へのデータの書き込みや読み出しは、論理ボリューム８３に付与される識別子であるＬＵＮ（Logical Unit Number）を指定して行なうことができる。
【００２７】
通信経路８１は、例えばＦＣ−ＡＬ（Fibre Channel Arbitrated Loop）などであり、ディスクインタフェース５０とハードディスクドライブ８０とを通信可能に接続する。なお、ディスクインタフェース５０とハードディスクドライブ８０とをＦＣ−ＡＬハブを介して通信可能に接続することとしてもよいし、ファイバチャネルケーブルなどを直接接続することとしてもよい。
【００２８】
図２は、第一の実施の形態に係るコントローラ１３が備える機能を示すブロック図である。コントローラ１３は、アクセス時刻記憶部２０１、節電モード実行部２０２、通信経路選択部２０３、読み出し要求応答部２０４、節電モード解除部２０５、スペアドライブ記憶部２０６、書き込み要求応答部２０７、位置情報記憶部２０８を備えている。各部２０１〜２０８は、コントローラ１３のＣＰＵ１４がメモリ１５に格納されているプログラムを実行することにより実現される。
【００２９】
図３は、メモリ１５に記憶されているＲＡＩＤグループ管理テーブル３０１及び節電待ち時間３０２を示す図である。
【００３０】
ＲＡＩＤグループ管理テーブル３０１には、「設定ＲＡＩＤ」、「管理ＬＵＮ」、「アクセス時刻」、「実装位置（ドライブ番号）」、「通信経路番号」、及び「節電開始時刻」の欄がある。「設定ＲＡＩＤ」の欄には、ＲＡＩＤグループを表す番号が設定されている。「管理ＬＵＮ」の欄には、ＲＡＩＤグループ内に設定されている全ての論理ボリューム８３のＬＵＮが設定されている。「アクセス時刻」の欄には、ＲＡＩＤグループ８２内のいずれかの論理ボリューム８３に対して情報処理装置２０からアクセスがあった最後の時刻が記憶されている。ホストインタフェース４０が情報処理装置２０からアクセス要求を受信すると、アクセス時刻記憶部２０１は計時機構１６から現在時刻を取得して「アクセス時刻」に設定する。「実装位置」の欄には、ＲＡＩＤグループ８２において節電モードとなっている全てのハードディスクドライブ８０の実装されている位置が設定されている。「通信経路番号」の欄には、ＲＡＩＤグループ８２において節電モードとなっている全てのハードディスクドライブ８０が接続されている通信経路８１を示す番号が設定されている。「節電開始時刻」の欄には、ＲＡＩＤグループ８２においてハードディスクドライブ８０が節電モードとなった時刻が設定されている。節電モード実行部２０２は、後述する節電処理においてハードディスクドライブ８０を節電モードとする際に、「実装位置」、「通信経路番号」、及び「節電開始時刻」の節電情報の設定を行う。
【００３１】
節電待ち時間３０２には、ハードディスクドライブ８０が節電モードとなるまでの時間が設定されている。つまり、情報処理装置２０から、ＲＡＩＤグループ８２内のいずれかの論理ボリューム８０へのアクセスが、節電待ち時間３０２に設定されている時間無い場合は、当該ＲＡＩＤグループ８２において、後述する手順に従ってハードディスクドライブ８０が節電モードとされる。なお、節電待ち時間３０２は管理端末９０より設定される。
【００３２】
＝＝節電処理の流れ＝＝
図４は、第一の実施の形態に係る節電処理を示すフローチャートである。なお、節電処理はＲＡＩＤグループ８２単位に実行される。
【００３３】
節電モード実行部２０２は、対象としているＲＡＩＤグループ８２について、ＲＡＩＤグループ管理テーブル３０１に登録されているアクセス時刻と現在時刻との差が節電待ち時間を超過していないか監視している（Ｓ４０１）。節電待ち時間を超過している場合、節電モード実行部２０２は、当該ＲＡＩＤグループ８２が冗長性のあるＲＡＩＤ構成であるかを確認する（Ｓ４０２）。
【００３４】
冗長性のあるＲＡＩＤ構成とは、ＲＡＩＤグループ８２を構成する複数のハードディスクドライブ８０において、１つ又は複数のハードディスクドライブ８０に障害が発生した場合においてもデータの読み出しを正常に行える構成となっていることである。例えば、ＲＡＩＤ５の場合であれば、ＲＡＩＤグループ８２を構成する複数のハードディスクドライブ８０のうちの、１つのハードディスクドライブ８２に障害が発生した場合であれば、障害が発生していない残りのハードディスクドライブ８２を用いて障害が発生したハードディスクドライブ８２に記憶されているデータを復元することができる。ただし、ＲＡＩＤ０においては、ＲＡＩＤグループ８２を構成する複数のハードディスクドライブ８０のうちの１つのハードディスクドライブ８０で障害が発生すると、正しくデータを読み出すことができない。そのため、ＲＡＩＤ０においては、冗長性が無いということになる。
【００３５】
節電待ち時間を超過したＲＡＩＤグループ８２のＲＡＩＤ構成に冗長性が無い場合、節電モード実行部２０２は、ハードディスクドライブ８０の動作モードを変更することなく処理を終了する。
【００３６】
節電待ち時間を超過したＲＡＩＤグループ８２のＲＡＩＤ構成に冗長性がある場合、節電モード実行部２０２は、この冗長性に応じた数のハードディスクドライブ８０を節電モードとする処理を開始する。なお、冗長性に応じた数とは、この数のハードディスクドライブ８０を用いなくても、残りのハードディスクドライブ８０を用いてデータの読み出しを正しく行うことができる最大の数である。節電モードとすることが可能なハードディスクドライブ８０の候補が複数ある場合は、通信経路選択部２０３は、どの通信経路８１に接続されているハードディスクドライブ８０を節電モードとするかを選択する（Ｓ４０３）。この際に、通信経路選択部２０３は、ＲＡＩＤグループ管理テーブル３０１に記憶されている節電モードとなっているハードディスクドライブ８０の通信経路番号を参照し、各通信経路８１に接続されている節電モードとなっているハードディスクドライブ８０の数が最も少ない通信経路８１を選択する。節電モード実行部２０２は、選択された通信経路８１に接続されている冗長性に応じた数のハードディスクドライブ８０の動作モードを節電モードに変更する（Ｓ４０４）。節電モード実行部２０２は、節電モードとしたハードディスクドライブ８０の実装位置と通信経路番号、及び節電モードとした時刻をＲＡＩＤグループ管理テーブルに登録する（Ｓ４０５）。
【００３７】
なお、ハードディスクドライブ８０を節電モードにすることは、ハードディスクドライブ８０のスピンドルの回転を停止したり、動作モードをアクティブからアイドル、スタンバイ、スリープ等の状態に遷移すること等により実現される。
【００３８】
＝＝ＲＥＡＤ処理の流れ＝＝
図５は、情報処理装置２０からデータの読み出し要求を受信した際の、処理の流れを示すフローチャートである。
【００３９】
ホストインタフェース４０が情報処理装置２０からデータの読み出し要求を受信すると（Ｓ５０１）、読み出し要求応答部２０４は、読み出し要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっているかどうかを確認する（Ｓ５０２）。
【００４０】
節電モードとなっていない場合、読み出し要求応答部２０４は、要求のあったデータをハードディスクドライブ８０から読み出し（Ｓ５０３）、読み出したデータを情報処理装置２０に送信する。アクセス時刻記憶部２０１は、ＲＡＩＤグループ管理テーブル３０１のアクセス時刻に計時機構１６より取得される現在時刻を登録し（Ｓ５０４）、処理を終了する。
【００４１】
次に、読み出し要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっている場合の処理について説明する。読み出し要求応答部２０４は、ＲＡＩＤの冗長性を利用して節電モードとなっていないハードディスクドライブ８０からデータを読みだす（Ｓ５０５）。読み出し要求応答部２０４は、読み出したデータを情報処理装置２０に送信する。そして、節電モード解除部２０５は、節電モードとなっているハードディスクドライブ８０の節電モードを解除する（Ｓ５０６）。アクセス時刻記憶部２０１は、ＲＡＩＤグループ管理テーブル３０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する。節電モード解除部２０５は、節電情報である実装位置、通信経路番号、及び節電開始時刻を削除する（Ｓ５０７）。そして、節電モード解除部２０５は、当該読み出し要求のあったＲＡＩＤグループ８２について、節電処理を開始する（Ｓ５０８）。
【００４２】
なお、ハードディスクドライブ８０の節電モードを解除することは、停止していたスピンドルの回転を再開することや、動作モードをアクティブの状態に遷移すること等により実現される。
【００４３】
＝＝ＷＲＩＴＥ処理の流れ＝＝
図６は、情報処理装置２０からデータの書き込み要求を受信した際の、処理の流れを示すフローチャートである。
【００４４】
ホストインタフェース４０が情報処理装置２０からデータの書き込み要求を受信すると（Ｓ６０１）、書き込み要求応答部２０７は、書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっているかどうかを確認する（Ｓ６０２）。
【００４５】
節電モードとなっていない場合、書き込み要求応答部２０７は、論理ボリューム８３を構成するハードディスクドライブ８０にデータを書き込むＷＲＩＴＥ処理を実行し（Ｓ６０３）、情報処理装置２０に書き込み処理の完了を通知する。アクセス時刻記憶部２０１は、ＲＡＩＤグループ管理テーブル３０１のアクセス時刻に計時機構１６より取得される現在時刻を登録し（Ｓ６０４）、処理を終了する。
【００４６】
次に、書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっている場合の処理について説明する。ここで、図４の節電処理において、節電モード実行部２０２がハードディスクドライブ８０を節電モードとする（Ｓ４０４）前に、スペアドライブ記憶部２０６が当該ハードディスクドライブ８０に記憶されているデータの複製をスペアドライブ８５に記憶しているものとする。  
書き込み要求応答部２０７は、論理ボリューム８３を構成する節電モードとなっていないハードディスクドライブ８０と当該スペアドライブ８５とにデータを書き込むＷＲＩＴＥ処理を実行し（Ｓ６０５）、情報処理装置２０に書き込み処理の完了を通知する。
【００４７】
節電モード解除部２０５は、節電モードとなっているハードディスクドライブ８０の節電モードを解除する（Ｓ６０６）。節電モード解除部２０５は、スペアドライブ８５に記憶されているデータの複製を節電モードが解除されたハードディスクドライブ８０に復元する（Ｓ６０７）。なお、書き込み要求応答部２０７がスペアドライブ８５に書き込んだデータの位置情報を、位置情報記憶部２０８がキャッシュメモリ６０に記憶しておくようにすることもできる。この場合、節電モード解除部２０５は、スペアドライブ８５からハードディスクドライブ８０にデータを復元する（Ｓ６０７）際に、キャッシュメモリ６０に記憶されている位置情報で示されるデータのみをハードディスクドライブ８０に復元することが可能となる。アクセス時刻記憶部２０１は、ＲＡＩＤグループ管理テーブル３０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する。節電モード解除部２０５は、節電情報を削除する（Ｓ６０８）。そして、節電モード解除部２０５は、当該書き込み要求のあったＲＡＩＤグループ８２について、節電処理を開始する（Ｓ６０９）。
【００４８】
図６では、節電モードとなっているハードディスクドライブ８０に対する書き込み要求があった場合にスペアドライブ８５を用いる方法を説明したが、スペアドライブ８５を用いない方法もある。その方法を図７のフローチャートにて説明する。
【００４９】
図７のＳ７０１〜Ｓ７０４の処理は図６のＳ６０１〜Ｓ６０４の処理と同じである。書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっている場合の処理について説明する。
【００５０】
書き込み要求応答部２０７は、論理ボリューム８３を構成する節電モードとなっていないハードディスクドライブ８０にデータを書き込むＷＲＩＴＥ処理を実行し（Ｓ７０５）、情報処理装置２０に書き込み処理の完了を通知する。
【００５１】
節電モード解除部２０５は、節電モードとなっているハードディスクドライブ８０の節電モードを解除する（Ｓ７０６）。節電モード解除部２０５は、節電モードとなっていなかったハードディスクドライブ８０に記憶されているデータから節電モードとなっていたハードディスクドライブ８０に記憶されるデータを生成し、生成されたデータを節電モードが解除されたハードディスクドライブ８０に復元する（Ｓ７０７）。
【００５２】
なお、ハードディスクドライブ８０が節電モード中に書き込まれる予定であったデータの位置情報を、位置情報記憶部２０８がキャッシュメモリ６０に記憶しておくようにすることもできる。この場合、節電モード解除部２０５は、節電モードとなっていなかったハードディスクドライブ８０からデータを復元する（Ｓ７０７）際に、キャッシュメモリ６０に記憶されている位置情報で示されるデータのみをハードディスクドライブ８０に復元することが可能となる。アクセス時刻記憶部２０１は、ＲＡＩＤグループ管理テーブル３０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する。節電モード解除部２０５は、節電情報を削除する（Ｓ７０８）。そして、節電モード解除部２０５は、当該書き込み要求のあったＲＡＩＤグループ８２について、節電処理を開始する（Ｓ７０９）。
【００５３】
以上、節電処理、ＲＥＡＤ処理、及びＷＲＩＴＥ処理の説明を行った。
【００５４】
前述の節電処理においては、ＲＡＩＤグループ８２に形成されている論理ボリューム８３に対するデータの読み書き要求などのアクセス要求が所定の時間無い場合に、ＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブ８０を節電モードとしている。これにより、情報処理装置２０からハードディスクドライブ８０へのアクセス性能を大幅に損うことなく節電の効果を得ることができる。
【００５５】
また、前述のＲＥＡＤ処理においては、節電モードとなっていないハードディスクドライブ８０を用いてデータの読み出しを行い、その後で、節電モードとなっているハードディスクドライブ８０の節電モードを解除している。このように、アクセス要求への応答に続いてハードディスクドライブ８０の節電モードを解除することにより、その後に続く読み出し要求又は書き込み要求に伴う処理を迅速に行うことができる。
【００５６】
また、図６に示したＷＲＩＴＥ処理においては、節電モードとなっているハードディスクドライブ８０に書き込まれるデータをスペアドライブ８５に書き込むことにより、情報処理装置２０に対して書き込みが完了した旨の応答を行っている。その後で、節電モードとなっているハードディスクドライブ８０の節電モードを解除し、スペアドライブ８５に記憶されているデータを当該ハードディスクドライブ８０に書き込んでいる。これにより、情報処理装置２０は節電モードとなっているハードディスクドライブ８０の節電モードが解除されるのを待たずにデータの書き込み処理を完了させることができるため、情報処理装置２０からハードディスクドライブ８０へのアクセス性能の低下を抑制することができる。なお、スペアドライブ８５に書き込まれたデータの位置情報を記憶しておくことにより、ハードディスクドライブ８０が節電モードとなっていた間にスペアドライブ８５に書き込まれたデータのみをハードディスクドライブ８０に復元することが可能である。これにより、ハードディスクドライブ８０の節電モードを解除した際の、ハードディスクドライブ８０の復元時間を短縮することができる。
【００５７】
また、図７に示したＷＲＩＴＥ処理においては、ＲＡＩＤグループ８２のうちの節電モードとなっていないハードディスクドライブ８０のみにデータを書き込むことにより、情報処理装置２０に対して書き込みが完了した旨の通知を行っている。その後で、節電モードとなっているハードディスクドライブ８０の節電モードを解除し、ＲＡＩＤの冗長性を利用して節電モードが解除されたハードディスクドライブ８０にデータを復元している。これにより、図６のＷＲＩＴＥ処理と同様に、情報処理装置２０は節電モードとなっているハードディスクドライブ８０の節電モードが解除されるのを待たずにデータの書き込み処理を完了させることができる。そのため、情報処理装置２０からハードディスクドライブ８０へのアクセス性能の低下を抑制することができる。なお、ハードディスクドライブ８０が節電モード中に、当該ハードディスクドライブ８０に書き込まれる予定であったデータの位置情報を記憶しておくこともできる。そのため、ハードディスクドライブ８０が節電モードとなっていた間にＲＡＩＤグループ８２の他のハードディスクドライブ８０に書き込まれたデータのみから節電モードとなっていたハードディスクドライブ８０のデータを復元することができる。これにより、ハードディスクドライブ８０の節電モードを解除した際の、ハードディスクドライブ８０の復元時間を短縮することができる。
【００５８】
また、節電モードとするハードディスクドライブ８０の選択の際には、通信経路選択部２０３が通信経路８１に接続されている節電モードとなっているハードディスクドライブ８０の数が最も少ない通信経路８１を選択している。そのため、各通信経路８１の節電モードとなっているハードディスクドライブの数が均等化される。これにより、各通信経路８１においてデータのトラフィックに極端な偏りが生じて通信経路８１ごとのアクセス性能に著しい差が発生することを防ぐことが可能となる。
【００５９】
＝＝第二の実施形態＝＝
次に、本発明の第二の実施形態について説明する。第二の実施形態におけるディスクアレイ装置を含むハードウェア構成は、第一の実施形態において説明した図１により示されるブロック図と同様である。第二の実施形態においては、ディスクアレイ装置１０は第一のハードディスクドライブであるインタフェース規格がファイバチャネルのハードディスクドライブ８０と、第二のハードディスクドライブであるインタフェース規格がシリアルＡＴＡのハードディスクドライブ８０とを有している。なお、第二のハードディスクドライブの寿命が第一のハードディスクドライブの寿命よりも短いものであれば、インタフェース規格は前述のものに限られない。
【００６０】
まず、ディスクインタフェース５０とハードディスクドライブ８０との間の接続形態について説明する。
【００６１】
図８は、ハードディスクドライブ８０のインタフェース規格がファイバチャネルの場合の接続形態を示す図である。通信経路８１が、ＦＣ−ＡＬである場合、複数のＰＢＣ（Port Bypass Circuit）８０１が設けられている。ＰＢＣ８０１は、ディスクインタフェース５０とインタフェース規格がファイバチャネルのハードディスクドライブ８０を接続する機能を提供する。また、ＰＢＣ８０１は、障害が発生しているハードディスクドライブ８０をＦＣ−ＡＬから切り離し、ディスクインタフェース５０と他のハードディスクドライブ８０との間を通信可能とする機能を備えている。
【００６２】
図９は、ハードディスクドライブ８０のインタフェース規格がシリアルＡＴＡ規格等のファイバチャネル以外である場合の接続形態の一例を示す図である。インタフェース規格のハードディスクドライブ８０をそのままＦＣ−ＡＬに接続することができないため、コンバータ９０１を用いる。コンバータ９０１は、ファイバチャネルとシリアルＡＴＡのインタフェース規格における、データや信号を変換する回路である。図９の例においては、コンバータ９０１は、基本筐体１１又は増設筐体１２における全てのハードディスクドライブ８０に対してファイバチャネルとシリアルＡＴＡとの変換を行うよう配設されている。そのため、当該コンバータ９０１が配設されている筐体においては全てのハードディスクドライブ８０がシリアルＡＴＡのインタフェース規格であることとなる。
【００６３】
図１０は、増設筐体１２にコンバータ９０１を図９のように配設する場合における、ＲＡＩＤグループ８２の構成例を示す図である。基本筐体１１には、ファイバチャネルのハードディスクドライブ８０により構成されるＲＡＩＤグループ１００１，１００２が形成されている。増設筐体１２には、コンバータ９０１が配設されているため、シリアルＡＴＡのハードディスクドライブ８０により構成されるＲＡＩＤグループ１００３，１００４が形成されている。
【００６４】
図１１は、シリアルＡＴＡ規格等のファイバチャネル規格以外のハードディスクドライブ８０を接続する、もう一つの例を示す図である。ＦＣ−ＡＬには、図８と同様に複数のＰＢＣ８０１が接続されている。シリアルＡＴＡのハードディスクドライブ１１０１は、コンバータ９０１を備え、コンバータ９０１がＰＢＣ８０１と接続されている。これにより、シリアルＡＴＡのハードディスクドライブ１１０１は、ディスクインタフェース５０との間でデータや信号をやりとりすることができる。また、この接続形態においては、ファイバチャネル規格のハードディスクドライブ１１０２を接続することも可能となる。
【００６５】
図１２は、コンバータ９０１を図１１のように配設する場合における、ＲＡＩＤグループ８２の構成例を示す図である。基本筐体１１においては、ＲＡＩＤグループ１２０１，１２０２が形成されており、ＲＡＩＤグループ１２０１は全てファイバチャネルのハードディスクドライブ８０、ＲＡＩＤグループ１２０２は全てシリアルＡＴＡのハードディスクドライブ８０となっている。また、増設筐体１２においては、ＲＡＩＤグループ１２０３，１２０４が形成されており、いずれもファイバチャネルのハードディスクドライブ８０とシリアルＡＴＡのハードディスクドライブ８０との混成により構成されている。このように、コンバータ９０１を図１１のように配設する場合、一つの筐体内、また、一つのＲＡＩＤグループ８２内において、ファイバチャネルのハードディスクドライブ８０とシリアルＡＴＡのハードディスクドライブ８０とを混在させることが可能となる。
【００６６】
図１３は、第二の実施形態に係るコントローラ１３が備える機能を示すブロック図である。コントローラ１３は、アクセス時刻記憶部１３０１、節電モード実行部１３０２、節電開始時刻記憶部１３０３、節電モード解除部１３０４、連続稼働時間記憶部１３０５、一括スペア実行部１３０６、累積稼働時間記憶部１３０７、ロード時刻記憶部１３０８、アンロード実行部１３０９、エラー回数記憶部１３１０、ダイナミックスペア実行部１３１１、読み出し要求応答部１３１２、スペアドライブ記憶部１３１３、書き込み要求応答部１３１４、位置情報記憶部１３１５、上限チェック部１３１６を備えている。各部１３０１〜１３１６は、コントローラ１３のＣＰＵ１４がメモリ１５に格納されているプログラムを実行することにより実現される。
【００６７】
連続稼働時間記憶部１３０５は、ＲＡＩＤグループ８２ごとの連続稼働時間をＲＡＩＤグループ管理テーブル１４０１に記憶する。ＲＡＩＤグループ８２ごとの連続稼働時間とは、ＲＡＩＤグループ８２に属するハードディスクドライブ８０が節電モードとならずに連続して稼働している時間である。
【００６８】
累積稼働時間記憶部１３０７は、ハードディスクドライブ８０ごとの累積稼働時間をハードディスクドライブ管理テーブル１４０２に記憶する。ハードディスクドライブ８０ごとの累積稼働時間とは、ハードディスクドライブ８０が節電モードとならずに稼働している時間の累積である。
【００６９】
ロード時刻記憶部１３０８は、ハードディスクドライブ８０のヘッドの動作方式がロード／アンロード方式である場合に、ヘッドを磁気ディスク上にロードする際に計時機構１６より現在時刻を取得してハードディスクドライブ管理テーブル１４０２に記憶する。
【００７０】
エラー回数記憶部１３１０は、ハードディスクドライブ８０において発生したエラーの回数を、ハードディスクドライブ８０ごとにハードディスクドライブ管理テーブル１４０２に記憶する。
【００７１】
図１４は、メモリ１５に記憶されているＲＡＩＤグループ管理テーブル１４０１、ハードディスクドライブ管理テーブル１４０２、節電管理テーブル１４０３、スペア管理テーブル１４０４、アンロード待ち時間１４０５、上限管理テーブル１４０６、及びエラー管理テーブル１４０７を示す図である。
【００７２】
ＲＡＩＤグループ管理テーブル１４０１は、第一の実施形態と同様に「設定ＲＡＩＤ」、「管理ＬＵＮ」、「節電開始時刻」、及び「アクセス時刻」の欄を備えている。これらの欄に設定される内容は、第一の実施形態と同じである。
【００７３】
ＲＡＩＤグループ管理テーブル１４０１は、さらに、「ドライブタイプ」、「利用形態」、及び「連続稼働時間」の欄を備えている。「ドライブタイプ」の欄には、ＲＡＩＤグループ８２を構成するハードディスクドライブ８０のインタフェース規格の情報が設定されている。本実施の形態においては、ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０のインタフェース規格がファイバチャネルの場合は「ＦＣ」、ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０のインタフェース規格がシリアルＡＴＡの場合は「ＳＡＴＡ」と設定されている。また、図１２のように、ＲＡＩＤグループ８２に属するハードディスクドライブ８０のインタフェースが、ファイバチャネルとシリアルＡＴＡとの混在である場合は、「混在」と設定されている。
【００７４】
「利用形態」の欄にはＲＡＩＤグループ８２ごとの利用形態が設定されている。利用形態とは、ＲＡＩＤグループ８２が基幹業務等のアクセス性能が非常に重要となる処理において利用されているか、またはバックアップ処理等のアクセス性能の低下が重大な問題とならないような処理において利用されているかを示すものである。本実施の形態においては、基幹業務等における利用形態を「オンライン」、バックアップ処理等における利用形態を「ニアライン」と表す。
【００７５】
ハードディスクドライブ管理テーブル１４０２は、ハードディスクドライブ８０ごとの情報を管理するものであり、「設定ＲＡＩＤ」、「ドライブ番号」、「ロード時刻」、「累積稼働時間」、「アンロード回数」、及び「エラー回数」の欄を備えている。「設定ＲＡＩＤ」の欄には、ハードディスクドライブ８０が属するＲＡＩＤグループ８２が設定されている。「ドライブ番号」の欄には、そのハードディスクドライブ８０を示す番号が設定されている。「ロード時刻」の欄には、ロード時刻記憶部１３０８により登録される、磁気ディスク上にヘッドがロードされた時刻が設定されている。「累積稼働時間」の欄には、累積稼働時間記憶部１３０７により登録されるハードディスクドライブ８０ごとの累積稼働時間が設定されている。「アンロード回数」の欄には、ハードディスクドライブ８０において、ヘッドがアンロードされた回数が記憶されている。「エラー回数」の欄には、エラー回数記憶部１３１０により登録される、ハードディスクドライブ８０における書き込みエラー等のエラー回数が記憶されている。
【００７６】
節電管理テーブル１４０３は、「節電待ち時間」と「節電時間」の欄を備えている。「節電待ち時間」の欄には、第一の実施形態と同様に、ハードディスクドライブ８０が節電モードとなるまでの時間が設定されている。「節電時間」の欄には、節電モードとなっているハードディスクドライブ８０の節電モードを解除するまでの時間が設定されている。
【００７７】
スペア管理テーブル１４０４は、「スペア待ち時間」と「スペア時間」の欄を備えている。「スペア待ち時間」の欄には、ＲＡＩＤグループ８２単位でハードディスクドライブ８０に記憶されているデータをスペアドライブ８５にコピーし、当該ＲＡＩＤグループ８２の全てのハードディスクドライブ８０を節電モードとするまでの待ち時間が設定されている。「スペア時間」の欄には、スペアドライブ８５を用いることにより節電モードとなっているハードディスクドライブ８０の節電モードを解除するまでの時間が設定されている。
【００７８】
アンロード待ち時間１４０５には、ハードディスクドライブ８０の磁気ディスク上にヘッドがロードされたロード時刻からヘッドをアンロードするまでの待ち時間が設定されている。上限管理テーブル１４０６は、「上限稼働時間」及び「上限アンロード回数」の欄を備えている。ハードディスクドライブ管理テーブル１４０２に記憶されている、ハードディスクドライブ８０ごとの累積稼働時間またはアンロード回数が、上限管理テーブル１４０６に設定されている上限稼働時間または上限アンロード回数を超えると、当該ハードディスクドライブ８０の交換要求が管理端末９０に送信される。
【００７９】
エラー管理テーブル１４０７は、「稼働時間」及び「上限エラー回数」の欄を備えている。「稼働時間」の欄には、ハードディスクドライブ８０における累積稼働時間の範囲が設定されており、「上限エラー回数」の欄には、稼働時間に応じたエラー回数の上限値が設定されている。ハードディスクドライブ８０のエラー回数が、エラー管理テーブル１４０７に設定されている稼働時間に応じた上限エラー回数を超えると、当該ハードディスクドライブ８０について後述するダイナミックスペア処理が行われる。
【００８０】
＝＝節電処理の流れ＝＝
図１５は、ＣＰＵ１４が実行する節電処理を示すフローチャートである。なお、節電処理はＲＡＩＤグループ８２単位に実行される。
【００８１】
節電モード実行部１３０２は、対象としているＲＡＩＤグループ８２について、ＲＡＩＤグループ管理テーブル１４０１に登録されているアクセス時刻と計時機構１６より取得される現在時刻との差が節電管理テーブル１４０３に設定されている節電待ち時間を超過していないか監視している（Ｓ１５０１）。節電待ち時間を超過している場合、節電モード実行部１３０２は、当該ＲＡＩＤグループ８２のドライブタイプが「ＦＣ」であるか、または利用形態が「オンライン」であるかを確認する（Ｓ１５０２）。
【００８２】
節電モード実行部１３０２は、ドライタイプが「ＦＣ」または利用形態が「オンライン」である場合、当該ＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブ８０を、ハードディスクドライブ管理テーブル１４０２を参照して累積稼働時間が長いものを優先して選択する（Ｓ１５０３）。節電モード実行部１３０２は、選択されたハードディスクドライブ８０を節電モードとする（Ｓ１５０４）。節電開始時刻記憶部１３０３は、計時機構１６より取得した現在時刻を節電開始時刻としてＲＡＩＤグループ管理テーブル１４０１に登録する（Ｓ１５０５）。節電モード解除部１３０４は、節電開始時刻と計時機構１６より取得される現在時刻との差が節電管理テーブル１４０３に設定されている節電時間を超過していないか監視している（Ｓ１５０６）。節電時間を超過すると、節電モード解除部１３０４は、節電モードとなっているハードディスクドライブ８０の節電モードを解除し（Ｓ１５０７）、ＲＡＩＤグループ管理テーブル１４０１の節電開始時刻を削除する（Ｓ１５０８）。ドライブタイプが「ＦＣ」または利用形態が「オンライン」である場合、累積稼働時間の長いハードディスクドライブ８０を選択し、節電モードとする一連の処理（Ｓ１５０３〜Ｓ１５０８）は繰り返し実行される。
【００８３】
ドライブタイプが「ＦＣ」以外で、利用形態が「ニアライン」の場合、節電モード実行部１３０２は、ＲＡＩＤグループ８２の冗長性によらず、任意の数のハードディスクドライブ８０を節電モードとする。本実施の形態においては、節電モード実行部１３０２は当該ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０を節電モードとする（Ｓ１５０９）。なお、節電モードとするハードディスクドライブ８０は、ＲＡＩＤグループに属する全てでなくてもよい。
【００８４】
＝＝ＲＥＡＤ処理の流れ＝＝
図１６は、情報処理装置２０からデータの読み出し要求を受信した際の処理の流れを示すフローチャートである。
【００８５】
ホストインタフェース４０が情報処理装置２０からデータの読み出し要求を受信すると（Ｓ１６０１）、読み出し要求応答部１３１２は、ＲＡＩＤグループ管理テーブル１４０１を参照し、読み出し要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっているかどうかを確認する（Ｓ１６０２）。節電モードとなっている場合、読み出し要求応答部１３１２は、節電モードとなっているＲＡＩＤグループ８２のドライブタイプが「ＦＣ」であるか、または利用形態が「オンライン」であるかを確認する（Ｓ１６０３）。
【００８６】
節電モードとなっていない場合、及び節電モードとなっているがドライブタイプが「ＦＣ」であるか又は利用形態が「オンライン」である場合、読み出し要求応答部１３１２は、節電モードとなっていないハードディスクドライブ８０からデータを読み出し（Ｓ１６０４）、情報処理装置２０にデータを送信する。そして、読み出し要求応答部１３１２は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録し（Ｓ１６０５）、処理を終了する。
【００８７】
次に、読み出し要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードであり、かつ、ドライブタイプが「ＦＣ」でなく利用形態が「オンライン」でない場合の処理について説明する。この場合、ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０が節電モードとなっている。そのため、読み出し要求応答部１３１２は、これらのハードディスクドライブ８０の節電モードを解除する（Ｓ１６０６）。そして、読み出し要求応答部１３１２は節電モードが解除されたハードディスクドライブ８０からデータを読み出し（Ｓ１６０７）、情報処理装置２０にデータを送信する。アクセス時刻記憶部１３０１は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する。読み出し要求応答部１３１２は、節電開始時刻を削除する（Ｓ１６０８）。そして、読み出し要求応答部１３１２は当該読み出し要求のあったＲＡＩＤグループについて、節電処理を開始する（Ｓ１６０９）。
【００８８】
＝＝ＷＲＩＴＥ処理の流れ＝＝
図１７は、情報処理装置２０からデータの書き込み要求を受信した際の処理の流れを示すフローチャートである。
【００８９】
ホストインタフェース４０が情報処理装置２０からデータの書き込み要求を受信すると（Ｓ１７０１）、書き込み要求応答部１３１４は、書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっているかどうかを確認する（Ｓ１７０２）。
【００９０】
節電モードとなっていない場合、書き込み要求応答部１３１４は、データを論理ボリューム８３を構成するハードディスクドライブ８０に書き込むＷＲＩＴＥ処理を実行し（Ｓ１７０３）、情報処理装置２０に書き込み処理の完了を通知する。アクセス時刻記憶部１３０１は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録し（Ｓ１７０４）、処理を終了する。
【００９１】
書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードとなっている場合の処理について説明する。書き込み要求応答部１３１４は、節電モードとなっているＲＡＩＤグループ８２のドライブタイプが「ＦＣ」であるか、または利用形態が「オンライン」であるかを確認する（Ｓ１７０５）。
【００９２】
まず、書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２のドライブタイプが「ＦＣ」でなく利用形態が「オンライン」でない場合の処理について説明する。書き込み要求応答部１３１４は、節電モードとなっているハードディスクドライブ８０の節電モードを解除する（Ｓ１７０６）。書き込み要求応答部１３１４は、節電モードが解除されたハードディスクドライブ８０を用いてＷＲＩＴＥ処理を実行し（Ｓ１７０７）、情報処理装置２０に書き込み処理の完了を通知する。アクセス時刻記憶部１３０１は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する。そして、書き込み要求応答部１３１４は、当該ＲＡＩＤグループ８２に対する節電処理を開始する（Ｓ１７０９）。
【００９３】
次に、書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２のドライブタイプが「ＦＣ」であるか又は利用形態が「オンライン」である場合の処理について説明する。ここで、図１５の節電処理において、節電モード実行部１３０２がＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブ８０を節電モードとする（Ｓ１５０４）前に、スペアドライブ記憶部１３１３が当該ハードディスクドライブ８０に記憶されているデータの複製をスペアドライブ８５に記憶しているものとする。書き込み要求応答部１３１４は、論理ボリューム８３を構成する節電モードとなっていないハードディスクドライブ８０と当該スペアドライブ８５とにデータを書き込むＷＲＩＴＥ処理を実行し（Ｓ１７１０）、情報処理装置２０に書き込み処理の完了を通知する。位置情報記憶部１３１５は、スペアドライブ８５に書き込まれたデータの位置情報をキャッシュメモリ６０に記憶する（Ｓ１７１１）。アクセス時刻記憶部１３０１は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する（Ｓ１７１２）。
【００９４】
このように、スペアドライブ８５が用いられる場合、図１５の節電処理で節電モードが解除される（Ｓ１５０７）際に、節電モード解除部１３０４は、スペアディスク８５に記憶されているデータをハードディスクドライブ８０に復元する。つまり、節電モード解除部１３０４はスペアディスク８５に記憶されているデータの複製を節電モードが解除されたハードディスクドライブ８０に復元する。この際、節電モード解除部１３０４は、キャッシュメモリ６０に記憶されている位置情報で示されるデータのみを復元することとしてもよい。これにより、ハードディスクドライブ８０へのデータの復元時間を短縮することが可能となる。
【００９５】
図１７では、スペアドライブ８５を用いる方法を説明したが、スペアドライブ８５を用いない方法もある。その方法を図１８のフローチャートにて説明する。
【００９６】
図１８のＳ１８０１〜Ｓ１８０９の処理は図１７のＳ１７０１〜Ｓ１７０９の処理と同じである。
【００９７】
書き込み要求の対象となっている論理ボリューム８３の属するＲＡＩＤグループ８２が節電モードであり、ドライブタイプが「ＦＣ」であるか又は利用形態が「オンライン」である場合の処理について説明する。
【００９８】
書き込み要求応答部１３１４は、論理ボリューム８３を構成する節電モードとなっていないハードディスクドライブ８０にデータを書き込むＷＲＩＴＥ処理を実行し（Ｓ１８１０）、情報処理装置２０に書き込み処理の完了を通知する。位置情報記憶部１３１５は、節電モードとなっているハードディスクドライブ８０に書き込まれる予定であったデータの位置情報をキャッシュメモリ６０に記憶する（Ｓ１８１１）。アクセス時刻記憶部１３０１は、ＲＡＩＤグループ管理テーブル１４０１のアクセス時刻に計時機構１６より取得される現在時刻を登録する（Ｓ１８１２）。
【００９９】
このように、ＲＡＩＤグループ８２の節電モードとなっていないハードディスクドライブ８０のみにデータが書き込まれる場合、図１５の節電処理で節電モードが解除される（Ｓ１５０７）際に、節電モード解除部１３０４は、ＲＡＩＤの冗長性を利用して節電モードとなっていたハードディスクドライブ８０にデータを復元する。つまり、節電モード解除部１３０４はＲＡＩＤグループの節電モードとなっていなかったハードディスクドライブ８０に記憶されているデータから節電モードとなっていたハードディスクドライブ８０のデータを生成する。そして、節電モード解除部１３０４は、生成されたデータを節電モードが解除されたハードディスクドライブ８０に記憶する。この際、節電モード解除部１３０４は、キャッシュメモリ６０に記憶されている位置情報で示されるデータのみを復元することとしてもよい。これにより、ハードディスクドライブ８０へのデータの復元時間を短縮することが可能となる。
【０１００】
以上、節電処理、ＲＥＡＤ処理、及びＷＲＩＴＥ処理の説明を行った。シリアルＡＴＡのハードディスクドライブ８０はファイバチャネルのハードディスクドライブ８０よりも信頼性が低く、また、寿命も短い。しかし、シリアルＡＴＡのハードディスクドライブ８０はファイバチャネルのハードディスクドライブ８０と比較して安価であるため、基幹業務以外における利用が急速に進んでいる。また、シリアルＡＴＡのハードディスクドライブ８０においては、稼働時間が寿命を大きく左右するため、稼働時間を抑制することにより耐用年数を延ばすことが可能である。そのため、前述した節電処理のように、シリアルＡＴＡのハードディスクドライブ８０においては、ファイバチャネルのハードディスクドライブ８０よりも多くの数のハードディスクドライブ８０を節電モードとすることにより、シリアルＡＴＡのハードディスクドライブ８０により構成されるディスクアレイ装置１０全体の寿命を延ばすことが可能となる。なお、インタフェース規格としてファイバチャネルとシリアルＡＴＡとを用いて説明したが、寿命が異なるものであれば、同様の効果を得ることができる。
【０１０１】
また、ファイバチャネルのハードディスクドライブ８０は、基幹業務のオンライン処理など、アクセス性能が重要となる業務に用いられていることが多い。そのため、ＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブ８０を節電モードとすることにより、アクセス性能を大幅に損なうことなく節電効果を得ることができる。また、シリアルＡＴＡのハードディスクドライブ８０は、基幹業務以外の業務など、アクセス性能の低下が大きな問題とならない業務に用いられることが多い。そのため、ＲＡＩＤグループ８２の冗長性によらず、例えばＲＡＩＤグループ８２を構成する全てのハードディスクドライブ８０を節電モードとすることにより、より大きな節電効果を得ることができる。
【０１０２】
また、ファイバチャネルのハードディスクドライブ８０とシリアルＡＴＡのハードディスクドライブ８０との混成により構成されるＲＡＩＤグループ８２が基幹業務の「オンライン」処理など、アクセス性能が重要となる業務に用いられる場合もある。この場合は、ＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブを節電モードとすることにより、アクセス性能を大幅に低下させずに節電効果を得ることができる。また、ＲＡＩＤグループ８２が基幹業務以外の処理、いわゆる「ニアライン」処理などのアクセス性能の低下が大きな問題とならない業務に用いられる場合もある。この場合は、ＲＡＩＤグループ８２の冗長性によらず、例えばＲＡＩＤグループ８２を構成する全てのハードディスクドライブ８０を節電モードとすることにより、より大きな節電効果を得ることができる。
【０１０３】
また、ＲＡＩＤグループ８２の冗長性に応じた数のハードディスクドライブ８０を節電モードとする場合においては、ＲＡＩＤグループ８２に属するハードディスクドライブ８０の中で、累積稼働時間が長いハードディスクドライブ８０を節電モードとしている。これにより、ＲＡＩＤグループ８２内におけるハードディスクドライブ８０の累積稼働時間のばらつきを抑え、ハードディスクドライブ８０の寿命を平準化することができる。また、ハードディスクドライブ８０が節電モードとなっている状態において、情報処理装置２０から当該ハードディスクドライブ８０が属するＲＡＩＤグループ８２に対する読み出し要求又は書き込み要求が無い状態が続く場合においては、当該ＲＡＩＤグループ８２内において、所定の時間ごとに節電モードとするハードディスクドライブ８０を変更している。これにより、ＲＡＩＤグループ８２内におけるハードディスクドライブ８０の累積稼働時間のばらつきを抑え、ハードディスクドライブ８０の寿命を平準化することができる。
【０１０４】
＝＝スペア処理の流れ＝＝
図１９は、スペアドライブ８５を用いてハードディスクドライブ８０をＲＡＩＤグループ単位で節電モードとする処理の流れを示すフローチャートである。
【０１０５】
一括スペア実行部１３０６は、ＲＡＩＤグループ管理テーブル１４０１を参照し、連続稼働時間がスペア管理テーブル１４０４に設定されているスペア待ち時間を超過しているＲＡＩＤグループ８２がないか監視している（Ｓ１９０１）。スペア待ち時間を超過しているＲＡＩＤグループ８２がある場合、一括スペア実行部１３０６は、当該ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０に記憶されているデータの複製をスペアドライブ８５に記憶する（Ｓ１９０２）。この状態において、情報処理装置２０から当該ＲＡＩＤグループに対する読み出し要求が生じた場合、読み出し要求応答部１３１２は、スペアドライブ８５を用いて読み出し要求に対する処理を実行する。同様に、情報処理装置２０から当該ＲＡＩＤグループに対する書き込み要求が生じた場合、書き込み要求応答部１３１４は、スペアドライブ８５を用いて書き込み要求に対する処理を実行する。
【０１０６】
一括スペア実行部１３０６は、当該ＲＡＩＤグループ８２に属する全てのハードディスクドライブ８０を節電モードとする（Ｓ１９０３）。一括スペア実行部１３０６は、計時機構１６より取得される現在時刻を節電開始時刻としてＲＡＩＤグループ管理テーブル１４０１に登録する（Ｓ１９０４）。そして、一括スペア実行部１３０６は、節電開始時刻と現在時刻との差がスペア管理テーブル１４０４に設定されているスペア時間を超過していないか監視する（Ｓ１９０５）。スペア時間を超過すると、一括スペア実行部１３０６は、当該ＲＡＩＤグループ８２の全てのハードディスクドライブ８０の節電モードを解除する（Ｓ１９０６）。そして、一括スペア実行部１３０６は、スペアドライブ８５に記憶されているデータの複製を当該ＲＡＩＤグループ８２のハードディスクドライブ８０に記憶する。一括スペア実行部１３０６は、ＲＡＩＤグループ管理テーブル１４０１の節電開始時刻を削除し（Ｓ１９０７）、スペア待ち時間を超過しているＲＡＩＤグループ８２の監視を再開する（Ｓ１９０１）。
【０１０７】
このように、アクセス要求の有無にかかわらず、一定時間ごとにＲＡＩＤグループ８２単位でスペアドライブ８５にデータをコピーした上でハードディスクドライブ８０を節電モードとすることにより、情報処理装置２０からのアクセス性能を低下させることなく、ハードディスクドライブ８０の寿命を延ばすことができる。
【０１０８】
＝＝アンロード処理の流れ＝＝
図２０は、ハードディスクドライブ８０のヘッドをアンロードする処理の流れを示すフローチャートである。
【０１０９】
アンロード実行部１３０９は、ハードディスクドライブ管理テーブル１４０２を参照し、ロード時刻と計時機構１６より取得される現在時刻との差がアンロード待ち時間１４０５に設定されている時間を超過しているハードディスクドライブ８０がないか監視している（Ｓ２００１）。アンロード待ち時間を超過しているハードディスクドライブ８０がある場合、アンロード実行部１３０９は、当該ハードディスクドライブ８０のヘッドをアンロードする（Ｓ２００２）。アンロード実行部１３０９は、当該ハードディスクドライブ８０について、ハードディスクドライブ管理テーブル１４０２のアンロード回数に１加算する（Ｓ２００３）。そして、アンロード実行部１３０９は、当該ハードディスクドライブ８０のヘッドを再度ロードする（Ｓ２００３）。ロード時刻記憶部１３０８は、ハードディスクドライブ管理テーブル１４０２のロード時刻に計時機構１６より取得される現在時刻を登録する（Ｓ２００４）。
【０１１０】
ハードディスクドライブ８０の動作状態においては、回転する磁気ディスク上に数十nm程の隙間をあけてデータの読み書きを行うヘッドが位置している。磁気ディスクの回転中は、ヘッドからの風圧により、磁気ディスク表面にある潤滑剤に溝が生じてしまう。そのため、ロード／アンロード方式のハードディスクドライブ８０の場合であれば、一定時間毎にヘッドをアンロードすることにより、磁気ディスク表面にある潤滑剤の凹凸を均し、外部からの衝撃等により磁気ディスクに障害が発生する可能性を減らすことができる。
【０１１１】
＝＝上限チェック処理の流れ＝＝
図２１は、ハードディスクドライブ８０の寿命を判定し、必要に応じて管理端末９０にハードディスクドライブ８０の交換要求を送信する処理の流れを示すフローチャートである。
【０１１２】
上限チェック部１３１６は、ハードディスクドライブ管理テーブル１４０２を参照し、累積稼働時間が上限管理テーブル１４０６に設定されている上限稼働時間を超えている、または、アンロード回数が上限管理テーブル１４０６に設定されている上限アンロード回数を超えているハードディスクドライブ８０がないか監視している（Ｓ２００１）。上限稼働時間または上限アンロード時間を超過しているハードディスクドライブ８０がある場合、上限チェック部１３１６は、当該ハードディスクドライブ８０が寿命であることを管理端末９０に送信する。
【０１１３】
このように、累積稼働時間やヘッドのアンロード回数をもとに、ハードディスクドライブ８０の寿命を判断し、管理端末９０等にハードディスクドライブ８０の交換要求を送信することにより、ハードディスクドライブ８０の障害を未然に防ぐことができる。これにより、ディスクアレイ装置１０全体における可用性を高めることができる。
【０１１４】
＝＝ダイナミックスペア処理の流れ＝＝
図２２は、ハードディスクドライブ８０において発生しているエラーの回数をもとに、ハードディスクドライブ８０をスペアドライブ８５にて代替する処理の流れを示すフローチャートである。
【０１１５】
ダイナミックスペア実行部１３１１は、ハードディスクドライブ管理テーブル１４０２を参照し、エラー回数がエラー管理テーブル１４０７に設定されている、累積稼働時間に応じた上限エラー回数を超過しているハードディスクドライブ８０がないか監視している（Ｓ２２０１）。上限エラー回数を超過しているハードディスクドライブ８０がある場合、ダイナミックスペア実行部１３１１は、当該ハードディスクドライブ８０に記憶されているデータの複製をスペアドライブ８５にコピーする（Ｓ２２０２）。
【０１１６】
この状態において、情報処理装置２０から当該ハードディスクドライブ８０を含んで構成される論理ボリューム８３に対する読み出し要求が生じた場合、読み出し要求応答部１３１２は、スペアドライブ８５を用いて読み出し要求に対する処理を実行する。同様に、情報処理装置２０から当該ハードディスクドライブ８０を含んで構成される論理ボリューム８３に対する書き込み要求が生じた場合、書き込み要求応答部１３１４は、スペアドライブ８５を用いて書き込み要求に対する処理を実行する。
【０１１７】
これにより、累積稼働時間ごとにエラーの上限値を設定し、当該上限値を超えた場合にスペアドライブ８５にデータをコピーすることができる。したがって、ハードディスクドライブ８０に障害が発生する前に、スペアドライブ８５を用いて情報処理装置２０からのアクセス要求への応答を開始する等、ハードディスクドライブ８０の障害によるアクセスの中断を回避するための制御を行うことが可能となる。
【０１１８】
以上、本実施の形態について説明したが、上記実施例は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物も含まれる。
【図面の簡単な説明】
【０１１９】
【図１】第一の実施形態および第二の実施形態における、ディスクアレイ装置のハードウェア構成を示すブロック図である。
【図２】第一の実施の形態における、コントローラが備える機能を示すブロック図である。
【図３】第一の実施形態における、ＲＡＩＤグループ管理テーブルおよび節電待ち時間を示す図である。
【図４】第一の実施形態における、節電処理を示すフローチャートである。
【図５】第一の実施形態における、ＲＥＡＤ処理を示すフローチャートである。
【図６】第一の実施形態における、スペアドライブを用いたＷＲＩＴＥ処理を示すフローチャートである。
【図７】第一の実施形態における、スペアドライブを用いないＷＲＩＴＥ処理を示すフローチャートである。
【図８】第一の実施形態における、ファイバチャネルのハードディスクドライブの接続形態を示す図である。
【図９】第一の実施形態における、シリアルＡＴＡのハードディスクドライブの第一の接続形態を示す図である。
【図１０】第一の実施形態における、増設筐体にコンバータを図９のように配設する場合における、ＲＡＩＤグループの構成例を示す図である。
【図１１】第一の実施形態における、シリアルＡＴＡのハードディスクドライブの第二の接続形態を示す図である。
【図１２】第一の実施形態における、コンバータを図１１のように配設する場合における、ＲＡＩＤグループの構成例を示す図である。
【図１３】第二の実施形態における、コントローラが備える機能を示すブロック図である。
【図１４】第二の実施形態における、ＲＡＩＤグループ管理テーブル、ハードディスクドライブ管理テーブル、節電管理テーブル、スペア管理テーブル、アンロード待ち時間、上限管理テーブル、及びエラー管理テーブルを示す図である。
【図１５】第二の実施形態における、節電処理を示すフローチャートである。
【図１６】第二の実施形態における、ＲＥＡＤ処理を示すフローチャートである。
【図１７】第二の実施形態における、スペアドライブを用いたＷＲＩＴＥ処理を示すフローチャートである。
【図１８】第二の実施形態における、スペアドライブを用いないＷＲＩＴＥ処理を示すフローチャートである。
【図１９】第二の実施形態における、スペアドライブを用いてハードディスクドライブをＲＡＩＤグループ単位で節電モードとする処理を示すフローチャートである。
【図２０】第二の実施形態における、ハードディスクドライブのヘッドをアンロードする処理を示すフローチャートである。
【図２１】第二の実施形態における、ハードディスクドライブの寿命を判定する処理を示すフローチャートである。
【図２２】第二の実施形態における、ハードディスクドライブにおいて発生しているエラーの回数をもとに、ハードディスクドライブをスペアドライブにて代替する処理を示すフローチャートである。
【符号の説明】
【０１２０】
１０  ディスクアレイ装置                １１  基本筐体
１２  増設筐体                          １３  コントローラ
１４  ＣＰＵ                            １５  メモリ
１６  計時機構                          １７  データコントローラ
２０  情報処理装置                      ３０  ＳＡＮ
４０  ホストインタフェース              ５０  ディスクインタフェース
６０  キャッシュメモリ                  ８０  ハードディスクドライブ
８１  通信経路                          ８２  ＲＡＩＤグループ
８３  論理ボリューム                    ８５  スペアドライブ
９０  管理端末
２０１  アクセス時刻記憶部              ２０２  節電モード実行部
２０３  通信経路選択部                  ２０４  読み出し要求応答部
２０５  節電モード解除部                ２０６  スペアドライブ記憶部
２０７  書き込み要求応答部              ２０８  位置情報記憶部
３０１  ＲＡＩＤグループ管理テーブル    ３０２  節電待ち時間
８０１  ＰＢＣ                          ９０１  コンバータ
１３０１  アクセス時刻記憶部            １３０２  節電モード実行部
１３０３  節電開始時刻記憶部            １３０４  節電モード解除部
１３０５  連続稼働時間記憶部            １３０６  一括スペア実行部
１３０７  累積稼働時間記憶部            １３０８  ロード時刻記憶部
１３０９  アンロード実行部              １３１０  エラー回数記憶部
１３１１  ダイナミックスペア実行部      １３１２  読み出し要求応答部
１３１３  スペアドライブ記憶部          １３１４  書き込み要求応答部
１３１５  位置情報記憶部                １３１６  上限チェック部
１４０１  ＲＡＩＤグループ管理テーブル  
１４０２  ハードディスクドライブ管理テーブル
１４０３  節電管理テーブル              １４０４  スペア管理テーブル
１４０５  アンロード待ち時間            １４０６  上限管理テーブル
１４０７  エラー管理テーブル
【図１】
2005228288.tif 000003
【図２】
2005228288.tif 000004
【図３】
2005228288.tif 000005
【図４】
2005228288.tif 000006
【図５】
2005228288.tif 000007
【図６】
2005228288.tif 000008
【図７】
2005228288.tif 000009
【図８】
2005228288.tif 000010
【図９】
2005228288.tif 000011
【図１０】
2005228288.tif 000012
【図１１】
2005228288.tif 000013
【図１２】
2005228288.tif 000014
【図１３】
2005228288.tif 000015
【図１４】
2005228288.tif 000016
【図１５】
2005228288.tif 000017
【図１６】
2005228288.tif 000018
【図１７】
2005228288.tif 000019
【図１８】
2005228288.tif 000020
【図１９】
2005228288.tif 000021
【図２０】
2005228288.tif 000022
【図２１】
2005228288.tif 000023
【図２２】
2005228288.tif 000024