(57)【要約】【課題】障害発生時に優先度の高いデータが早く復元される可能性を高めること。【解決手段】データＡ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３が格納される第１の記憶領域Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４及び第１の記憶領域Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４に格納された一部のデータと同じデータが格納される第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４をそれぞれが有し、同じ管理単位Ｖ１、Ｖ２に属する複数のデータＡ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３が分散して格納される複数の記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄと、管理単位Ｖ１、Ｖ２毎に設定された優先度Ｐに基づき、複数の記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄが有する第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４について管理単位Ｖ１、Ｖ２毎の使用割合を設定する制御部１２と、を有する、ストレージ装置１０が提供される。【選択図】図１
2015158768.tif 000002
【特許請求の範囲】
【請求項１】
データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置と、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する制御部と、
を有する、ストレージ装置。
【請求項２】
前記制御部は、前記優先度が高いほど前記使用割合を大きく設定する
請求項１に記載のストレージ装置。
【請求項３】
前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記管理単位毎に計測されたデータの更新頻度に基づいて設定される
請求項１又は２に記載のストレージ装置。
【請求項４】
前記優先度は、前記管理単位毎に設定された重み値を用いて前記更新頻度に重み付けした値に設定される
請求項３に記載のストレージ装置。
【請求項５】
前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記単位ボリュームに割り当てられた個々のユーザによるデータの更新頻度に基づいて設定される
請求項１又は２に記載のストレージ装置。
【請求項６】
前記優先度は、前記ユーザ毎に設定された第１の重み値、及び前記ユーザが属するグループ毎に設定された第２の重み値を用いて前記更新頻度に重み付けした値に設定される
請求項５に記載のストレージ装置。
【請求項７】
前記制御部は、データの更新がない時間の長さを前記管理単位毎に計測し、当該計測の結果に応じて前記優先度を低減させる
請求項１〜６のいずれか１項に記載のストレージ装置。
【請求項８】
前記制御部は、
前記第２の記憶領域に前記使用割合を設定した前記管理単位に属するデータを前記第１の記憶領域に格納する際に当該データを前記第２の記憶領域に格納し、
障害が発生した前記記憶装置が有する前記第１の記憶領域のデータを復旧する場合、障害が発生していない前記記憶装置が有する前記第２の記憶領域に格納されている復旧対象のデータを用いて復旧処理を実行する
請求項１〜７のいずれか１項に記載のストレージ装置。
【請求項９】
データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を有するストレージ装置が、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する
ストレージ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置、及びストレージ装置の制御方法に関する。
【背景技術】
【０００２】
容量の大きなデータを扱うシステムにおいては、高い信頼性及び高い読み書き性能を実現することが可能なＲＡＩＤ（Redundant Arrays of Inexpensive Disks）装置が利用される。ＲＡＩＤ装置は、ＨＤＤ（Hard Disk Drive）などの記憶装置（以下、ディスク）を複数接続して冗長化した装置である。上記のようなシステムでは、ネットワークを介して複数の端末装置からアクセスできる仕組みを設け、データを集中管理できるようにしたＮＡＳ（Network Attached Storage）装置なども利用される。
【０００３】
ＲＡＩＤ装置には、一部のディスクが故障しても、故障したディスクに格納されていたデータを残りのディスクに格納されているデータから復元できる仕組みが設けられている。例えば、ＲＡＩＤ装置にはパリティデータが格納されており、パリティデータに基づく演算処理（以下、パリティ演算）を実行することで故障したディスクに格納されていたデータを復元することができる。復元されたデータは、ＲＡＩＤ装置内に用意された交換用のディスク（以下、スペアディスク）に格納される。スペアディスクにデータが格納されると、ＲＡＩＤ装置は、スペアディスクを利用して正常に動作を継続することができる。
【０００４】
上記のように、ＲＡＩＤ装置を利用すれば、一部のディスクに故障が発生しても正常動作を継続することができる。但し、復元するデータの量が多い場合、パリティ演算によりデータが復元されるまでに長い時間がかかる。つまり、データ量や使用状況によっては、ディスクの故障により失ったデータを復元させる処理（以下、復元処理）にかかる時間（以下、データ再構築時間）が長くなることがある。
【０００５】
上記のような事情に鑑み、データ再構築時間を短縮する手法が提案されている。例えば、稼働しているディスクのデータを予めスペアディスクに格納しておき、スペアディスクに格納したデータを復元処理に利用する方法が提案されている。また、各ディスクの未使用領域に他のディスクに格納されるデータをコピーしておき、コピーしたデータを復元処理に利用する方法が提案されている。また、各ディスクに予め用意した記憶領域（以下、スペア領域）にコピーしたデータを復元処理に利用する方法が提案されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１０８３１６号公報
【特許文献２】特開２００９−２０５５７１号公報
【特許文献３】特開２０００−２００１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の提案に係る技術（以下、提案技術）を適用すれば、スペアディスク、未使用領域、又はスペア領域（以下、単にスペア領域と称する。）に予め格納しておいたデータを復元処理に利用できるため、パリティ演算を実行する場合に比べてデータ再構築時間を短縮することができる。但し、上記の提案技術は、各ディスクに格納される全てのデータをスペア領域へとコピーすることを前提としている。
【０００８】
各ディスクに格納される全てのデータを格納可能なディスクスペースをスペア領域として用意することはＲＡＩＤ装置のコストを増大させる。一方、スペア領域の容量が十分でないと一部のデータがコピーされない可能性が生じる。コピーされていない一部のデータは復元処理の中でパリティ演算により復元されるため、その復元に長い時間がかかる。
【０００９】
上記の提案技術は、全てのデータをスペア領域へとコピーすることを前提としており、コピーするデータの種類について考慮していない。そのため、上記の提案技術を適用すると、データのコピー及び復元の処理に際し、短時間で復元したいデータと他のデータとが同じように扱われる。つまり、各ディスクの全データを格納可能なスペア領域が用意されていない場合、復元に長い時間がかかる可能性はデータの種類によらず同程度となる。
【００１０】
そこで、１つの側面によれば、本発明の目的は、障害発生時に優先度の高いデータが早く復元される可能性を高めることができるストレージ装置、及びストレージ装置の制御方法を提供することにある。
【課題を解決するための手段】
【００１１】
本開示の１つの側面によれば、データが格納される第１の記憶領域及び第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置と、管理単位毎に設定された優先度に基づき、複数の記憶装置が有する第２の記憶領域について管理単位毎の使用割合を設定する制御部と、を有する、ストレージ装置が提供される。
【００１２】
また、本開示の他の１つの側面によれば、データが格納される第１の記憶領域及び第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を有するストレージ装置が、管理単位毎に設定された優先度に基づき、複数の記憶装置が有する第２の記憶領域について管理単位毎の使用割合を設定するストレージ装置の制御方法が提供される。
【発明の効果】
【００１３】
本発明によれば、障害発生時に優先度の高いデータが早く復元される可能性を高めることができる。
【図面の簡単な説明】
【００１４】
【図１】第１実施形態に係るストレージ装置の一例を示した図である。
【図２】第２実施形態に係るシステムの一例を示した図である。
【図３】第２実施形態に係るストレージ装置の一例を示した図である。
【図４】第２実施形態に係るスペア領域の設定について説明するための図である。
【図５】第２実施形態に係るスペア領域の利用について説明するための第１の図である。
【図６】第２実施形態に係るスペア領域の利用について説明するための第２の図である。
【図７】第２実施形態に係るスペア領域の管理について説明するための第１の図である。
【図８】第２実施形態に係るスペア領域の管理について説明するための第２の図である。
【図９】第２実施形態に係るストレージ装置が実行する処理のうち、運用開始前の設定に関する処理の流れを示したフロー図である。
【図１０】第２実施形態に係るストレージ装置が実行する処理のうち、運用開始後の処理の流れを示したフロー図である。
【図１１】第２実施形態に係るストレージ装置が実行する処理のうち、障害発生時に実行する処理の流れを示したフロー図である。
【図１２】第２実施形態の一変形例（変形例＃１）に係る管理テーブルの一例を示した図である。
【図１３】第２実施形態の一変形例（変形例＃２）に係る管理テーブルの一例を示した図である。
【図１４】第２実施形態の一変形例（変形例＃２）に係るディスク管理情報の一例を示した図である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照しながら、本発明の実施形態について説明する。なお、本明細書及び図面において実質的に同一の機能を有する要素については、同一の符号を付することにより重複説明を省略する場合がある。
【００１６】
＜１．第１実施形態＞
図１を参照しながら、第１実施形態について説明する。なお、図１は、第１実施形態に係るストレージ装置の一例を示した図である。図１に示したストレージ装置１０は、第１実施形態に係るストレージ装置の一例である。
【００１７】
図１に示すように、ストレージ装置１０は、複数の記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄと、制御部１２とを有する。
なお、記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄとしては、ＨＤＤなどの磁気記憶デバイスが用いられる。また、記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄとして、ＳＳＤ（Solid State Drive）やＲＡＭ（Random Access Memory）ディスクなどの半導体記憶デバイスなどを用いることもできる。記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄは、例えば、ＲＡＩＤ装置などの冗長性を有する記憶装置である。また、ストレージ装置１０は、例えば、ＮＡＳ装置などとして利用することができる。
【００１８】
制御部１２は、ＣＰＵ（Central Processing Unit）やＤＳＰ（Digital Signal Processor）などのプロセッサである。但し、制御部１２は、ＡＳＩＣ（Application Specific Integrated Circuit）やＦＰＧＡ（Field Programmable Gate Array）などの電子回路であってもよい。制御部１２は、例えば、ストレージ装置１０に内蔵されたメモリや、ストレージ装置１０に接続された外部メモリ又は可搬性記録媒体に格納されたプログラムを実行することができる。
【００１９】
図１の例において、記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄは、それぞれ第１の記憶領域Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４及び第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４を有する。第１の記憶領域Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４には、データＡ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３が格納されている。また、第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４には、第１の記憶領域Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４に格納された一部のデータＡ１、Ａ２、Ａ３、Ｂ１と同じデータが格納されている。
【００２０】
記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄには、データの管理単位Ｖ１、Ｖ２が設定されている。記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄには、同じ管理単位に属する複数のデータが分散して格納される。図１の例では、管理単位Ｖ１に属するデータＡ１、Ａ２、Ａ３が記憶装置１１ａ、１１ｂ、１１ｃに分散して格納されている。また、管理単位Ｖ２に属するデータＢ１、Ｂ２、Ｂ３が記憶装置１１ａ、１１ｂ、１１ｄに分散して格納されている。
【００２１】
制御部１２は、管理単位Ｖ１、Ｖ２毎に設定された優先度Ｐに基づき、複数の記憶装置１１ａ、１１ｂ、１１ｃ、１１ｄが有する第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４について管理単位Ｖ１、Ｖ２毎の使用割合を設定する。図１の例では、管理単位Ｖ１に対して優先度「Ｈｉｇｈ」が設定され、管理単位Ｖ２に対して優先度「Ｌｏｗ」が設定されている。つまり、管理単位Ｖ１の優先度Ｐは、管理単位Ｖ２の優先度Ｐより高い。なお、優先度Ｐは、例えば、予め設定した複数のレベルを用いて表現してもよいし、数値の大きさを用いて表現してもよい。
【００２２】
制御部１２は、例えば、優先度Ｐが高いほど使用割合を大きく設定する。図１の例では、優先度Ｐが高い管理単位Ｖ１の使用割合が３、優先度Ｐが低い管理単位Ｖ２の使用割合が１に設定されている。利用する第２の記憶領域をＲ２３、Ｒ２４とした場合、例えば、管理単位Ｖ１に属する３つのデータＡ１、Ａ２、Ａ３が第２の記憶領域に格納可能となり、管理単位Ｖ２に属する１つのデータＢ１が第２の記憶領域に格納可能となる。
【００２３】
なお、説明の都合上、図１の例では、データＡ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３のデータサイズが同じであるとし、第２の記憶領域Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４の容量がデータ２つ分であるとしている。もちろん、第１実施形態に係る技術の適用範囲はこれに限定されず、任意のデータサイズ及び任意の容量に対して適用可能である。
【００２４】
上記のように、データの管理単位毎に設定された優先度に基づいて第２の記憶領域の利用割合を設定することで、優先度の高いデータを優先度の低いデータより多く第２の記憶領域に格納しておくことが可能になる。
【００２５】
また、第２の記憶領域には第１の記憶領域に格納されたデータの一部と同じデータが格納されているため、第２の記憶領域に格納されたデータを利用できれば、第１の記憶領域に格納されたデータの復旧処理が高速になる。また、第１実施形態の技術を適用すると優先度の高いデータが第２の記憶領域に多く格納されるため、優先度の高いデータについて復旧処理の更なる高速化が期待できる。
【００２６】
以上、第１実施形態について説明した。
＜２．第２実施形態＞
次に、第２実施形態について説明する。
【００２７】
［２−１．システム］
図２を参照しながら、第２実施形態に係るシステムについて説明する。図２は、第２実施形態に係るシステムの一例を示した図である。
【００２８】
図２に示すように、上記のシステムは、端末装置５１ａ、５１ｂ、５１ｃ、及びストレージ装置１００を含む。
端末装置５１ａ、５１ｂ、５１ｃとストレージ装置１００とは、ネットワークＮＷを介して接続されている。ネットワークＮＷは、例えば、有線又は無線の通信回線で複数の装置を接続する通信ネットワーク、或いは、有線及び無線の通信回線を組み合わせて複数の装置を接続する通信ネットワークである。有線ＬＡＮ（Local Area Network）、無線ＬＡＮ、携帯通信網、光通信網などはネットワークＮＷの一例である。
【００２９】
端末装置５１ａ、５１ｂ、５１ｃは、ストレージ装置１００に格納されたデータを使用する装置の一例である。端末装置５１ａ、５１ｂ、５１ｃとしては、例えば、パーソナルコンピュータやタブレット端末などの情報処理装置、或いは、携帯電話やスマートフォンなどの通信装置などがある。なお、図２には３台の端末装置５１ａ、５１ｂ、５１ｃを一例として記載しているが、ストレージ装置１００のデータを利用する端末装置の数は２台以下又は４台以上にすることも可能である。
【００３０】
ストレージ装置１００は、複数のディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄを有する。ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄは、ＨＤＤなどの磁気記憶デバイスである。但し、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄとして、例えば、ＳＳＤやＲＡＭディスクなどの半導体記憶デバイスを用いることもできる。また、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄはＲＡＩＤ装置として機能する。また、ストレージ装置１００はＮＡＳ装置として機能する。
【００３１】
ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄには、一部のディスクが故障しても、故障したディスクに格納されていたデータを残りのディスクに格納されているデータから復元できる仕組みが設けられている。例えば、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄにはパリティデータが格納されており、パリティ演算を実行することで故障したディスクに格納されていたデータを復元することができる。復元されたデータは、スペアディスクに格納される。スペアディスクにデータが格納されると、スペアディスクを利用してストレージ装置１００における処理が継続される。
【００３２】
データ（以下、パリティデータを含む。）が格納されるディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄの領域（以下、データ領域）には、ＲＡＩＤボリューム（以下、単にボリュームと称する。）が設定される。１つのボリュームは、端末装置５１ａ、５１ｂ、５１ｃから１つの連続した記憶領域として扱われる。例えば、ボリュームは、端末装置５１ａ、５１ｂ、５１ｃのオペレーティングシステムによりフォーマットされ、物理的なディスクと同様にデータの書き込み処理や読み出し処理の対象とされる。
【００３３】
端末装置５１ａ、５１ｂ、５１ｃは、ネットワークＮＷを介してストレージ装置１００にアクセスする。そして、端末装置５１ａ、５１ｂ、５１ｃは、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに設定されたボリュームに対するデータの書き込み処理や読み出し処理を実行する。
【００３４】
以上、第２実施形態に係るシステムについて説明した。
［２−２．ストレージ装置］
次に、図３を参照しながら、ストレージ装置１００について説明する。図３は、第２実施形態に係るストレージ装置の一例を示した図である。なお、図３に例示したストレージ装置１００は、第２実施形態に係るストレージ装置の一例である。また、説明の中で、適宜、図４〜図８を参照する。
【００３５】
図３に示すように、ストレージ装置１００は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄ、ＣＰＵ１０２、外部インターフェース１０３、及びバス１０４を有する。さらに、ストレージ装置１００は、メモリ１０５、バッテリ１０６、ＲＯＭ（Read Only Memory）１０７、及びディスク制御部１０８を有する。
【００３６】
ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄは、磁気記憶デバイスである。ＣＰＵ１０２は、ストレージ装置１００の動作を制御するデバイスの一例である。外部インターフェース１０３は、ネットワークＮＷと接続する通信インターフェース及び通信インターフェースを制御するデバイスの一例である。バス１０４は、ＣＰＵ１０２、外部インターフェース１０３、メモリ１０５、ＲＯＭ１０７、ディスク制御部１０８を接続する内部バスである。
【００３７】
メモリ１０５には、例えば、外部インターフェース１０３を介して入力されたデータが一時的に格納される。また、メモリ１０５には、ディスク制御部１０８がディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに関する情報を管理する管理テーブルが格納される。例えば、管理テーブルには、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに設定された各ボリュームに対するアクセス頻度などの情報が含まれる。なお、管理テーブルについては後述する。バッテリ１０６は、メモリ１０５に電力を供給する電源である。
【００３８】
ＲＯＭ１０７は、ＣＰＵ１０２の動作を規定するプログラムを格納するメモリである。ディスク制御部１０８は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄを制御するコントローラである。また、ディスク制御部１０８は、バス１０４を介してＣＰＵ１０２、外部インターフェース１０３、メモリ１０５との間でデータをやり取りする。
【００３９】
なお、ディスク制御部１０８は、ストレージ装置１００に接続された記録媒体５２に格納されているプログラムを読み出し、読み出したプログラムに従って動作する仕組みとしてもよい。記録媒体５２は、例えば、光ディスク、磁気ディスク、半導体メモリなどのストレージ装置１００により読み取り可能な可搬記録媒体である。
【００４０】
以下、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに設けられるスペア領域の設定、利用、及び管理について説明する。なお、スペア領域は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄの一部に障害が発生した際、障害により利用不能となったデータの復元データが格納される記憶領域である。
【００４１】
（スペア領域の設定について）
まず、図４を参照しながら、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに設定されるスペア領域について説明する。図４は、第２実施形態に係るスペア領域の設定について説明するための図である。
【００４２】
図４に示すように、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄには、それぞれデータ領域Ｄｄ１、Ｄｄ２、Ｄｄ３、Ｄｄ４と、スペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４とが設定される。データ領域Ｄｄ１、Ｄｄ２、Ｄｄ３、Ｄｄ４は、端末装置５１ａ、５１ｂ、５１ｃが読み書きするデータが格納される記憶領域である。
【００４３】
スペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４は、データ領域Ｄｄ１、Ｄｄ２、Ｄｄ３、Ｄｄ４に格納されたデータの一部（コピー）が格納される記憶領域である。なお、スペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４の合計容量は、例えば、ディスク１つ分と同じ容量以上に設定される。スペア領域が複数のディスクに分散配置されることでスペア領域に対するデータの書き込み時に各ディスクにかかる負担が分散される。
【００４４】
（スペア領域の利用について）
次に、図５及び図６を参照しながら、スペア領域の利用について説明する。図５は、第２実施形態に係るスペア領域の利用について説明するための第１の図である。また、図６は、第２実施形態に係るスペア領域の利用について説明するための第２の図である。
【００４５】
図５の例では、データ領域Ｄｄ１、Ｄｄ２、Ｄｄ３、Ｄｄ４には、４つのボリュームＶ１、Ｖ２、Ｖ３、Ｖ４が設定されている。また、ボリュームＶ１には、データＡ１、Ａ２、Ａ３が含まれる。ボリュームＶ２には、データＢ１、Ｂ２、Ｂ３が含まれる。ボリュームＶ３には、データＣ１、Ｃ２、Ｃ３が含まれる。ボリュームＶ４には、データＤ１、Ｄ２、Ｄ３が含まれる。
【００４６】
スペア領域には、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄの一部に障害が発生した際、復旧処理に利用するデータのコピーが格納される。そのため、スペア領域Ｓｐ１には、スペア領域Ｓｐ１と同じディスク１０１ａに設定されたデータ領域Ｄｄ１とは異なるデータ領域Ｄｄ２、Ｄｄ３、Ｄｄ４から選択されたデータ（図５の例ではデータＤ１）が格納される。同様に、図５の例では、スペア領域Ｓｐ２にデータＣ１、スペア領域Ｓｐ３にデータＢ１、スペア領域Ｓｐ４にデータＡ１が格納されている。
【００４７】
例えば、ディスク制御部１０８は、ボリュームＶ１に対するデータＡ１の書き込み要求を受け、データ領域Ｄｄ１にデータＡ１を書き込んだ後、スペア領域Ｓｐ４にデータＡ１を書き込む。ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに障害が発生しておらず、正常動作が可能な通常状態においては、上記の方法によりデータ領域Ｄｄ１、Ｄｄ２、Ｄｄ３、Ｄｄ４、及びスペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４にデータが書き込まれる。
【００４８】
ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄに障害が発生した場合には、スペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４のデータを利用して復旧処理が実行される。例えば、図６に示すように、ディスク１０１ｂが故障した場合、データ領域Ｄｄ２に格納されていたデータＡ２、Ｂ３、Ｄ１が利用不能な状態になる。
【００４９】
ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄはＲＡＩＤ装置としての冗長性を有している。そのため、ディスク制御部１０８は、データ領域Ｄｄ１、Ｄｄ３、Ｄｄ４に格納されたデータ（パリティデータ）を利用してデータＡ２、Ｂ３、Ｄ１を復元できる。但し、スペア領域Ｓｐ１にはデータＤ１が格納されている。そのため、ディスク制御部１０８は、スペア領域Ｓｐ１に格納されているデータＤ１をそのまま利用する。
【００５０】
この場合、ディスク制御部１０８は、図６に示すように、パリティデータを利用してデータＡ２、Ｂ３を復元し、復元したデータＡ２をスペア領域Ｓｐ４に格納し、復元したデータＢ３をスペア領域Ｓｐ３に格納する。その結果、スペア領域Ｓｐ１に格納されているデータＤ１、スペア領域Ｓｐ３に格納されたデータＢ３、及びスペア領域Ｓｐ４に格納されたデータＡ２を利用してストレージ装置１００の動作を継続することができる。
【００５１】
上記のように、スペア領域に予め格納されているデータ（図６の例ではデータＤ１）をそのまま利用することでパリティ演算の回数を低減することができる。図６の例では、パリティ演算の回数が２／３に低減されている。また、復旧時に実行するスペア領域へのデータの書き込み回数（図６の例では、スペア領域Ｓｐ３、Ｓｐ４に対する２回の書き込み）も２／３に低減されている。その結果、障害が発生してからストレージ装置１００が正常動作を開始するまでにかかる時間が短縮される。
【００５２】
（スペア領域の管理について）
ここで、図７及び図８を参照しながら、スペア領域の管理について説明する。図７は、第２実施形態に係るスペア領域の管理について説明するための第１の図である。また、図８は、第２実施形態に係るスペア領域の管理について説明するための第２の図である。
【００５３】
図５の例では、ボリュームＶ１、Ｖ２、Ｖ３、Ｖ４にそれぞれ含まれるデータが同じ割合でスペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４に格納されていた。ここでは、図７に示すように、ボリューム毎に設定された優先度に応じてスペア領域に格納されるデータの割合を変える仕組みについて説明する。
【００５４】
図７の例では、ボリュームＶ１の優先度が高く設定され、ボリュームＶ２の優先度が低く設定されている。この場合、ボリュームＶ１に含まれるデータ（Ａ１、及びＡ２の一部）がスペア領域（Ｓｐ３、Ｓｐ４）に格納される割合は、ボリュームＶ２に含まれるデータ（Ｂ１の一部）がスペア領域（Ｓｐ３）に格納される割合よりも大きく設定される。割合の決定処理は、図８に例示した管理テーブルに基づいてディスク制御部１０８の機能により実行される。
【００５５】
ディスク制御部１０８は、単位時間内のアクセス数（頻度Ｐ１）をボリューム毎に計測し、計測した頻度Ｐ１を管理テーブルに記録する。なお、ディスク制御部１０８が管理するＲＡＩＤ装置が複数存在する場合には、図８に示すように、ＲＡＩＤ装置を特定するＲＡＩＤ名に対応付けてボリューム毎の頻度Ｐ１が管理テーブルに記録される。例えば、ＲＡＩＤ＿ＡのボリュームＶ１に対するデータの書き込み及び読み出しが単位時間当たり計５０００回あった場合、頻度Ｐ１を示す管理テーブルの欄には５０００と記録される。
【００５６】
また、管理テーブルには、優先度Ｐ４を算出する際に頻度Ｐ１に対して重み付けする値である係数Ｐ２がボリューム毎に設定されている。さらに、管理テーブルには、優先度Ｐ４を算出する際に、係数Ｐ２で重み付けした頻度Ｐ１に加算する重み値である基数Ｐ３がボリューム毎に設定されている。そして、管理テーブルには、ボリューム毎に割り当てられるスペア領域の利用割合を優先度Ｐ４から計算するための閾値を示す粒度Ｐ５がＲＡＩＤ装置毎に設定されている。
【００５７】
スペア領域の利用割合を決定する際、ディスク制御部１０８は、管理テーブルを参照し、頻度Ｐ１に係数Ｐ２を乗算し、乗算した値に基数Ｐ３を加えて優先度Ｐ４を計算する。言い換えると、優先度Ｐ４は、Ｐ４＝Ｐ１×Ｐ２＋Ｐ３で与えられる。
【００５８】
図８の例では、ボリュームＶ１について計測された頻度Ｐ１は５０００、係数Ｐ２が１、基数Ｐ３が１０００であるから、ボリュームＶ１の優先度Ｐ４は６０００（＝５０００×１＋１０００）となる。また、ボリュームＶ２について計測された頻度Ｐ１は１００、係数Ｐ２が１０、基数Ｐ３が１０００であるから、優先度Ｐ４は２０００（＝１００×１０＋１０００）となる。
【００５９】
ディスク制御部１０８は、ボリュームＶ１の優先度Ｐ４（６０００）とｎ×粒度Ｐ５（５０００）とを比較する（ｎ＝０，１，２，…）。この場合、ボリュームＶ１の優先度Ｐ４は１×粒度Ｐ５より大きく、２×粒度Ｐ２より小さい。そのため、ディスク制御部１０８は、利用割合の決定に用いる指標値を示すランクＲを２とする。
【００６０】
ディスク制御部１０８は、ボリュームＶ２の優先度Ｐ４（２０００）とｎ×粒度Ｐ５（５０００）とを比較する（ｎ＝０，１，２，…）。この場合、ボリュームＶ２の優先度Ｐ４は０×粒度Ｐ５より大きく、１×粒度Ｐ２より小さい。そのため、ディスク制御部１０８は、利用割合の決定に用いる指標値を示すランクＲを１とする。
【００６１】
上記のように、ディスク制御部１０８は、優先度Ｐ４がｎ×粒度Ｐ５より大きく、（ｎ＋１）×粒度Ｐ５より小さい場合、ランクＲを（ｎ＋１）とする。ディスク制御部１０８は、ボリューム毎に求めたランクＲを用いてスペア領域の割合を決定する。図８の例では、ボリュームＶ１のデータに割り当てられるスペア領域の容量と、ボリュームＶ２のデータに割り当てられるスペア領域の容量とは２対１（ランクＲの比率）に設定される。
【００６２】
なお、ボリュームＶ１のランクＲが２、ボリュームＶ２のランクＲが１、ボリュームＶ３のランクＲが１の場合、容量の配分比率は２対１対１に設定される。
ディスク制御部１０８は、図７に示すように、ボリューム毎に設定した割合に応じてボリューム毎にスペア領域の容量を割り当てる。なお、ボリュームをスペア領域に割り当てたディスク制御部１０８は、割り当て設定を示す情報をメモリ１０５に格納する。また、ディスク制御部１０８は、ボリュームにデータを書き込む際、そのボリュームに割り当てられたスペア領域に同じデータを格納する。図７の例では、ボリュームＶ１に含まれるデータの方が、ボリュームＶ２に含まれるデータよりも多くスペア領域に格納される。
【００６３】
以上、ストレージ装置１００について説明した。上記のように、ボリューム毎に設定（計算）された優先度に応じてスペア領域の割り当て比率を変更することにより、障害発生時に優先度の高いデータを早く復旧できる可能性が高まる。
【００６４】
［２−３．処理フロー］
次に、ストレージ装置１００が実行する処理の流れについて説明する。
（運用開始前の設定に関する処理について）
図９を参照しながら、ストレージ装置１００が実行する処理のうち、運用開始前の設定に関する処理の流れについて説明する。
【００６５】
なお、図９は、第２実施形態に係るストレージ装置が実行する処理のうち、運用開始前の設定に関する処理の流れを示したフロー図である。また、図９に示した処理は、主にディスク制御部１０８により実行される。また、簡単のために、ＲＡＩＤ＿ＡのＲＡＩＤ装置上にボリュームＶ１、Ｖ２を設定する場合について説明するが、ＲＡＩＤ装置の数やボリュームの数などが異なる場合についても同様である。
【００６６】
図９に示すように、ディスク制御部１０８は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄによりＲＡＩＤ装置を構築し、ＲＡＩＤ装置を特定するＲＡＩＤ名をＲＡＩＤ＿Ａに設定する（Ｓ１０１）。次いで、ディスク制御部１０８は、ＲＡＩＤ＿Ａの各ディスク（ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄ）にスペア領域（スペア領域Ｓｐ１、Ｓｐ２、Ｓｐ３、Ｓｐ４）を設定する（Ｓ１０２）。
【００６７】
次いで、ディスク制御部１０８は、ＲＡＩＤ＿Ａに対する粒度Ｐ５を設定する（Ｓ１０３）。また、Ｓ１０３の処理で、ディスク制御部１０８は、設定した粒度Ｐ５を管理テーブルに記録して管理テーブルを更新する。例えば、粒度Ｐ５は、ストレージ装置１００のユーザ又は管理者により指定され、ディスク制御部１０８により設定される。次いで、ディスク制御部１０８は、ＲＡＩＤ＿Ａ上にボリュームＶ１を生成する（Ｓ１０４）。
【００６８】
次いで、ディスク制御部１０８は、ボリュームＶ１に対する係数Ｐ２及び基数Ｐ３を設定する（Ｓ１０５）。また、Ｓ１０５の処理で、ディスク制御部１０８は、設定した係数Ｐ２及び基数Ｐ３を管理テーブルに記録して管理テーブルを更新する。例えば、係数Ｐ２及び基数Ｐ３は、ストレージ装置１００のユーザ又は管理者により指定され、ディスク制御部１０８により設定される。次いで、ディスク制御部１０８は、ＲＡＩＤ＿Ａ上にボリュームＶ２を生成する（Ｓ１０６）。
【００６９】
次いで、ディスク制御部１０８は、ボリュームＶ２に対する係数Ｐ２及び基数Ｐ３を設定する（Ｓ１０７）。また、Ｓ１０７の処理で、ディスク制御部１０８は、設定した係数Ｐ２及び基数Ｐ３を管理テーブルに記録して管理テーブルを更新する。例えば、係数Ｐ２及び基数Ｐ３は、ストレージ装置１００のユーザ又は管理者により指定され、ディスク制御部１０８により設定される。Ｓ１０７の処理が完了すると、図９に示した一連の処理は終了する。
【００７０】
以上、運用開始前の設定に関する処理の流れについて説明した。
（運用開始後の処理について）
次に、図１０を参照しながら、ストレージ装置１００が実行する処理のうち、運用開始後の処理の流れについて説明する。
【００７１】
なお、図１０は、第２実施形態に係るストレージ装置が実行する処理のうち、運用開始後の処理の流れを示したフロー図である。また、図１０に示した処理は、主にディスク制御部１０８により実行される。また、簡単のために、図９の処理で生成された管理テーブルを想定して説明を進める。
【００７２】
図１０に示すように、ディスク制御部１０８は、ボリュームに対するアクセスを検知し、単位時間当たりのアクセス回数を示す頻度Ｐ１を計算する（Ｓ１１１）。また、Ｓ１１１の処理で、ディスク制御部１０８は、計算した頻度Ｐ１を管理テーブルに記録して管理テーブルを更新する。例えば、ディスク制御部１０８は、ＲＡＩＤ＿ＡのボリュームＶ１へのアクセス回数を計測し、単位時間当たりのアクセス回数を計算する。そして、ディスク制御部１０８は、計算結果を頻度Ｐ１として管理テーブルに記録する。
【００７３】
次いで、ディスク制御部１０８は、検知したアクセスが、スペア領域に割り当てられたボリュームへのライト処理（データの書き込み処理）である場合、スペア領域に同じデータを書き込む（Ｓ１１２）。例えば、スペア領域Ｓｐ４にボリュームＶ１が割り当てられている場合（利用割合が０でない場合）、ボリュームＶ１に対するデータの書き込みがあると、ディスク制御部１０８は、ボリュームＶ１に書き込まれたデータと同じデータをスペア領域Ｓｐ４に書き込む。
【００７４】
次いで、ディスク制御部１０８は、運用開始後、予め設定した時間が経過したか否かを判定する（Ｓ１１３）。運用開始後、予め設定した時間が経過している場合、処理はＳ１１４へと進む。一方、運用開始後、予め設定した時間が経過していない場合、処理はＳ１１１へと進む。
【００７５】
処理がＳ１１４へと進んだ場合、ディスク制御部１０８は、管理テーブルを参照し、頻度Ｐ１、係数Ｐ２、及び基数Ｐ３に基づいて優先度Ｐ４を計算する。さらに、ディスク制御部１０８は、優先度Ｐ４及び粒度Ｐ５に基づいてランクＲを決定する。そして、ディスク制御部１０８は、決定したランクＲに応じた利用割合となるように、スペア領域へのボリュームの割り当てを更新する（Ｓ１１４）。なお、ボリュームの割り当て設定を示す情報は、メモリ１０５に格納される。
【００７６】
次いで、ディスク制御部１０８は、更新後の割り当て設定に基づいてスペア領域のデータを更新する（Ｓ１１５）。例えば、スペア領域Ｓｐ３に対するボリュームＶ２の割り当て容量が２／３に減り、残りの容量がボリュームＶ１に割り当てられた場合、ディスク制御部１０８は、ボリュームＶ２のデータを２／３に減らし、残りの容量にボリュームＶ１のデータを格納する。
【００７７】
次いで、ディスク制御部１０８は、運用を終了するか否かを判定する（Ｓ１１６）。運用を終了する場合、図１０に示した一連の処理は終了する。一方、運用を終了しない場合、処理はＳ１１１へと進む。
【００７８】
以上、運用開始後の処理の流れについて説明した。
（障害発生時の処理について）
次に、図１１を参照しながら、ストレージ装置１００が実行する処理のうち、障害発生時に実行する処理の流れについて説明する。
【００７９】
なお、図１１は、第２実施形態に係るストレージ装置が実行する処理のうち、障害発生時に実行する処理の流れを示したフロー図である。また、図１１に示した処理は、主にディスク制御部１０８により実行される。
【００８０】
図１１に示すように、ディスク制御部１０８は、障害の発生を検知する（Ｓ１２１）。この場合、障害の発生により複数のディスクに重複して格納されているデータの量が減少し、冗長性が低下する。例えば、ディスク制御部１０８は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄの１つが故障したことを検知する。障害の発生は、例えば、ディスクに対するデータの書き込み時やデータの読み出し時に発生するエラーログなどを監視することにより検知することができる。
【００８１】
障害の発生を検知したディスク制御部１０８は、障害が発生したディスクに格納されていたデータのうち、スペア領域に存在しないデータを復元する（Ｓ１２２）。例えば、ディスク制御部１０８は、障害が発生していないディスクに格納されているパリティデータを利用し、パリティ演算により復元対象のデータを復元する。次いで、ディスク制御部１０８は、障害が発生していないディスクのスペア領域に復元したデータを格納する（Ｓ１２３）。Ｓ１２３の処理が完了すると、図１１に示した一連の処理は終了する。
【００８２】
上記のように、スペア領域に格納されているデータについては、パリティ演算による復元処理が不要になる。さらに、障害が発生したディスクに代えてスペア領域を利用するため、スペア領域に予め格納されているデータを他のスペア領域に書き込む処理も省略される。その結果、スペア領域に格納されているデータは短時間で復旧される。また、優先度の高いデータがスペア領域に格納されている可能性が高いため、優先度の高いデータを短時間で復旧できる可能性が高い。
【００８３】
以上、障害発生時に実行する処理の流れについて説明した。
以上説明したストレージ装置１００が実行する処理の流れによれば、ディスクに障害が発生した場合に実行されるデータ復旧処理において、優先度の高いデータが短時間で復旧される可能性を高めることが可能になる。その結果、ストレージ装置１００を利用する重要性の高い業務の停止時間を総じて短くすることができる。
【００８４】
［２−４．変形例＃１：ユーザ・グループの考慮］
次に、図１２を参照しながら、第２実施形態の一変形例（変形例＃１）について説明する。図１２は、第２実施形態の一変形例（変形例＃１）に係る管理テーブルの一例を示した図である。
【００８５】
これまでの説明においては、スペア領域の利用割合をボリューム毎に決める際に参照する頻度Ｐ１がボリューム単位で計測されていた。また、頻度Ｐ１に対する重みを表す係数Ｐ２や、基数Ｐ３もボリューム単位で設定されていた。変形例＃１では、頻度Ｐ１をユーザ毎に計測し、係数Ｐ２をユーザ毎に設定し、基数Ｐ３をユーザが属するグループ毎に設定する仕組みについて提案する。
【００８６】
例えば、ＡＤ（Active Directory）などの機能を利用する場合、ユーザを特定するユーザ名（ユーザＩＤ）や、グループを特定するグループ名（グループＩＤ）などを利用してユーザやグループに応じた条件設定を行うことができる。また、端末装置５１ａ、５１ｂ、５１ｃとストレージ装置１００とがＣＩＦＳ（Common Internet File System）で接続されている場合、アクセスに際してユーザ及びグループの情報が得られる。このような機能を有するシステムでは、変形例＃１に基づく運用が可能である。
【００８７】
変形例＃１を適用する場合、管理テーブルは、図１２のように変形される。図１２の例では、頻度Ｐ１がユーザ毎に計測され、計測された頻度Ｐ１が個々のユーザ名Ｕに対応付けて管理テーブルに記録される。また、係数Ｐ２がユーザ毎に設定され、設定された係数Ｐ２が個々のユーザ名Ｕに対応付けて管理テーブルに記録される。但し、係数Ｐ２をグループ単位で設定するように変形することもできる。
【００８８】
また、基数Ｐ３は、ユーザが属するグループ毎に設定され、個々のグループ名Ｇに対応付けて管理テーブルに記録される。但し、基数Ｐ３をユーザ単位で設定するように変形することもできる。また、優先度Ｐ４は、ボリューム毎に計算され、個々のボリューム名に対応付けて管理テーブルに記録される。また、粒度Ｐ５は、ＲＡＩＤ装置毎に設定され、個々のＲＡＩＤ名に対応付けて管理テーブルに記録される。そして、ランクＲは、ボリューム毎に決定される。
【００８９】
（優先度Ｐ４の計算方法、及びランクＲの決定方法）
優先度Ｐ４は、ユーザ毎に計算された優先度の和である。例えば、ディスク制御部１０８は、ボリュームＶ１に関し、グループＧｒｏｕｐ１に属するユーザＵｓｅｒ１について頻度Ｐ１を計測し、計測した頻度Ｐ１、管理テーブルに設定された係数Ｐ２及び基数Ｐ３を用いてユーザＵｓｅｒ１の優先度を計算する。図１２の例において、ユーザＵｓｅｒ１の優先度は４０００（＝３０００×１＋１０００）となる。
【００９０】
また、ディスク制御部１０８は、グループＧｒｏｕｐ１に属するユーザＵｓｅｒ２について頻度Ｐ１を計測し、計測した頻度Ｐ１、管理テーブルに設定された係数Ｐ２及び基数Ｐ３を用いてユーザＵｓｅｒ２の優先度を計算する。図１２の例において、ユーザＵｓｅｒ２の優先度は２０００（＝５００×２＋１０００）となる。
【００９１】
また、ディスク制御部１０８は、グループＧｒｏｕｐ１に属するユーザＵｓｅｒ３について頻度Ｐ１を計測し、計測した頻度Ｐ１、管理テーブルに設定された係数Ｐ２及び基数Ｐ３を用いてユーザＵｓｅｒ３の優先度を計算する。図１２の例において、ユーザＵｓｅｒ３の優先度は３５００（＝５００×３＋２０００）となる。そして、ディスク制御部１０８は、計算したユーザＵｓｅｒ１、Ｕｓｅｒ２、Ｕｓｅｒ３の優先度を合計し、合計値（９５００）をボリュームＶ１の優先度Ｐ４として管理テーブルに記録する。
【００９２】
同様に、ディスク制御部１０８は、ボリュームＶ２の優先度Ｐ４を計算する。図１２の例では、ボリュームＶ２の優先度Ｐ４は５６７０となる。ボリュームＶ１、Ｖ２の優先度Ｐ４が得られると、ディスク制御部１０８は、優先度Ｐ４及び粒度Ｐ５に基づいてボリュームＶ１、Ｖ２のランクＲをそれぞれ決定する。図１２の例では、ボリュームＶ１のランクＲが２に決定され、ボリュームＶ２のランクＲが２に決定される。ランクＲが決定されると、決定されたランクＲに基づいてスペア領域の割合が設定される。
【００９３】
以上、第２実施形態の一変形例（変形例＃１）について説明した。
［２−５．変形例＃２：無アクセス時間の考慮］
次に、図１３及び図１４を参照しながら、第２実施形態の一変形例（変形例＃２）について説明する。図１３は、第２実施形態の一変形例（変形例＃２）に係る管理テーブルの一例を示した図である。図１４は、第２実施形態の一変形例（変形例＃２）に係るディスク管理情報の一例を示した図である。
【００９４】
これまでの説明においては、係数Ｐ２及び基数Ｐ３を予め設定した値に定めて運用することを前提に説明を進めてきた。変形例＃２では、アクセスの無い状態が継続する状況やエラーの発生状況に応じて係数Ｐ２や基数Ｐ３を調整する仕組みについて提案する。例えば、ディスク制御部１０８は、アクセスの無い状態が継続するボリュームの基数を減少させ、エラーの発生頻度が高いディスクに属するボリュームの係数や基数を増加させる。
【００９５】
変形例＃２に係る管理テーブルは、図１３に示すように、無アクセス連続時間Ｔ、時間単位ｔ、及び減少幅Ｗの項目をさらに有する。無アクセス連続時間Ｔは、ボリュームに対してアクセスがない連続的な時間の長さを表す。また、無アクセス連続時間Ｔは、ディスク制御部１０８によりボリューム毎に計測され、ボリューム名に対応付けて管理テーブルに記録される。
【００９６】
時間単位ｔは、無アクセス連続時間Ｔを評価する際に用いる時間の単位である。また、時間単位ｔは、予め設定されて管理テーブルに記録される。減少幅Ｗは、基数Ｐ３を減少させる減少量の単位である。減少幅Ｗは、予め設定されて管理テーブルに記録される。ディスク制御部１０８は、無アクセス連続時間Ｔを時間単位ｔで割った値に減少幅Ｗを乗算し、乗算により得られた値だけ基数Ｐ３を減少させる。つまり、優先度Ｐ４は、「Ｐ１×Ｐ２＋（Ｐ３−Ｗ×（Ｔ／ｔ））」により与えられる。
【００９７】
図１３の例では、ボリュームＶ１の優先度Ｐ４が０（＝０×１＋（１０００−５００×（２０／１０）））となる。同様に、ボリュームＶ２の優先度Ｐ４は１５００（＝５００×１＋（１０００−１００×（０／１０）））となる。
【００９８】
ボリュームＶ１、Ｖ２の優先度Ｐ４が得られると、ディスク制御部１０８は、優先度Ｐ４及び粒度Ｐ５に基づいてボリュームＶ１、Ｖ２のランクＲをそれぞれ決定する。図１３の例では、ボリュームＶ１のランクＲが０に決定され、ボリュームＶ２のランクＲが１に決定される。但し、優先度Ｐ４が０の場合、ランクＲは０に決定される。ランクＲが決定されると、決定されたランクＲに基づいてスペア領域の割合が設定される。なお、この例の場合、ボリュームＶ１はスペア領域に割り当てられない。
【００９９】
上記のように、図１３に例示した管理テーブルを利用すれば、アクセスの無い状態が一定時間継続するボリュームの基数を減少させることができる。
また、ディスク毎に発生したエラーの統計値を考慮して係数Ｐ２及び基数Ｐ３の少なくとも一方を増加させてもよい。例えば、ディスク制御部１０８は、ディスク１０１ａ、１０１ｂ、１０１ｃ、１０１ｄへのアクセス時に発生したエラーログを監視し、過去に発生したエラーの総数Ｅをディスク毎に計算する。また、ディスク制御部１０８は、計算したエラーの総数Ｅをディスク管理情報（図１４を参照）としてメモリ１０５に格納する。
【０１００】
図１４に示すように、ディスク管理情報には、エラー総数Ｅ、評価単位ｅ、増加単位［％］、増加率ｒ、及び所属ボリューム名が含まれる。評価単位ｅ、及び増加単位は、ユーザ又は管理者により予め設定された値である。ディスク制御部１０８は、エラーの総数Ｅを評価単位ｅで割った値を増加単位に乗算して増加率ｒを決定する。図１４の例では、ディスク名ＤＩＳＫ＿Ａの評価値が２（＝１００／５０）であるため、増加率ｒは２０％となる。
【０１０１】
ディスク制御部１０８は、管理テーブルに基づいて優先度を計算する際、ディスク管理情報に含まれる増加率ｒに基づいて管理テーブルに記載された係数Ｐ２及び基数Ｐ３を調整する。例えば、ボリュームＶ１がＤＩＳＫ＿Ａ、ＤＩＳＫ＿Ｂに属する場合、ディスク制御部１０８は、ＤＩＳＫ＿Ａの増加率ｒ（２０％）とＤＩＳＫ＿Ｂの増加率ｒ（１６％）との平均値（１８％）を計算する。そして、ディスク制御部１０８は、計算した増加率ｒの平均値（１８％）だけボリュームＶ１の係数Ｐ２及び基数Ｐ３を増加させる。
【０１０２】
上記のように、図１４に例示したディスク管理情報を利用すれば、ディスクのエラー発生状況に応じて係数Ｐ２及び基数Ｐ３が増加させるため、障害の発生確率が高いディスクのボリュームほどスペア領域の利用割合が多く設定されるようになる。なお、上記の例では、増加率ｒを利用する方法を示したが、割合ではなく増加幅を計算して係数Ｐ２及び基数Ｐ３を増加させる仕組みとすることもできる。また、係数Ｐ２又は基数Ｐ３の一方だけを増加させる仕組みとすることもできる。このような変形についても第２実施形態の技術的範囲に属する。
【０１０３】
以上、第２実施形態の一変形例（変形例＃２）について説明した。
以上、第２実施形態について説明した。
＜３．付記＞
以上説明した実施形態に関し、さらに以下の付記を開示する。
【０１０４】
（付記１）  データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置と、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する制御部と、
を有する、ストレージ装置。
【０１０５】
（付記２）  前記制御部は、前記優先度が高いほど前記使用割合を大きく設定する
付記１に記載のストレージ装置。
（付記３）  前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記管理単位毎に計測されたデータの更新頻度に基づいて設定される
付記１又は２に記載のストレージ装置。
【０１０６】
（付記４）  前記優先度は、前記管理単位毎に設定された重み値を用いて前記更新頻度に重み付けした値に設定される
付記３に記載のストレージ装置。
【０１０７】
（付記５）  前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記単位ボリュームに割り当てられた個々のユーザによるデータの更新頻度に基づいて設定される
付記１又は２に記載のストレージ装置。
【０１０８】
（付記６）  前記優先度は、前記ユーザ毎に設定された第１の重み値、及び前記ユーザが属するグループ毎に設定された第２の重み値を用いて前記更新頻度に重み付けした値に設定される
付記５に記載のストレージ装置。
【０１０９】
（付記７）  前記制御部は、データの更新がない時間の長さを前記管理単位毎に計測し、当該計測の結果に応じて前記優先度を低減させる
付記１〜６のいずれかに記載のストレージ装置。
【０１１０】
（付記８）  前記制御部は、
前記第２の記憶領域に前記使用割合を設定した前記管理単位に属するデータを前記第１の記憶領域に格納する際に当該データを前記第２の記憶領域に格納し、
障害が発生した前記記憶装置が有する前記第１の記憶領域のデータを復旧する場合、障害が発生していない前記記憶装置が有する前記第２の記憶領域に格納されている復旧対象のデータを用いて復旧処理を実行する
付記１〜７のいずれかに記載のストレージ装置。
【０１１１】
（付記９）  データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を有するストレージ装置が、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する
ストレージ装置の制御方法。
【０１１２】
（付記１０）  データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を有するストレージ装置を制御するコンピュータに、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する
処理を実行させる、プログラム。
【０１１３】
（付記１１）  データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を有するストレージ装置を制御するコンピュータに、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する
処理を実行させる、プログラムが記録された、前記コンピュータにより読み取り可能な記録媒体。
【０１１４】
（付記１２）  前記優先度が高いほど前記使用割合が大きく設定される
付記９に記載のストレージ装置の制御方法。
（付記１３）  前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記管理単位毎に計測されたデータの更新頻度に基づいて設定される
付記９又は１２に記載のストレージ装置の制御方法。
【０１１５】
（付記１４）  前記優先度は、前記管理単位毎に設定された重み値を用いて前記更新頻度に重み付けした値に設定される
付記１３に記載のストレージ装置の制御方法。
【０１１６】
（付記１５）  前記管理単位は、前記複数の記憶装置に設定された単位ボリュームであり、
前記優先度は、前記単位ボリュームに割り当てられた個々のユーザによるデータの更新頻度に基づいて設定される
付記９又は１２に記載のストレージ装置の制御方法。
【０１１７】
（付記１６）  前記優先度は、前記ユーザ毎に設定された第１の重み値、及び前記ユーザが属するグループ毎に設定された第２の重み値を用いて前記更新頻度に重み付けした値に設定される
付記１５に記載のストレージ装置の制御方法。
【０１１８】
（付記１７）  データの更新がない時間の長さが前記管理単位毎に計測され、当該計測の結果に応じて前記優先度が低減される
付記９、１２〜１６のいずれかに記載のストレージ装置の制御方法。
【０１１９】
（付記１８）  前記第２の記憶領域に前記使用割合を設定した前記管理単位に属するデータが前記第１の記憶領域に格納する際に、当該データが前記第２の記憶領域に格納され、
障害が発生した前記記憶装置が有する前記第１の記憶領域のデータが復旧される場合、障害が発生していない前記記憶装置が有する前記第２の記憶領域に格納されている復旧対象のデータを用いて復旧処理が実行される
付記９、１２〜１７のいずれかに記載のストレージ装置の制御方法。
【０１２０】
（付記１９）  前記制御部は、一の前記記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する場合、一の前記記憶装置に格納されるデータが属する前記管理単位以外の前記管理単位について前記優先度に基づく前記使用割合を設定する
付記１〜８のいずれかに記載のストレージ装置。
【０１２１】
（付記２０）  前記記憶装置と、前記管理単位と、前記優先度と、前記使用割合とを対応付ける管理テーブルを記憶する記憶部をさらに有し、
前記制御部は、前記管理テーブルを参照して前記管理単位毎の使用割合を設定する
付記１〜８、１９のいずれかに記載のストレージ装置。
【０１２２】
（付記２１）  データが格納される第１の記憶領域及び前記第１の記憶領域に格納された一部のデータと同じデータが格納される第２の記憶領域をそれぞれが有し、同じ管理単位に属する複数のデータが分散して格納される複数の記憶装置を管理するストレージ制御装置であって、
前記管理単位毎に設定された優先度に基づき、前記複数の記憶装置が有する前記第２の記憶領域について前記管理単位毎の使用割合を設定する制御部を有する
ストレージ制御装置。
【符号の説明】
【０１２３】
１０  ストレージ装置
１１ａ、１１ｂ、１１ｃ、１１ｄ  記憶装置
１２  制御部
Ａ１、Ａ２、Ａ３、Ｂ１、Ｂ２、Ｂ３  データ
Ｐ  優先度
Ｒ１１、Ｒ１２、Ｒ１３、Ｒ１４  第１の記憶領域
Ｒ２１、Ｒ２２、Ｒ２３、Ｒ２４  第２の記憶領域
Ｖ１、Ｖ２  管理単位
【図１】
2015158768.tif 000003
【図２】
2015158768.tif 000004
【図３】
2015158768.tif 000005
【図４】
2015158768.tif 000006
【図５】
2015158768.tif 000007
【図６】
2015158768.tif 000008
【図７】
2015158768.tif 000009
【図８】
2015158768.tif 000010
【図９】
2015158768.tif 000011
【図１０】
2015158768.tif 000012
【図１１】
2015158768.tif 000013
【図１２】
2015158768.tif 000014
【図１３】
2015158768.tif 000015
【図１４】
2015158768.tif 000016