(57)【要約】【課題】  必要となる予備記憶装置を削減する。【解決手段】  本発明の管理装置は、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定する判定手段と、判定された記憶域プールに予備記憶装置を組み込む管理手段とを含む。【選択図】  図１
2018120382.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む前記記憶域プールを判定する判定手段と、
判定された前記記憶域プールに前記予備記憶装置を組み込む管理手段と
を含む管理装置。
【請求項２】
前記記憶装置及び前記予備記憶装置における障害状態に対応して前記記憶装置及び前記予備記憶装置に保存されているデータを保存する予備領域を、前記記憶装置及び前記予備記憶装置に分散して配置させる配置手段をさらに含み、
前記管理手段が、前記予備記憶装置を前記記憶域プールに組み込む際に前記配置手段に前記予備領域の配置を依頼する
請求項１に記載の管理装置。
【請求項３】
前記判定手段が、
前記記憶装置の前記障害状態を基に前記予備記憶装置を組み込む前記記憶域プールを判定する
請求項２に記載の管理装置。
【請求項４】
前記判定手段が、
前記障害状態として前記記憶装置の障害の発生回数を用いる
請求項３に記載の管理装置。
【請求項５】
前記判定手段が、
複数の前記障害状態と、複数の前記障害状態のそれぞれに対応した重みとを基に判定する
請求項３又は４に記載の管理装置。
【請求項６】
前記判定手段が、
前記記憶域プールに縮退が発生した場合に、前記縮退の原因となった前記障害状態に対応する前記重みを増加させる
請求項５に記載の管理装置。
【請求項７】
ホストからのコマンドを処理するホスト処理手段と、
データを保存するキャッシュと、
前記キャッシュを制御するキャッシュ制御手段と、
前記記憶装置及び前記予備記憶装置を制御する記憶装置制御手段と
をさらに含む請求項１ないし６のいずれか１項に記載の管理装置。
【請求項８】
複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む前記記憶域プールを判定し、
判定された前記記憶域プールに前記予備記憶装置を組み込む
管理方法。
【請求項９】
複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む前記記憶域プールを判定する処理と、
判定された前記記憶域プールに前記予備記憶装置を組み込む処理と
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置の管理に関し、特に、複数の記憶装置を管理する管理装置、及び、管理方法などに関する。
【背景技術】
【０００２】
必要となるデータ量の増加に伴い、情報処理システムに用いられるＨａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ（ＨＤＤ）及びＳｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ（ＳＳＤ）などの記憶装置の数及び各装置の記憶容量が増加している。これらの増加に伴い、記憶装置の信頼性及びアクセス性能の向上を図るために、ＨＤＤなどの記憶装置を利用する際には、Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ（ＲＡＩＤ）技術が用いられている。ＲＡＩＤは、不良となった記憶装置におけるデータを復旧することができる（例えば、特許文献１ないし３を参照）。
【０００３】
特許文献１に記載の発明は、ＲＡＩＤにおけるランクを構成する記憶装置において、故障している記憶装置を特定する発明である。
【０００４】
特許文献２に記載の発明は、物理ディスク装置における機能不全の予兆を検出して、対応しているメモリディスクを切り替える発明である。
【０００５】
特許文献３に記載の発明は、ハードディスク装置におけるＳｅｌｆ−Ｍｏｎｉｔｏｒｉｎｇ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｒｅｐｏｒｔｉｎｇ  Ｔｅｃｈｎｏｌｏｇｙ（ＳＭＡＲＴ）を用いて故障発生の可能性の高いディスクを判定する発明である。
【０００６】
しかし、ＨＤＤ及びＳＳＤの大容量化に伴い、データを復旧するための時間が延びている。そこで、復旧時間を削減するための技術が提案されている（例えば、特許文献４を参照）。
【０００７】
特許文献４に記載の発明は、物理的な記憶装置（Ｐｈｙｓｉｃａｌ  Ｓｔｏｒａｇｅ  Ｄｅｖｉｃｅ（ＰＤ））の組合せである記憶域プール（ＰＯＯＬ）を構築する。さらに、特許文献４に記載の発明は、記憶域プールの構築時に、全ての記憶域プールに将来的に膨大化するデータ用の領域（業務未使用領域）のための記憶装置を組み込んでおく。つまり、特許文献４に記載の発明は、全ての記憶域プールに予備領域として予備記憶装置（Ｓｐａｒｅ  Ｓｔｏｒａｇｅ  Ｄｅｖｉｃｅ（ＳＤ））を組み込む。
【０００８】
未使用な領域は、領域に対して通常処理におけるデータのアクセスが発生しない。つまり、未使用な領域は、通常処理との競合が発生しない。そこで、特許文献４に記載の発明は、データの復旧において、記憶域プールに予め組み込まれた未使用の領域を用いて復旧時間を短縮している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００７−２４１８３７号公報
【特許文献２】特開２００４−１７１３７３号公報
【特許文献３】特開２０１０−１２８７７３号公報
【特許文献４】特開２０１６−０３８７６７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ただし、特許文献４に記載の発明は、全ての記憶域プールに対して、予備記憶装置が必要である。
【００１１】
図１４は、特許文献４における各記憶域プールの予備記憶装置を示す図である。図１４において、ＰＤ＃ｘｙ（ｘ、ｙは任意に数字）が、プールを構成する記憶装置である。ＳＤ＃ｐｑ（ｐ、ｑは任意の数字）が、予備記憶装置である。ただし、予備記憶装置は、縮退などが発生しない場合、使用されない装置である。つまり、特許文献４は、通常状態において使用されないが記憶装置が多いという問題点があった。
【００１２】
特許文献１ないし３に記載の発明は、各記憶装置に対する発明のため、上記の記憶域プールにおける予備記憶装置の問題点を解決できない。
【００１３】
本発明の目的は、上記問題点を解決し、必要となる予備記憶装置を削減する管理装置などを提供することにある。
【課題を解決するための手段】
【００１４】
本発明の一形態における管理装置は、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定する判定手段と、判定された記憶域プールに予備記憶装置を組み込む管理手段とを含む。
【００１５】
本発明の一形態における管理方法は、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定し、判定された記憶域プールに予備記憶装置を組み込む。
【００１６】
本発明の一形態におけるプログラムは、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定する処理と、判定された記憶域プールに予備記憶装置を組み込む処理とをコンピュータに実行させる。
【発明の効果】
【００１７】
本発明に基づけば、必要となる予備記憶装置を削減するとの効果を奏することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、第１の実施形態に係る管理装置の構成の一例を示すブロック図である。
【図２】図２は、障害状態の一例を示す図である。
【図３】図３は、予備記憶装置の組み込みを説明するための図である。
【図４】図４は、予備領域の組み込みを説明するための図である。
【図５】図５は、縮退が発生した状態を示す図である。
【図６】図６は、予備領域の解放を説明するための図である。
【図７】図７は、記憶域プールに予備記憶装置を組み込む動作の一例を示すフローチャートである。
【図８】図８は、予備記憶装置の組替えを説明するための図である。
【図９】図９は、障害状態を更新する動作の一例を示すフローチャートである。
【図１０】図１０は、２つの予備記憶装置を用いた組み込みを説明するための図である。
【図１１】図１１は、図１０の下部の状態から縮退が発生した状態を示す図である。
【図１２】図１２は、第１の実施形態の概要の一例である管理装置の構成の一例を示すブロック図である。
【図１３】図１３は、ハードウェア構成の一例である情報処理装置の構成の一例を示すブロック図である。
【図１４】図１４は、特許文献４における各プールの予備記憶装置を示す図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施形態について図面を参照して説明する。
【００２０】
なお、各図面は、本発明の実施形態を説明するためのものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を、省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。
【００２１】
以下の説明において、各実施形態として、ホストと接続されて、ＨＤＤ又はＳＤＤなどの複数の記憶装置を管理する管理装置を用いて説明する。例えば、管理装置は、ディスクアレイの制御装置である。ただし、各実施形態は、ディスクアレイに限定されない。
【００２２】
＜第１の実施形態＞
以下、図面を参照して、本発明における第１の実施形態について説明する。
【００２３】
第１の実施形態に係る管理装置１０は、図示しないホストと記憶装置との間におけるデータの送信及び受信を管理する。さらに、管理装置１０は、複数の記憶装置から構成された記憶域プールを管理する。
【００２４】
［構成の説明］
まず、図面を参照して、第１の実施形態に係る管理装置１０の構成を説明する。
【００２５】
図１は、第１の実施形態に係る管理装置１０の構成の一例を示すブロック図である。
【００２６】
図１に示されているように、管理装置１０は、ホスト処理部１３０と、キャッシュ制御部１４０と、管理部１５０と、キャッシュ１６０と、記憶装置制御部１７０と、判定部１９０と、配置部１１０とを含む。
【００２７】
ホスト処理部１３０は、ホストからコマンドを受信する。そして、ホスト処理部１３０は、コマンドに対応した処理を実行する。
【００２８】
ホスト処理部１３０は、ホストからライトコマンドを受信した場合、キャッシュ制御部１４０を介してキャッシュ１６０にライトデータを格納し、ホストにコマンドの終了を報告する。そして、ホスト処理部１３０は、管理部１５０に、キャッシュ１６０に格納したデータの記憶装置への書き込みを依頼する。
【００２９】
あるいは、ホスト処理部１３０は、ホストからリードコマンドを受信した場合、管理部１５０、記憶装置制御部１７０、及び／又はキャッシュ制御部１４０を介して記憶装置からキャッシュ１６０にデータを読み出し、読み出したデータをホストに送信する。
【００３０】
このように、ホスト処理部１３０は、ホストとキャッシュ１６０とのデータの転送を処理する。
【００３１】
キャッシュ制御部１４０は、キャッシュ１６０におけるデータの格納動作を制御する。より詳細には、キャッシュ制御部１４０は、キャッシュ１６０に格納されるデータのアドレスを管理する。
【００３２】
キャッシュ１６０は、キャッシュ制御部１４０に制御されてデータを格納する。さらに、キャッシュ１６０は、キャッシュ制御部１４０に制御されて、ホスト処理部１３０からホストのデータを受信し、ホスト処理部１３０にホストのデータを送信する。あるいは、キャッシュ１６０は、キャッシュ制御部１４０に制御されて、記憶装置制御部１７０を介して記憶装置にデータを送信し、記憶装置制御部１７０を介して記憶装置からデータを受信する。
【００３３】
記憶装置制御部１７０は、管理部１５０の依頼を基に、キャッシュ１６０と記憶装置とのデータ転送を制御及び仲介する。
【００３４】
管理部１５０は、記憶装置制御部１７０を用いて、記憶装置を管理する。具体的には、管理部１５０は、ホストから受信したデータを保存する記憶装置を管理している。
【００３５】
さらに、管理部１５０は、記憶装置の管理として、複数の記憶装置を用いて構成された記憶域プールを用いて、複数の記憶装置を管理する。
【００３６】
なお、本実施形態において、記憶域プールは、後ほど説明するように、予備記憶装置を含む場合と、含まない場合とがある。
【００３７】
さらに、管理部１５０は、判定部１９０の判定を基に、記憶域プールにおける予備記憶装置の組み込みと解放を管理する。予備記憶装置とは、記憶域プールにおけるデータを保存する領域を追加するための記憶装置である。
【００３８】
管理部１５０は、予備記憶装置の組み込みにおいて、配置部１１０に予備領域の配置を依頼する。また、管理部１５０は、予備記憶装置の解放において、配置部１１０に予備領域の解放を依頼する。予備領域とは、記憶装置及び／又は予備記憶装置の障害に対応して、障害が発生した記憶装置及び／又は予備記憶装置に保存されているデータを保存する領域である。
【００３９】
なお、領域とは、記憶装置においてデータを記録する単位である。本実施形態において、領域の大きさは、任意である。例えば、各領域は、記憶装置における処理の最小単位（例えば、セクタ）でもよく、複数の処理単位（例えば、４セクタ、又は８セクタ）でもよい。
【００４０】
さらに、管理部１５０は、記憶装置の障害（エラー）などに基づく記憶域プールにおける縮退（ＲＥＤＵＣＴＩＯＮ）を管理する。
【００４１】
判定部１９０は、予備記憶装置を組み込む記憶域プールを判定する。
【００４２】
例えば、管理装置１０が予備記憶装置を容量追加のために用いる場合、判定部１９０は、残り容量（未使用の容量）が所定の値より少ない記憶域プールを、予備記憶装置を組み込む記憶域プールと判定してもよい。
【００４３】
あるいは、管理装置１０が予備記憶装置を障害時の退避用記憶装置として追加する場合、判定部１９０は、記憶域プールに含まれる記憶装置の障害状態に対応して、予備記憶装置を組み込む記憶域プールを判定してもよい。
【００４４】
以下では、一例として、記憶装置の障害状態に対応した場合を説明する。ただし、本実施形態は、以下の説明に限定されない。
【００４５】
判定部１９０は、記憶域プールに含まれる記憶装置の障害状態を監視する。例えば、判定部１９０は、記憶装置制御部１７０を介して記憶装置の障害状態を取得する。そして、判定部１９０は、取得した障害状態を基に、各記憶域プールの状態（以下、「プール状態」と呼ぶ）を算出する。そして、判定部１９０は、プール状態を基に、予備記憶装置を組み込む記憶域プールを判定する。
【００４６】
図２は、障害状態の一例を示す図である。図２の第１列が、記憶域プールを示す。第２列が、各記憶域プールに含まれる記憶装置を示す。そして、第３列から第５列が、各記憶装置における障害状態（ＥＲＲＯＲ  ＳＴＡＴＥ）を示す。つまり、図２の各行が、記憶域プール（ＰＯＯＬ＃０など）に含まれる各記憶装置（ＰＤ＃００など）における障害状態である。図２は、障害状態の一例として、エラーの回数を示している。例えば、１行目は、記憶域プール（ＰＯＯＬ＃０）の記憶装置（ＰＤ＃００）における３種類のエラーの回数である。具体的な回数は、次のとおりである。
（１）チェック条件（ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ）：ＰＣ００［回］
（２）タイムアウト（ＴＩＭＥＯＵＴ）：ＰＴ００［回］
（３）その他のエラー（ＯＴＨＥＲ  ＥＲＲＯＲ）：ＰＥ００［回］
第６列が、判定部１９０が判定した各記憶域プールにおけるプール状態（Ｓｔａｔｅ＃０など）である。
【００４７】
そして、判定部１９０は、プール状態を基に、予備記憶装置を組み込む記憶域プールを判定する。例えば、判定部１９０は、プール状態としてエラーの合計数を用いる場合、エラーの合計数が多い記憶域プールから予備記憶装置の数の記憶域プールを、予備記憶装置を組み込む記憶域プールと判定する。
【００４８】
ただし、障害は、システムに与える影響の程度が異なる。そこで、判定部１９０は、障害の影響に対応するように、障害に対応した重みを用いて、プール状態を算出してもよい。
【００４９】
例えば、図２に示されている３種類のエラーに対する重みを「ＷＣ」、「ＷＴ」、及び「ＷＥ」とする。詳細には、ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮに対応する重みをＷＣ、ＴＩＭＥＯＵＴに対応する重みをＷＴ、ＯＴＨＥＲ  ＥＲＲＯＲに対応する重みをＷＥとする。
【００５０】
そして、判定部１９０は、各エラーに対して上記重みを用いた算出式を用いて、プール状態を算出する。例えば、図２の一番上の記憶域プール（ＰＯＯＬ＃０）のプール状態（Ｓｔａｔｅ＃０）は、次のように算出される。
Ｓｔａｔｅ＃０＝ＷＣ×（ＰＣ００＋ＰＣ０１＋・・・＋ＰＣ０ｎ）＋ＷＴ×（ＰＴ００＋ＰＴ０１＋・・・＋ＯＴ０ｎ）＋ＷＥ×（ＰＥ００＋ＰＥ０１＋・・・＋ＰＥ０ｎ）
障害が多く発生している記憶域プールは、縮退する可能性が高い。そのため、上記のように障害状態を用いて算出されたプール状態は、記憶域プールが縮退となる可能性を示す指標の一例である。以下の説明において、「指標」とは、記憶域プールが縮退となる可能性を示す値とする。指標は、縮退の可能性が大きいほど、大きな値となる。ただし、指標は、縮退の可能性が高いほど、小さくなる値でもよい。このような指標を用いる場合、以下の判断において、「大きい」を「小さい」に置き換えればよい。
【００５１】
なお、指標は、上記の式に限定されない。指標は、例えば、合計数に限らず、算術平均などの記憶装置に数に関連しない値でもよいし、現在から所定時間前までのエラー回数を用いるなど時間を考慮した値でもよい。
【００５２】
判定部１９０は、全ての記憶域プールに対して、上記のような式を用いて指標（縮退となる可能性）を算出する。そして、判定部１９０は、算出した指標の値が大きい方から予備記憶装置の数の記憶域プールを、予備記憶装置を組み込む記憶域プールと判定すればよい。
【００５３】
図３は、予備記憶装置の組み込みを説明するための図である。図３に示されているように、判定部１９０は、全ての記憶域プール（ＰＯＯＬ＃０・・・ＰＯＯＬ＃ｍ・・・（ｍは、任意の整数））の中から予備記憶装置（ＳＤ＃ｘ０）を組み込む記憶域プールを判定する。
【００５４】
ただし、本実施形態に係る判定方法は、上記に限定されない。例えば、判定部１９０は、算出した指標の値が所定の閾値より大きい記憶域プールを選択し、選択した記憶域プールの中から、ランダムに予備記憶装置を組み込む記憶域プールを判定してもよい。
【００５５】
なお、障害状態は変化する。そのため、判定部１９０は、所定の周期で上記の判定を繰り返すことが望ましい。
【００５６】
予備記憶装置を組み込む記憶域プールが変化した場合、管理部１５０は、後ほど説明するように、配置部１１０を用いて、予備記憶装置を解放する記憶域プールと予備記憶装置を組み込む予備記憶域プールとにおける予備領域を変更する。
【００５７】
配置部１１０は、管理部１５０から記憶域プール内の予備領域の組み込み又は解放の指示を受けると、予備領域を組み込み又は解放を実行する。配置部１１０における予備領域の組み込み方法は、記憶域プールの構成に合わせて選択される。
【００５８】
以下、図面を参照して、予備領域の組み込み及び解放の一例を説明する。
【００５９】
図４は、予備領域の組み込みを説明するための図である。図４において、記憶装置ＰＤ＃０からＰＤ＃５が、記憶域プールを構成する記憶装置（例えば、ＨＤＤ又はＳＤＤ）である。
【００６０】
図４の上部は、その記憶域プールを構成する記憶装置と予備記憶装置（ＳＤ＃０）との領域とを示す。なお、以下の説明において、記憶域プールは、ＲＡＩＤ６を用いるとする。そのため、パリティは、２つ（Ｐ及びＱ）となる。ただし、本実施形態は、ＲＡＩＤ６に限定されない。
【００６１】
図４において、各行が、論理的なデータの組であるストライプを示す。さらに、Ｄ００からＤ６３が、各ストライプにおけるデータを記憶する領域（例えば、セクタ）である。Ｐ０からＰ６、及び、Ｑ０からＱ６が、修復用のデータ（パリティ）を記憶している領域である。ＳＤ００からＳＤ０６が、予備領域である。
【００６２】
管理部１５０は、判定部１９０が予備記憶装置（ＳＤ＃０）を組み込むと判定した記憶域プールに対して、配置部１１０にその記憶域プールにおける予備領域の配置を依頼する。
【００６３】
配置部１１０は、図４の下部に示されているように、予備領域が記憶域プールに含まれる記憶装置及び予備記憶装置に分散するように、記憶域プールにおける予備領域を配置する。
【００６４】
例えば、図４の下部の１行目の「Ｓ００からＤ００への矢印」は、記憶装置ＰＤ＃０の記憶されていたデータＤ００を予備記憶装置ＳＤ＃０に移動することを示している。データの異動後、記憶装置ＰＤ＃０の領域は、予備領域（Ｓ００）として用いられる。２行目から６行目までの矢印も、同様にデータの移動を示す。このように、配置部１１０は、予備領域を記憶域プール内の記憶装置及び予備記憶装置に分散させる。
【００６５】
図４に示されている分散は、全ての記憶装置及び予備記憶装置に予備領域を分散している。ただし、配置部１１０における分散は、図４に示されている例に限定されない。配置部１１０は、分散として、少なくとも、予備記憶装置の数より多い数の装置に予備領域を分散すればよい。例えば、配置部１１０は、予備領域を、予備記憶装置と１台の記憶装置とに分散してもよい。
【００６６】
ただし、予備領域は、記憶装置に障害が発生した場合に、障害装置の領域の代わりにデータを保存するために用いられる。その際、全ての予備領域へのデータの転送が発生する。予備領域を複数の記憶装置及び予備記憶装置に分散させると、その際のアクセスが、複数の装置に分散される。その結果、各装置におけるアクセス負荷が、低減される。そのため、配置部１１０は、予備領域を、可能な範囲で多くの装置に分散させることが望ましい。
【００６７】
なお、配置された予備領域のデータは、管理装置１０が用いられるシステムに沿って設定されればよい。例えば、新たに予備領域として設定された図４の下部の記憶装置（ＰＤ＃０）のＳ００の領域は、システムに合わせて初期化されてもよいし、システムが必要としない場合は何も操作されなくてもよい。
【００６８】
図５は、縮退が発生した状態を示す図である。図５の上部は、記憶装置ＰＤ＃２に障害が発生したことを示す。そこで、管理部１５０は、記憶装置制御部１７０を用いて、障害となった記憶装置ＰＤ＃２のデータを予備領域に移動する。
【００６９】
図５の下部が、データの異動後の状態を示す。管理部１５０は、記憶装置制御部１７０を用いて、記憶装置ＰＤ＃２のデータを予備領域に移動する。ただし、記憶装置ＰＤ＃２が障害となっているため、記憶装置ＰＤ＃２のデータは、読み出せない場合がある。その場合、管理部１５０は、他の記憶装置及び予備記憶装置のデータを基にデータを生成して、生成したデータを予備領域に記憶する。その際、管理部１５０は、適宜、パリティ（Ｐ及びＱ）を用いる。
【００７０】
この結果、記憶域プールは、障害装置が発生した記憶装置（ＰＤ＃２）を除外した利用（縮退での利用）が可能となる。
【００７１】
管理部１５０は、保守などの結果として障害となった記憶装置（ＰＤ＃２）が交換された場合、交換後の記憶装置（ＰＤ＃２）に対するデータの復旧を管理する。具体的には、管理部１５０は、図５の下部に示したデータの移動とは反対方向にデータを移動し、図４の下部に示されている通常状態に戻す。
【００７２】
図６は、予備領域の解放を説明するための図である。
【００７３】
管理部１５０は、記憶域プールから予備装置を解放する場合、配置部１１０に予備領域の解放を指示する。
【００７４】
配置部１１０は、管理部１５０から予備領域の解放の指示を受けると、図６の上部に示されているように、予備記憶装置（ＳＤ＃０）に記憶されているデータを記憶域プールの記憶装置（ＰＤ＃０から＃５）に移動する。例えば、図６の上部の１行目は、予備記憶装置（ＳＤ＃０）に記憶されているデータＤ００を、記憶装置ＰＤ＃０に移動することを示す。配置部１１０は、予備記憶装置（ＳＤ＃０）に記憶されている全てのデータを移動する。
【００７５】
図６の下部は、予備領域を解放した状態を示す。図６の下部に示されているように、予備領域を解放する動作は、予備領域を予備記憶装置に集める動作となる。
【００７６】
なお、図６の場合においても、予備記憶装置において予備領域と設定された領域のデータは、図４の場合と同様に、管理装置１０が用いられるシステムに沿って設定されればよい。
【００７７】
管理部１５０は、予備領域の解放後、予備記憶装置を記憶域プールから解放する。
【００７８】
［動作の説明］
次に、図面を参照して、動作を説明する。
【００７９】
まず、予備記憶装置を組み込む記憶域プールを判定するための動作を説明する。
【００８０】
図７は、記憶域プールに予備記憶装置を組み込む動作の一例を示すフローチャートである。
【００８１】
判定部１９０は、定期的に、記憶域プールに含まれる記憶装置の障害状態を取得する。
【００８２】
そして、判定部１９０は、取得した障害状態を基に、全ての記憶域プールにおけるプール状態を算出する（ステップＳ１０２）。以下の説明では、プール状態として、指標を用いる。
【００８３】
判定部１９０は、算出された指標が変化している記憶域プールがあるか否かを判定する（ステップＳ１０３）。
【００８４】
変化している記憶域プールがない場合（ステップＳ１０３でＮｏ）、判定部１９０は、ステップＳ１０２に戻る。つまり、管理装置１０は、判定部１９０における判定を繰り返す。
【００８５】
変化している記憶域プールがある場合（ステップＳ１０３でＹｅｓ）、判定部１９０は、指標の値が大きい方から全ての記憶域プールに対して、以下の動作を繰り返す（ステップＳ１０４）。
【００８６】
判定部１９０は、未処理の記憶域プールの中で指標の値が最も大きい記憶域プールを選択する。そして、判定部１９０は、選択した記憶域プールに予備記憶装置が組み込まれているか否かを判定する（ステップＳ１０５）。
【００８７】
予備記憶装置が組み込み済みの場合（ステップＳ１０５でＹｅｓ）、判定部１９０は、次の記憶域プールを処理に進む。
【００８８】
予備記憶装置が組み込まれていない場合（ステップＳ１０５でＮｏ）、判定部１９０は、利用可能な予備記憶装置があるか否かを判定する（ステップＳ１０６）。具体的には、判定部１９０は、管理部１５０に、利用可能な予備記憶装置（例えば、未使用の予備記憶装置）があるか否かを問い合わせる。
【００８９】
組み込み可能な予備記憶装置がある場合（ステップＳ１０６でＹｅｓ）、判定部１９０は、管理部１５０に対象となっている記憶域プールに予備記憶装置の組み込みを依頼する。管理部１５０は、配置部１１０を用いて予備記憶装置を組み込む（ステップＳ１０８）。
【００９０】
利用可能な予備記憶装置がない場合（ステップＳ１０６でＮｏ）、判定部１９０は、次のように動作する。
【００９１】
ここで、指標は、縮退の可能性の表す。そのため、管理装置１０は、予備記憶装置を、指標の大きな記憶域プールから割り当てる。また、判定部１９０は、指標が大きな記憶域プールから処理するため、処理対象の記憶域プールの指標は、未処理の記憶域プールの指標以上である。そこで、利用可能な予備記憶装置がない場合、判定部１９０は、未処理の記憶域プールから予備記憶装置が割り当てられている記憶域プールを抽出する。そして、判定部１９０は、抽出した記憶域プールの予備記憶装置を、対象となっている記憶域プールに割り当てるように管理部１５０に依頼する。
【００９２】
詳細には、管理装置１０は、次のように動作する。
【００９３】
利用可能な予備記憶装置がない場合（ステップＳ１０６でＮｏ）、判定部１９０は、予備記憶装置を解放可能な記憶域プールがあるか否かを判定する（ステップＳ１０９）。詳細には、判定部１９０は、管理部１５０を用いて、未処理の記憶域プールの中から予備記憶装置が組み込まれている記憶域プールがあるか否かを判定する。
【００９４】
ここで、記憶域プールがない場合、判定部１９０は、予備記憶装置を解放する記憶域プールがないと判定する（ステップＳ１０９でＮｏ）。この場合、判定部１９０は、次の記憶域プールの処理に進む。
【００９５】
記憶域プールがある場合（ステップ１０９でＹｅｓ）、判定部１９０は、未処理の記憶域プールの中からの予備記憶装置を解放する記憶域プールを選択する。例えば、判定部１９０は、未処理の記憶域プールの中から予備記憶装置が組み込まれている記憶域プールを抽出し、抽出した記憶域プールの中で指標が最も小さい記憶域プールを選択する。そして、判定部１９０は、管理部１５０に、選択した記憶域プールの予備記憶装置の解放を依頼する（ステップＳ１０７）。
【００９６】
そして、判定部１９０は、管理部１５０に、処理対象の記憶域プールに解放した予備記憶装置の組み込みを依頼する（ステップＳ１０８）。組み込み後、判定部１９０は、次の記憶域プールを処理する。
【００９７】
図８は、予備記憶装置の組替えを説明するための図である。図８において、予備記憶装置（図８のＳＤ＃ｘ０）は、第１の記憶域プール（ＰＯＯＬ＃０）に組み込まれている。第２の記憶域プール（ＰＯＯＬ＃１）の指標は、第１の記憶域プールの指標より大きいとする。その場合、判定部１９０は、第１の記憶域プールに組み込まれている予備記憶装置を第２の記憶域プールに組み込むと判定する。
【００９８】
なお、予備記憶装置（ＳＤ＃ｘ０）は、ＰＯＯＬ＃０に組み込まれている場合、ＰＯＯＬ＃０の予備記憶装置となるため、「ＳＤ＃００」として示されている。また、予備記憶装置（ＳＤ＃ｘ０）は、第１の記憶域プール（ＰＯＯＬ＃０）から解放され、第２の記憶域プール（ＰＯＯＬ＃１）に組み込まれた場合、ＰＯＯＬ＃１の予備記憶装置となるため、「ＳＤ＃１０」として示されている。
【００９９】
管理装置１０は、全ての記憶域プールに対して上記処理を繰り返す。
【０１００】
全ての記憶域プールを処理すると、判定部１９０は、ステップＳ１０２に戻る。つまり、管理装置１０は、処理を繰り返す。
【０１０１】
図７は、全ての記憶域プールに対する処理である。ただし、管理装置１０は、指標が大きな方から記憶域プールに予備記憶装置を組み込む。そのため、予備記憶装置の数の記憶域プールに予備記憶装置が組み込まれると、それ以降の記憶域プールは、予備記憶装置が組み込まれない。つまり、管理装置１０は、指標が大きい方から予備記憶装置の数の記憶域プールに対して、予備記憶装置を組み込む。そのため、例えば、管理装置１０は、全ての記憶域プールに対してではなく、予備記憶装置の数だけ、図７に示されている動作を繰り返してもよい。
【０１０２】
このように、管理装置１０の動作は、図７に限定されない。
【０１０３】
次に、図面を参照して、障害状態及びエラーに対する重みの値を更新する動作について説明する。
【０１０４】
図９は、障害状態を更新する動作の一例を示すフローチャートである。
【０１０５】
記憶装置制御部１７０が記憶装置における障害を検出すると、判定部１９０に対して障害状態を通知する。あるいは、判定部１９０が、記憶装置制御部１７０に障害状態を問い合わせてもよい。
【０１０６】
以下の説明において、障害は、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」、「ＴＩＭＥＯＵＴ」、及び「ＯＴＨＥＲ  ＥＲＲＯＲ」とする。ただし、これは、本実施形態に係る管理装置１０における障害を限定するものではない。本実施形態に係る管理装置１０は、他の障害を検出してもよく、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」及び／又は「ＴＩＭＥＯＵＴ」を他の障害に含めてもよい。
【０１０７】
判定部１９０は、以下の動作を繰り返す。以下で説明するように、判定部１９０は、記憶装置制御部１７０から障害状態の通知を受けた場合と、受けていない場合とで、異なる動作を実行する。
【０１０８】
まず、判定部１９０は、障害状態を受信したか否かを判定する（ステップＳ１２１）。
【０１０９】
障害状態を受信した場合（ステップＳ１２１でＹｅｓ）、判定部１９０は、受信した障害状態の種類を判定する（ステップＳ１２２）。
【０１１０】
そして、判定部１９０は、障害が発生した記憶装置の障害状態を更新する。詳細には、判定部１９０は、次のように動作する。
【０１１１】
障害状態が「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」の場合、判定部１９０は、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」の障害状態（例えば、エラーの発生回数）を更新する（ステップＳ１２３）。
【０１１２】
障害状態が、「ＴＩＭＥＯＵＴ」の場合、判定部１９０は、「ＴＩＭＥＯＵＴ」の障害状態（例えば、エラーの発生回数）を更新する（ステップＳ１２５）。
【０１１３】
障害状態がその他エラー（Ｏｔｈｅｒ  Ｅｒｒｏｒ）の場合（つまり、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」及び「ＴＩＭＥＯＵＴ」でない場合）、判定部１９０は、「ＯＴＨＥＲ  ＥＲＲＯＲ」の障害状態を更新する(ステップＳ１２６)。この場合も、「ＯＴＨＥＲ  ＥＲＲＯＲ」の障害状態は、例えば、エラーの発生回数である。
【０１１４】
判定部１９０は、障害状態の更新後、ステップＳ１２１に戻る。
【０１１５】
障害状態を受信していない場合（ステップＳ１２１でＮｏ）、判定部１９０は、障害の結果として、新たに縮退の状態が発生した記憶域プールがあるか否かを判定する（ステップＳ１２７）。具体的には、判定部１９０は、管理部１５０に、新たな縮退の発生を問い合わせる。
【０１１６】
縮退が発生していない場合（ステップＳ１２７でＮｏ）、判定部１９０は、ステップＳ１２１に戻る。つまり、判定部１９０は、処理を繰り返す。
【０１１７】
縮退が発生している場合（ステップＳ１２７でＹｅｓ）、判定部１９０は、縮退した記憶域プールにおける指標の算出に用いる重みの値を更新する。具体的には、判定部１９０は、縮退の原因となったエラーの重みを増加させる。
【０１１８】
例えば、発生回数が最も多いエラーは、縮退の要因と推定される。そこで、判定部１９０は、次のように動作してもよい。
【０１１９】
判定部１９０は、縮退が発生した記憶域プールにおける障害状態の中で、発生回数が最大の障害状態（以下、「最大障害」と呼ぶ）の種類を判定する（ステップＳ１２８）。
【０１２０】
最大障害が「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」の場合、判定部１９０は、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」の重みの値を大きくする（ステップＳ１２９）。例えば、判定部１９０は、図２の説明に用いた「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」の重み（ＷＣ）の値を増やす。
【０１２１】
最大障害が「ＴＩＭＥＯＵＴ」の場合、判定部１９０は、「ＴＩＭＥＯＵＴ」の重みの値を大きくする（ステップＳ１３１）。例えば、判定部１９０は、図２の説明の用いた「ＴＩＭＥＯＵＴ」の重み（ＷＴ）の値を増やす。
【０１２２】
最大障害が「ＯＴＨＥＲ  ＥＲＲＯＲ」の場合（つまり、「ＣＨＥＣＫ  ＣＯＮＤＩＴＩＯＮ」及び「ＴＩＭＥＯＵＴ」でない場合）、判定部１９０は、「ＯＴＨＥＲ  ＥＲＲＯＲ」の重みの値を大きくする（ステップＳ１３２）。例えば、判定部１９０は、図２の説明の用いた「ＯＴＨＥＲ  ＥＲＲＯＲ」の重み（ＷＥ）の値を増やす。
【０１２３】
各重みにおける増加量は、任意である。各重みは、１つずつ増やしてもよく、所定の値毎に増やしてもよい。
【０１２４】
ただし、縮退の原因は、必ずしも発生回数に関連するとは限らない。そのため、判定部１９０の動作は、上記とは異なってもよい。例えば、通信不能のように、１度の発生でも縮退となる障害がある。このような重大な障害の重みは、通常、他の重みに対して、最初から大きな値となっている。そのため、判定部１９０は、そのような最初から大きな重みについては、修正しなくてもよい。
【０１２５】
判定部１９０は、重みを更新後、ステップＳ１２１に戻る。つまり、判定部１９０は、処理を繰り返す。
【０１２６】
ここまでの説明において、管理装置１０は、各記憶域プールに、１つの予備記憶装置を組み込んでいる。しかし、管理装置１０が記憶域プールに組み込む予備記憶装置の数は、１つに限定されない。管理装置１０は、２つ以上の予備記憶装置を、記憶域プールに組み込んでもよい。
【０１２７】
図１０は、２つの予備記憶装置を用いた組み込みを説明するための図である。
【０１２８】
図１０において、記憶装置ＰＤ＃０からＰＤ＃５が、記憶域プールを構成する記憶装置（例えば、ＨＤＤ又はＳＤＤ）である。
【０１２９】
図１０の上部は、その記憶域プールと、２つの予備記憶装置（ＳＤ＃０及び＃１）とを示す。
【０１３０】
図１０において、各行が、論理的なデータの組であるストライプを示す。Ｄ００からＤ６３が、各ストライプにおけるデータを記憶している領域（例えば、セクタ）である。Ｐ０及びＰ６、及び、Ｑ０からＱ６が、修復用のデータ（例えば、パリティ）を記憶している領域である。ＳＤ００からＳＤ１６が、予備領域である。
【０１３１】
配置部１１０は、図１０の下部に示されているように、予備領域が記憶域プールに含まれる記憶装置及び予備記憶装置に分散するように、記憶域プールにおいて予備領域を配置する。
【０１３２】
例えば、図１０の下部の１行目上部の「Ｓ００からＤ００への矢印」は、記憶装置ＰＤ＃０の記憶されていたデータＤ００を予備記憶装置ＳＤ＃０に移動することを示している。データの異動後、記憶装置ＰＤ＃０の領域は、予備領域（Ｓ００）として用いられる。
【０１３３】
１行目下部の「Ｓ１０からＤ１１への矢印」は、記憶装置ＰＤ＃１の記憶されていたデータＤ１０を予備記憶装置ＳＤ＃１に移動することを示している。データの異動後、記憶装置ＰＤ＃１の領域は、予備領域（Ｓ１０）として用いられる。
【０１３４】
２行目から６行目までの矢印も、同様にデータの移動を示す。なお、６行目のプールにおいて、配置部１１０は、まず、記憶装置ＰＤ＃５と予備記憶装置ＳＤ＃０とのデータを移動し、その後、予備記憶装置ＳＤ＃０のデータを予備記憶装置ＳＤ＃１に移動する。その結果、記憶装置ＰＤ＃５のデータ（Ｐ５）が、予備記憶装置ＳＤ＃１に移動している。
【０１３５】
このように、配置部１１０は、予備領域を記憶域プール内の記憶装置に分散させる。
【０１３６】
さらに、配置部１１０における予備領域の組み込みは、上記に限定されず、その他の組み込み方法を用いてもよい。例えば、配置部１１０は、管理装置１０の用いられているＲＡＩＤタイプに応じて、組み込みを実行すればよい。
【０１３７】
図１１は、図１０の下部の状態から縮退が発生した状態を示す図である。図１１の上部は、記憶装置ＰＤ＃２に障害が発生したことを示す。そこで、管理部１５０は、記憶装置制御部１７０を用いて、障害となった記憶装置ＰＤ＃２のデータを予備領域に移動する。
【０１３８】
図１１の下部は、データの異動後の状態を示す。管理部１５０は、記憶装置ＰＤ＃２からデータを読み出せない領域に関しては、他の記憶装置のデータを基にデータを生成して、生成したデータを予備領域に記憶する。
【０１３９】
この結果、記憶域プールは、縮退状態で利用可能となる。ただし、図１１に示す状態は、１組の予備領域（Ｓ００からＳ０６）を含む。そのため、図１１の下部の状態の記憶域プールは、記憶装置又は予備記憶装置において、さらに１台障害が発生しても、データを予備領域に移動した縮退状態での運用が可能である。
【０１４０】
管理部１５０は、保守などの結果として障害となった記憶装置（ＰＤ＃２）が交換された場合、交換後の記憶装置に対するデータの復旧を管理する。
【０１４１】
［効果の説明］
次に、本実施形態の効果について説明する。
【０１４２】
第１の実施形態に係る管理装置１０は、必要となる予備記憶装置を削減するとの効果を奏することができる。
【０１４３】
その理由は、次のとおりである。
【０１４４】
判定部１９０は、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定する。管理部１５０は、判定された記憶域プールに予備記憶装置を組み込む。
【０１４５】
つまり、管理装置１０は、判定された記憶域プールに予備記憶装置を組み込むため、必要となる予備記憶装置の数を記憶域プールの数より削減できる。
【０１４６】
さらに、管理装置１０の判定部１９０は、記憶域プールの含まれる記憶装置の障害状態を基に予備記憶装置を組み込む記憶域プールを判定する。詳細には、管理装置１０は、縮退が発生する可能性の高い記憶域プールに予備記憶装置を組み込む。予備記憶装置が組み込まれた記憶域プールは、縮退が発生しても、予備領域を用いてデータ領域とパリティ領域を維持できる。つまり、管理装置１０は、縮退の可能性が高い記憶域プールに予備記憶装置を組み込む。その結果、管理装置１０は、縮退が発生した場合における信頼性を向上できる。
【０１４７】
さらに、管理装置１０は、障害時の性能の低下を低減するとの効果を奏する。
【０１４８】
その理由は、次のとおりである。
【０１４９】
配置部１１０は、記憶装置及び予備記憶装置における障害状態に対応して記憶装置及び予備記憶装置に保存されているデータを保存する予備領域を、記憶装置及び予備記憶装置に分散して配置させる。
【０１５０】
管理部１５０は、予備記憶装置を記憶域プールに組み込む際に配置部１１０に予備領域の配置を依頼する。
【０１５１】
そのため、記憶装置又は予備記憶装置に障害が発生して予備領域を使用する場合でも、データのアクセスが記憶域プールの複数の記憶装置及び予備記憶装置に分散するためである。
【０１５２】
さらに、管理装置１０は、縮退が発生する可能性の判定を向上するとの効果を奏することができる。
【０１５３】
その理由は、次のとおりである。
【０１５４】
判定部１９０は、記憶装置の障害状態を基に予備記憶装置を組み込む記憶域プールを判定する。判定部１９０は、障害状態として記憶装置の障害の発生回数を用いてもよい。さらに、判定部１９０は、複数の障害状態と、複数の障害状態のそれぞれに対応した重みとを基に判定してもよい。つまり、判定部１９０は、所定の障害を重視した判定を実現できるためである。
【０１５５】
さらに、判定部１９０が、記憶域プールに縮退が発生した場合に、縮退の原因となった障害の状態に対応する重みを増加させる。つまり、判定部１９０は、縮退の原因となるエラーをより重視するように判定するためである。
【０１５６】
［構成の概要］
以上の説明した管理装置１０は、次のように構成される。
【０１５７】
例えば、管理装置１０の各構成部は、ハードウェア回路で構成されてもよい。
【０１５８】
また、管理装置１０において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。
【０１５９】
図１２は、第１の実施形態の概要の一例である管理装置１１の構成の一例を示すブロック図である。
【０１６０】
管理装置１１は、管理部１５０と、判定部１９０とを含む。管理装置１１の各構成は、図示しないネットワークなどを介して、ホスト処理部１３０、キャッシュ制御部１４０、及び記憶装置制御部１７０と同様に動作する構成と接続されている。さらに、管理部１５０は、配置部１１０と同様に動作する構成に接続されている。そして、管理装置１１の各構成は、管理装置１０に含まれる各構成と同様に動作する。
【０１６１】
このように構成された管理装置１１は、管理装置１０と同様の効果を得ることができる。
【０１６２】
その理由は、次のとおりである。
【０１６３】
判定部１９０は、複数の記憶装置を用いて構成された複数の記憶域プールにおいて、データを保存する領域を追加するための予備記憶装置を組み込む記憶域プールを判定する。管理部１５０は、判定された記憶域プールに予備記憶装置を組み込む。
【０１６４】
このように、管理装置１１は、判定された記憶域プールに予備記憶装置を組み込むため、必要となる予備記憶装置の数を記憶域プールの数より削減できる。
【０１６５】
なお、管理装置１１は、本発明の実施形態における最小構成である。
【０１６６】
［ハードウェア構成］
管理装置１０及び管理装置１１のハードウェア構成について、管理装置１０を用いて説明する。
【０１６７】
管理装置１０の複数の構成部は、１つのハードウェアで構成されてもよい。
【０１６８】
また、管理装置１０は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）とを含むコンピュータ装置として実現されてもよい。管理装置１０は、上記構成に加え、さらに、入出力接続回路（ＩＯＣ：Input / Output Circuit）と、ネットワークインターフェース回路（ＮＩＣ：Network Interface Circuit）とを含むコンピュータ装置として実現されてもよい。
【０１６９】
図１３は、ハードウェア構成の一例である情報処理装置６００の構成の一例を示すブロック図である。
【０１７０】
情報処理装置６００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０と、ＮＩＣ６９０を含み、コンピュータ装置を構成している。
【０１７１】
ＣＰＵ６１０は、ＲＯＭ６２０からプログラムを読み込む。そして、ＣＰＵ６１０は、読み込んだプログラムに基づいて、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを制御する。ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図１に示されているホスト処理部１３０と、キャッシュ制御部１４０と、キャッシュ１６０と、管理部１５０と、配置部１１０と、判定部１９０と、記憶装置制御部１７０としての各機能を実現する。
【０１７２】
ＣＰＵ６１０は、各機能を実現する際に、ＲＡＭ６３０又は内部記憶装置６４０を、プログラムの一時記憶媒体として使用してもよい。
【０１７３】
また、ＣＰＵ６１０は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体７００が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、ＣＰＵ６１０は、ＮＩＣ６８０又はＮＩＣ６９０を介して、図示しない外部の装置からプログラムを受け取り、ＲＡＭ６３０に保存して、保存したプログラムを基に動作してもよい。
【０１７４】
ＲＯＭ６２０は、ＣＰＵ６１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ６２０は、例えば、Ｐ−ＲＯＭ（Programmable-ROM）又はフラッシュＲＯＭである。
【０１７５】
ＲＡＭ６３０は、ＣＰＵ６１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ６３０は、キャッシュ１６０として動作してもよい。ＲＡＭ６３０は、例えば、Ｄ−ＲＡＭ（Dynamic-RAM）である。
【０１７６】
内部記憶装置６４０は、情報処理装置６００が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置６４０は、ＣＰＵ６１０の一時記憶装置として動作してもよい。内部記憶装置６４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Solid State Drive）又はディスクアレイ装置である。
【０１７７】
ここで、ＲＯＭ６２０と内部記憶装置６４０は、不揮発性（non-transitory）の記憶媒体である。一方、ＲＡＭ６３０は、揮発性（transitory）の記憶媒体である。そして、ＣＰＵ６１０は、ＲＯＭ６２０、内部記憶装置６４０、又は、ＲＡＭ６３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ６１０は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
【０１７８】
ＩＯＣ６５０は、ＣＰＵ６１０と、入力機器６６０及び表示機器６７０とのデータを仲介する。ＩＯＣ６５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Universal Serial Bus）カードである。さらに、ＩＯＣ６５０は、ＵＳＢのような有線に限らず、無線を用いてもよい。
【０１７９】
入力機器６６０は、情報処理装置６００の操作者からの入力指示を受け取る機器である。入力機器６６０は、例えば、キーボード、マウス又はタッチパネルである。
【０１８０】
表示機器６７０は、情報処理装置６００の操作者に情報を表示する機器である。表示機器６７０は、例えば、液晶ディスプレイである。
【０１８１】
ＮＩＣ６８０及びＮＩＣ６９０は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。具体的には、ＮＩＣ６８０は、ホストとのデータを仲介する。ＮＩＣ６９０は、記憶装置とのデータを仲介する。ＮＩＣ６８０及びＮＩＣ６９０は、例えば、Ｆｉｂｅｒ  Ｃｈａｎｎｅｌカード又はＬＡＮ（Local Area Network）カードである。さらに、ＮＩＣ６８０及びＮＩＣ６９０は、有線に限らず、無線を用いてもよい。
【０１８２】
このように構成された情報処理装置６００は、管理装置１０と同様の効果を得ることができる。
【０１８３】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて管理装置１０と同様の機能を実現できるためである。
【０１８４】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１８５】
１０    管理装置
１１    管理装置
１１０    配置部
１３０    ホスト処理部
１４０    キャッシュ制御部
１５０    管理部
１６０    キャッシュ
１７０    記憶装置制御部
１９０    判定部
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
６９０    ＮＩＣ
７００    記憶媒体
【図１】
2018120382.tif 000003
【図２】
2018120382.tif 000004
【図３】
2018120382.tif 000005
【図４】
2018120382.tif 000006
【図５】
2018120382.tif 000007
【図６】
2018120382.tif 000008
【図７】
2018120382.tif 000009
【図８】
2018120382.tif 000010
【図９】
2018120382.tif 000011
【図１０】
2018120382.tif 000012
【図１１】
2018120382.tif 000013
【図１２】
2018120382.tif 000014
【図１３】
2018120382.tif 000015
【図１４】
2018120382.tif 000016