(57)【要約】【課題】復元するまでの時間を短縮する。【解決手段】実施形態の記憶制御装置は、取得部と、復元制御部と、を備える。取得部は、複数の記憶装置を組み合わせてデータを多重化したシステムに含まれている記憶装置のパーティションが割り当てられた領域の位置を取得する。復元制御部は、複数の記憶装置のうち少なくとも１つの記憶装置が交換された場合に、交換されなかった第１の記憶装置に記憶されたデータを用いて交換された第２の記憶装置のデータを復元する時に、第１の記憶装置のうち、取得部で取得された位置で示されるパーティションが割り当てられた領域に格納されているデータを、第２の記憶装置にコピーする。【選択図】図１
2015084180.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶装置を組み合わせてデータを多重化したシステムに含まれている記憶装置のパーティションが割り当てられた領域の位置を取得する取得部と、
前記複数の記憶装置のうち少なくとも１つの記憶装置が交換された場合に、交換されなかった第１の記憶装置に記憶されたデータを用いて交換された第２の記憶装置のデータを復元する時に、前記第１の記憶装置のうち、前記取得部で取得された前記位置で示される前記パーティションが割り当てられた領域に格納されているデータを、前記第２の記憶装置にコピーする復元制御部と、
を備える記憶制御装置。
【請求項２】
前記取得部は、前記第１の記憶装置のうち、当該第１の記憶装置の論理構造を管理する管理領域を参照して、前記パーティションが割り当てられた領域の位置を取得する、
請求項１に記載の記憶制御装置。
【請求項３】
前記取得部は、前記複数の記憶装置を参照可能なオペレーション・システム上で動作しているプログラムと通信して、前記パーティションが割り当てられた領域の位置を取得する、
請求項１に記載の記憶制御装置。
【請求項４】
前記取得部が取得した前記パーティションが割り当てられた領域の位置を保存する保存部をさらに備え、
前記復元制御部は、前記保存部に保存された前記パーティションが割り当てられた領域の位置に基づいて、前記第１の記憶装置の前記パーティションが割り当てられた領域に格納されているデータを、前記第２の記憶装置にコピーする、
請求項１乃至３のいずれか１つに記載の記憶制御装置。
【請求項５】
前記取得部は、さらに、前記記憶装置に設けられた、メモリの情報を一時的に保存する退避領域の第２の位置を取得し、
前記復元制御部は、さらに、前記複数の記憶装置を参照可能なオペレーション・システムに対して再起動を要求し、再起動した後に前記第１の記憶装置のうち、前記取得部で取得された前記第２の位置で示される前記退避領域以外のデータを、前記第２の記憶装置にコピーする、
請求項１に記載の記憶制御装置。
【請求項６】
前記取得部は、前記オペレーション・システム上で動作しているプログラムと通信して、前記退避領域の前記第２の位置を取得する、
請求項５に記載の記憶制御装置。
【請求項７】
前記取得部は、前記第１の記憶装置の論理構造を管理する管理領域を参照して、前記退避領域の前記第２の位置を取得する、
請求項５に記載の記憶制御装置。
【請求項８】
記憶制御装置で実行される制御方法であって、
複数の記憶装置を組み合わせてデータを多重化したシステムに含まれている記憶装置のパーティションが割り当てられた領域の位置を取得する取得ステップと、
前記複数の記憶装置のうち少なくとも１つの記憶装置が交換された場合に、交換されなかった第１の記憶装置に記憶されたデータを用いて交換された第２の記憶装置のデータを復元する時に、前記第１の記憶装置のうち、前記取得ステップで取得された前記位置で示される前記パーティションが割り当てられた領域に格納されているデータを、前記第２の記憶装置にコピーする復元制御ステップと、
を有する制御方法。
【請求項９】
複数の記憶装置を組み合わせてデータを多重化したシステムに含まれている記憶装置のパーティションが割り当てられた領域の位置を取得する取得ステップと、
前記複数の記憶装置のうち少なくとも１つの記憶装置が交換された場合に、交換されなかった第１の記憶装置に記憶されたデータを用いて交換された第２の記憶装置のデータを復元する時に、前記第１の記憶装置のうち、前記取得ステップで取得された前記位置で示される前記パーティションが割り当てられた領域に格納されているデータを、前記第２の記憶装置にコピーする復元制御ステップと、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、記憶制御装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
従来から、記憶装置の故障等によるデータの喪失を防止するために、ＲＡＩＤなどの多重化技術が一般的に用いられている。
【０００３】
複数の記憶装置間でデータを多重化することで、一台の記憶装置が故障した場合、交換されなかった記憶装置に記憶されているデータを用いることで、新しい記憶装置に元のデータを復元できる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３４６２１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来技術においては、一台の記憶装置が故障して、新しい記憶装置に交換した場合に、記憶装置の全領域がコピーされることになり、復元されるまでに時間を要していた。
【０００６】
本発明は、上記に鑑みてなされたものであって、復元するまでの時間を短縮する記憶制御装置、制御方法、及びプログラムを提案する。
【課題を解決するための手段】
【０００７】
実施形態の記憶制御装置は、取得部と、復元制御部と、を備える。取得部は、複数の記憶装置を組み合わせてデータを多重化したシステムに含まれている記憶装置のパーティションが割り当てられた領域の位置を取得する。復元制御部は、複数の記憶装置のうち少なくとも１つの記憶装置が交換された場合に、交換されなかった第１の記憶装置に記憶されたデータを用いて交換された第２の記憶装置のデータを復元する時に、第１の記憶装置のうち、取得部で取得された位置で示されるパーティションが割り当てられた領域に格納されているデータを、第２の記憶装置にコピーする。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１の実施形態の情報処理装置の構成を示したブロック図である。
【図２】図２は、第１の実施形態の第１のＨＤＤ、第２のＨＤＤ、第３のＨＤＤ、又は第４のＨＤＤの構造の例を示した図である。
【図３】図３は、第１の実施形態にかかる情報処理装置における、ＨＤＤ交換時のデータの復元処理の手順を示すフローチャートである。
【図４】図４は、第２の実施形態にかかる情報処理装置の構成を示したブロック図である。
【図５】図５は、第２の実施形態にかかる情報処理装置における、ＨＤＤ交換時のデータの復元処理の手順を示すフローチャートである。
【図６】図６は、第３の実施形態にかかる情報処理装置の構成を示したブロック図である。
【図７】図７は、第３の実施形態にかかる情報処理装置における、パーティション作成時の処理の手順を示すフローチャートである。
【図８】図８は、第３の実施形態にかかる情報処理装置における、ＨＤＤ交換時のデータの復元処理の手順を示すフローチャートである。
【図９】図９は、第４の実施形態にかかる情報処理装置の構成を示したブロック図である。
【図１０】図１０は、第４の実施形態の第１のＨＤＤ、第２のＨＤＤ、第３のＨＤＤ、又は第４のＨＤＤの構造の例を示した図である。
【図１１】図１１は、第４の実施形態にかかる情報処理装置における、ＨＤＤ交換時のデータの復元処理の手順を示すフローチャートである。
【図１２】図１２は、第５の実施形態にかかる情報処理装置の構成を示したブロック図である。
【図１３】図１３は、第５の実施形態の第１のＨＤＤ、第２のＨＤＤ、第３のＨＤＤ、又は第４のＨＤＤの構造の例を示した図である。
【図１４】図１４は、第５の実施形態にかかる情報処理装置における、ＨＤＤ交換時のデータの復元処理の手順を示すフローチャートである。
【発明を実施するための形態】
【０００９】
（第１の実施形態）
以下に示す実施形態では、記憶制御装置が適用された情報処理装置を例に説明する。なお、後述する実施形態は、記憶制御装置を情報処理装置に適用することに制限するものではなく、ＲＡＩＤコントローラのようなデバイスに適用しても良い。
【００１０】
図１は、第１の実施形態の情報処理装置の構成を示したブロック図である。図１に示されるように、情報処理装置１００は、ＯＳ１０１と、メイン基板１０２と、多重化ディスクコントローラ１０３と、接続Ｉ／Ｆ１０４Ａ〜１０４Ｄと、第１のＨＤＤ１１１と、第２のＨＤＤ１１２と、第３のＨＤＤ１１３と、第４のＨＤＤ１１４と、で構成されている。
【００１１】
メイン基板１０２は、情報処理装置１００本体のハードウェア構成であり、（図示しない）ＣＰＵや、ＲＯＭ、ＲＡＭなどが搭載されている。
【００１２】
ＯＳ１０１は、メイン基板１０２に搭載されているＣＰＵ上で実行される基本ソフトウェアであり、ＯＳ１０１自体が有するファイルシステムを利用して、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４にアクセスする。
【００１３】
接続Ｉ／Ｆ１０４Ａ〜１０４Ｄは、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４を着脱可能にするためのインターフェースとする。ＨＤＤが故障した際、ユーザは、接続Ｉ／Ｆ１０４Ａ〜１０４Ｄから、故障したＨＤＤを取り外して、新しいＨＤＤを接続する。
【００１４】
第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４は、読み書き可能なデータを記憶する記憶装置とする。本実施形態の第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４は、後述する多重化ディスクコントローラ１０３により、１対１（例えば、第１のＨＤＤ１１１及び第２のＨＤＤ１１２の間、第３のＨＤＤ１１３及び第４のＨＤＤ１１４の間で）でミラーリングされている。このため、ＨＤＤ一台が故障した場合に対となるＨＤＤ（例えば、第１のＨＤＤ１１１が故障した場合に対となる第２のＨＤＤ１１２）のデータを用いることで、データを復元できる。
【００１５】
ところで、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４においては、ＯＳ１０１からディスクの全領域が利用可能になっているとは限らない。図２は、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４の構造の例を示した図である。
【００１６】
図２に示されるように、ＨＤＤ（第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４）のユーザ領域は、パーティション割り当て領域２０１、２０３と、未割り当て領域２０２と、で構成されている。また、ＨＤＤの先頭に管理データ領域２０４が設けられている。当該管理データ領域２０４には、パーティション割り当て領域の位置情報が記録されているパーティションテーブル（論理構造）が格納されている。具体的には、パーティションテーブルには、パーティションのディスク上の開始位置と、サイズと、識別子（パーティションＩＤ）が格納されている。
【００１７】
そして、ＯＳ１０１からは、ＯＳ１０１によって生成されたパーティション割り当て領域２０１、２０３に対してデータの読み書きが可能であり、未割り当て領域２０２に対してデータの読み書きを行うことはできない。このように、ＯＳ１０１は、ＨＤＤのディスク全体を必ず使用するわけではない。
【００１８】
ところで、現在も、ＨＤＤ一台あたりの容量は増加する傾向にある。より容量の大きいディスクで多重化ディスクを構成することで、容量の大きい論理ディスクを構築する傾向にある。このため、ＨＤＤを復旧させる際に、ＨＤＤのディスク全体をコピーすると時間を要するという問題が生じる。
【００１９】
そこで、本実施形態の多重化ディスクコントローラ１０３では、ＨＤＤが交換された際に、対となるＨＤＤのユーザ領域のうち、パーティション割り当て領域をコピーし、未割り当て領域についてコピーを行わないよう制御することとした。
【００２０】
図１に戻り、多重化ディスクコントローラ１０３は、接続Ｉ／Ｆ１０４Ａ〜１０４Ｄを介して接続されている複数のＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）を組み合わせて、仮想的な１つのハードディスクとして運用するとともに、複数のＨＤＤに記憶されているデータを多重化するコントローラとする。本実施形態の多重化ディスクコントローラ１０３は、ＲＡＩＤコントローラとしての機能を有し、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４を組み合わせて、ＲＡＩＤを構築する。ＲＡＩＤレベルは、データを多重化するものであれば良く、例えばＲＡＩＤ＿１を用いることが考えられる。このように、多重化を行うことで、ディスク障害によるシステムダウンを防止できる。
【００２１】
本実施形態は、複数のＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）において、一対一でミラーリングする構成とし、１つのＨＤＤで故障等が発生した場合に、対応する他方のＨＤＤに記憶されているデータを、交換されたＨＤＤにコピーすることで、復元可能とする。
【００２２】
多重化ディスクコントローラ１０３は、制御プログラム１５０を備えている。制御プログラム１５０は、取得部１６１と、復元制御部１６２と、を備え、故障したＨＤＤが交換された場合に、残りのＨＤＤから交換したＨＤＤへのデータ生成・コピーを行うことで、元の構成を復元する。
【００２３】
取得部１６１は、複数のＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）を組み合わせてデータを多重化したＲＡＩＤシステムに含まれているＨＤＤにおける、パーティション割り当て領域の位置情報（例えば、パーティションのディスク上の開始位置、サイズ、及び識別子）を取得する。本実施形態の取得部１６１は、ＨＤＤの交換が行われた場合に、交換されたＨＤＤと対となるＨＤＤの管理データ領域のパーティションテーブル（論理構造）を参照して、パーティション割り当て領域の位置情報を取得する。
【００２４】
復元制御部１６２は、ＨＤＤが交換された場合に、交換されたＨＤＤと同じデータを保持しているＨＤＤに記憶されたデータを用いて、データの復元制御を行う。そして、取得部１６１がパーティション割り当て領域を取得している場合、復元制御部１６２は、復元元のＨＤＤのうち、取得部１６１が取得した位置情報で示されるパーティション割り当て領域に格納されているデータを、交換されたＨＤＤにコピーする。そして、復元制御部１６２は、未割り当て領域に関するコピーを行わないため、復元時間を短縮できる。
【００２５】
次に、本実施形態にかかる情報処理装置１００における、ＨＤＤ交換時のデータの復元処理について説明する。図３は、本実施形態にかかる情報処理装置１００における上述した処理の手順を示すフローチャートである。
【００２６】
まず、取得部１６１が、管理データ領域を確認して、復元に用いるＨＤＤにおける、パーティション割り当て領域の位置情報の取得を試みる（ステップＳ３０１）。そして、取得部１６１がパーティション割り当て領域の位置情報を取得したか否か判定する（ステップＳ３０２）。取得できなかった場合（ステップＳ３０２：Ｎｏ）、復元制御部１６２は、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ３０３）。
【００２７】
一方、取得部１６１が、パーティション割り当て領域の位置情報を取得できた場合（ステップＳ３０２：Ｙｅｓ）、復元制御部１６２は、復元に用いるＨＤＤの管理データ領域を、交換された後のＨＤＤにコピーする（ステップＳ３０４）。次に、復元制御部１６２は、復元に用いるＨＤＤのパーティション割り当て領域のデータを、交換された後のＨＤＤにコピーする（ステップＳ３０５）。このように本処理手順では、未割り当て領域のコピーを行わない。
【００２８】
上述した処理手順により、パーティションの割り当て領域の位置が確認できた場合には、パーティションの開始位置から、パーティションサイズ分を残っていたディスク(群)からデータを生成、取得し、交換ディスクにコピーする。
【００２９】
なお、本実施形態では、ＨＤＤが１対１でミラーリングされている場合について説明したが、１対１でミラーリングされている場合に制限するものではなく、交換されたＨＤＤの領域が、残っているＨＤＤから復元できるものであればよい。
【００３０】
また、本実施形態は、情報処理装置１００にＯＳが１つしか搭載されていない例について説明したが、複数のＯＳが搭載されたマルチパーティションであっても適用できる。この場合、任意のＯＳに割り当てられたパーティションに格納されたデータをコピーしても良いし、複数のＯＳに割り当てられた全てのパーティションに格納されたデータをコピーしても良い。
【００３１】
従来から、ＲＡＩＤシステムでＨＤＤの故障が生じた際に、ＨＤＤの交換後のデータ復元作業中はデータの冗長性が失われているため、作業中に残りのＨＤＤに故障が発生した場合（多重ディスク障害が発生した場合）には、データは失われてしまう。また、近年、ＨＤＤの容量は大きくなっているため、復元するためには以前より長い時間が必要となっていた。
【００３２】
このため、データ復元中の多重ディスク障害によるデータ喪失リスクを減らすため、データ復元作業は短時間で完了することが求められていた。
【００３３】
そこで、本実施形態の情報処理装置１００では、上述した構成を備えることで、故障したＨＤＤを交換した後のデータ復元に要する時間を短縮した。これにより、多重ディスク障害が発生する可能性を低減させることができる。
【００３４】
（第２の実施形態）
第１の実施形態では、ＨＤＤの管理データ領域を参照して、パーティション割り当て領域の位置情報を取得する例について説明した。しかしながら、パーティション割り当て領域の位置情報を取得する手法を、ＨＤＤの管理データ領域を参照する例に制限するものではない。そこで、本実施形態では、ＯＳに問い合わせる例について説明する。
【００３５】
図４は、第２の実施形態にかかる情報処理装置の構成を示したブロック図である。本実施形態にかかる情報処理装置４００は、上述した第１の実施形態にかかる情報処理装置１００とは、ＯＳ１０１と処理が異なるＯＳ４０１に変更され、多重化ディスクコントローラ１０３と処理が異なる多重化ディスクコントローラ４０２に変更されている点で異なる。以下の説明では、上述した第１の実施形態と同一の構成要素には同一の符号を付してその説明を省略している。
【００３６】
ＯＳ４０１は、パーティション情報サービスプログラム４１１を備えている。パーティション情報サービスプログラム４１１は、ＯＳ４０１が起動している間に常駐しているプログラムであり、多重化ディスクコントローラ４０２の制御プログラム４２０からの要求に応じて、パーティション割り当て領域の位置情報を送信する。
【００３７】
パーティション情報サービスプログラム４１１は、ＯＳ４０１上で動作しているため、ＯＳ４０１が使用しているファイルシステムにアクセスすることで、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４のパーティション割り当て領域を認識できる。
【００３８】
多重化ディスクコントローラ４０２は、制御プログラム４２０を備えている。制御プログラム４２０は、取得部４２１と、復元制御部１６２と、を備え、故障したＨＤＤが交換された場合に、残りのＨＤＤから交換したＨＤＤへのデータ生成・コピーを行うことで、元の構成を復元する。
【００３９】
取得部４２１は、ＯＳ４０１のパーティション情報サービスプログラム４１１との間で通信を行い、パーティション割り当て領域の位置情報を問い合わせる。そして、取得部４２１は、パーティション情報サービスプログラム４１１からの返信により、情報処理装置４００に接続されているＨＤＤ（第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）のパーティション割り当て領域の位置情報を取得する。
【００４０】
次に、本実施形態にかかる情報処理装置４００における、ＨＤＤ交換時のデータの復元処理について説明する。図５は、本実施形態にかかる情報処理装置４００における上述した処理の手順を示すフローチャートである。
【００４１】
まず、取得部４２１が、復元に用いるＨＤＤにおける、パーティション割り当て領域の位置情報の取得要求を送信する（ステップＳ５０１）。
【００４２】
一方、パーティション情報サービスプログラム４１１が、制御プログラム４２０からの取得要求を待ち続けている（ステップＳ５１１）。そして、パーティション情報サービスプログラム４１１が、取得要求を受信したか否かを判定する（ステップＳ５１２）。取得要求を受信していないと判定した場合（ステップＳ５１２：Ｎｏ）、再びステップＳ５１１から処理を行う。
【００４３】
一方、パーティション情報サービスプログラム４１１が、取得要求を受信したと判断した場合（ステップＳ５１２：Ｙｅｓ）、ＯＳ４０１のファイルシステムから、パーティション割り当て領域の位置情報を取得する（ステップＳ５１３）。その後、パーティション情報サービスプログラム４１１が、取得したパーティション割り当て領域の位置情報を、制御プログラム４２０に送信する（ステップＳ５１４）。
【００４４】
一方、制御プログラム４２０の取得部４２１は、タイムアウトまで取得要求に対応する応答を待ち続ける（ステップＳ５０２）。そして、取得部４２１が、パーティション情報サービスプログラム４１１から、パーティション割り当て領域の位置情報を取得したか否か判定する（ステップＳ５０３）。取得できなかった場合、換言すればタイムアウトが発生した場合若しくはエラー等により有効な領域の位置情報を得られなかった場合（ステップＳ５０３：Ｎｏ）、復元制御部１６２は、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ５０６）。
【００４５】
一方、取得部４２１が、パーティション割り当て領域の位置情報を取得できた場合（ステップＳ５０３：Ｙｅｓ）、復元制御部１６２は、復元に用いるＨＤＤにおける、管理データ領域を、交換された後のＨＤＤにコピーする（ステップＳ５０４）。次に、復元制御部１６２は、復元に用いるＨＤＤの、パーティション割り当て領域を、交換された後のＨＤＤにコピーする（ステップＳ５０５）。このように本処理手順においても、未割り当て領域のコピーを行わない。
【００４６】
上述した処理手順により、本実施形態の情報処理装置１００は、ＨＤＤの管理データ領域を参照することなく、パーティション割り当て領域を認識して、パーティション割り当て領域のみコピーすることができる。
【００４７】
（第３の実施形態）
上述した実施形態においては、ＨＤＤを交換した際に、パーティション割り当て領域を確認する例について説明した。しかしながら、上述した実施形態は、ＨＤＤを交換した際に、パーティション割り当て領域を確認する手法に制限するものではない。そこで、第３の実施形態では、パーティションを作成した際に、当該パーティション割り当て領域の位置情報を保存する例について説明する。
【００４８】
図６は、第３の実施形態にかかる情報処理装置の構成を示したブロック図である。本実施形態にかかる情報処理装置６００は、上述した第２の実施形態にかかる情報処理装置１００とは、ＯＳ４０１と処理が異なるＯＳ６０１に変更され、多重化ディスクコントローラ４０２と処理が異なる多重化ディスクコントローラ６０２に変更されている点で異なる。以下の説明では、上述した実施形態と同一の構成要素には同一の符号を付してその説明を省略している。
【００４９】
ＯＳ６０１は、パーティション情報サービスプログラム６１１を備えている。パーティション情報サービスプログラム６１１は、ＯＳ６０１が起動している間に常駐しているプログラムであり、ＯＳ６０１でパーティションの割り当てが行われた場合に、当該パーティション割り当て領域の位置情報を、制御プログラム６２０に送信する。
【００５０】
多重化ディスクコントローラ６０２は、制御プログラム６２０と、情報保持部６２１と、を備えている。制御プログラム６２０は、取得部６３１と、復元制御部６３２と、を備え、故障したＨＤＤが交換された場合に、残りのＨＤＤから交換したＨＤＤへのデータ生成・コピーを行うことで、元の構成を復元する。
【００５１】
取得部６３１は、ＯＳ６０１がＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）に対して、パーティションを割り当てた際に、パーティション情報サービスプログラム６１１から、パーティション割り当て領域の位置情報を取得する。
【００５２】
情報保持部６２１は、取得部６３１が取得したパーティション割り当て領域の位置情報を保存する。
【００５３】
そして、復元制御部６３２は、情報保持部６２１に保存された位置情報に基づいて、復元に用いるＨＤＤのパーティション割り当て領域に格納されているデータを、交換されたＨＤＤにコピーする。
【００５４】
次に、本実施形態にかかる情報処理装置６００における、パーティション作成時の処理について説明する。図７は、本実施形態にかかる情報処理装置６００における上述した処理の手順を示すフローチャートである。
【００５５】
まず、ＯＳ６０１が、（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）に対して、パーティションを作成する（ステップＳ７０１）。次に、ＯＳ６０１内のパーティション情報サービスプログラム６１１が、制御プログラム６２０に対して、作成したパーティション割り当て領域の位置情報を送信する（ステップＳ７０２）。そして、制御プログラム６２０の取得部６３１が、取得したパーティション割り当て領域の位置情報を、情報保持部６２１に保存する（ステップＳ７０３）。
【００５６】
上述した処理手順により、多重化ディスクコントローラ６０２内で、作成されたパーティション割り当て領域の位置情報を保持できる。このように、本実施形態では、最初にＲＡＩＤによるシステムを構築する際のパーティション割り当て時に、情報保持部６２１に、作成されたパーティション割り当て領域の位置情報を保持し、保持した位置情報をＨＤＤが故障した際に利用する。
【００５７】
次に、本実施形態にかかる情報処理装置６００における、ＨＤＤ交換時のデータの復元処理について説明する。図８は、本実施形態にかかる情報処理装置６００における上述した処理の手順を示すフローチャートである。
【００５８】
まず、復元制御部６３２は、情報保持部６２１を参照する（ステップＳ８０１）。参照するパーティション割り当て領域の位置情報は、復元に用いるＨＤＤのパーティション割り当て領域の位置情報でも良いし、故障して交換される前のＨＤＤのパーティション割り当て領域の位置情報でも良い。
【００５９】
そして、復元制御部６３２は、情報保持部６２１に、パーティション割り当て領域の位置情報があるか否かを判定する（ステップＳ８０２）。パーティション割り当て領域の位置情報がない場合（ステップＳ８０２：Ｎｏ）、復元制御部６３２は、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ８０５）。
【００６０】
一方、復元制御部６３２が、パーティション割り当て領域の位置情報があった場合（ステップＳ８０２：Ｙｅｓ）、復元制御部６３２は、復元に用いるＨＤＤにおける、管理データ領域を、交換された後のＨＤＤにコピーする（ステップＳ８０３）。次に、復元制御部６３２は、復元に用いるＨＤＤの、パーティション割り当て領域のデータを、交換された後のＨＤＤにコピーする（ステップＳ８０４）。
【００６１】
本実施形態では、上述した構成を備えることで、第１、第２の実施形態と同様の効果を得ることができる。
【００６２】
（第４の実施形態）
上述した実施形態では、ＨＤＤのユーザ領域のうち、未割り当て領域のコピーを行わず、パーティション割り当て領域のコピーを行うことで、処理時間を短縮する例について説明した。しかしながら、コピーを行わない対象を未割り当て領域のみに制限するものではない。第４の実施形態では、メモリの情報を一時的に保存するスワップ領域についてもコピーを行わない例とする。
【００６３】
図９は、第４の実施形態にかかる情報処理装置の構成を示したブロック図である。本実施形態にかかる情報処理装置９００は、上述した第１の実施形態にかかる情報処理装置１００とは、ＯＳ１０１と処理が異なるＯＳ９０１に変更され、多重化ディスクコントローラ１０３と処理が異なる多重化ディスクコントローラ９０２に変更されている点で異なる。以下の説明では、上述した実施形態と同一の構成要素には同一の符号を付してその説明を省略している。
【００６４】
ＯＳ９０１は、パーティション情報サービスプログラム９１１を備えている。そして、パーティション情報サービスプログラム９１１は、ＯＳ９０１が起動している間に常駐しているプログラムとする。
【００６５】
パーティション情報サービスプログラム９１１は、ＯＳ９０１上で動作しているため、ＯＳ９０１が使用しているファイルシステムにアクセスすることで、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４のパーティション割り当て領域を認識できる。
【００６６】
さらに、パーティション情報サービスプログラム９１１は、ＯＳ９０１と通信を行うことで、ＯＳ９０１が作成したスワップ領域を認識できる。さらに、パーティション情報サービスプログラム９１１は、制御プログラム９２０から再起動要求を受け付けた場合に、ＯＳ９０１を再起動させる制御を行う。
【００６７】
次に、ＯＳ９０１が作成するスワップ領域について説明する。図１０は、本実施形態の第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４の構造の例を示した図である。
【００６８】
図１０に示されるように、ＨＤＤ（第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４）のユーザ領域は、パーティション割り当て領域１００２、１００４と、未割り当て領域１００３と、で構成されている。また、ＨＤＤの先頭に管理データ領域１００１が設けられている。パーティション割り当て領域１００２には、スワップ領域１００５が設けられている。スワップ領域１００５は、ＯＳ９０１が、メモリに格納されているデータを一時的に退避するために作成された領域とする。スワップ領域は、ＯＳ９０１が起動している間に用いられている領域である。このため、ＯＳ９０１を再起動させればスワップ領域１００５に格納されているデータが不要になる。そこで、本実施形態では、スワップ領域１００５のデータを復元しない代わりに、ＯＳ９０１を再起動させることとした。
【００６９】
多重化ディスクコントローラ９０２は、制御プログラム９２０を備えている。制御プログラム９２０は、取得部９２１と、復元制御部９２２と、を備え、故障したＨＤＤが交換された場合に、残りのＨＤＤから交換したＨＤＤへのデータ生成・コピーを行うことで、元の構成を復元する。
【００７０】
取得部９２１は、複数のＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）を組み合わせてデータを多重化したＲＡＩＤシステムのＨＤＤのパーティション割り当て領域、及びスワップ領域の位置情報を、パーティション情報サービスプログラム９１１から取得する。
【００７１】
復元制御部９２２は、ＨＤＤが交換された場合に、交換されたＨＤＤと同じデータを保持しているＨＤＤに記憶されたデータを用いてデータの復元制御を行う。取得部９２１がパーティション割り当て領域、及びスワップ領域の位置情報を取得している場合に、復元制御部９２２は、パーティション情報サービスプログラム９１１を介してＯＳ９０１の再起動を要求すると共に、復元元のＨＤＤのうち、取得部９２１が取得したパーティション割り当て領域のうち、スワップ領域以外に格納されているデータを、交換されたＨＤＤにコピーする。
【００７２】
次に、本実施形態にかかる情報処理装置９００における、ＨＤＤ交換時のデータの復元処理について説明する。図１１は、本実施形態にかかる情報処理装置９００における上述した処理の手順を示すフローチャートである。
【００７３】
まず、取得部９２１が、復元に用いるＨＤＤにおける、各種領域（パーティション割り当て領域及びスワップ領域）の位置情報の取得要求を送信する（ステップＳ１１０１）。
【００７４】
一方、パーティション情報サービスプログラム９１１が、制御プログラム９２０からの取得要求を待ち続けている（ステップＳ１１１１）。そして、パーティション情報サービスプログラム９１１が、取得要求を受信したか否かを判定する（ステップＳ１１１２）。取得要求を受信していないと判定した場合（ステップＳ１１１２：Ｎｏ）、再びステップＳ１１１１から処理を行う。
【００７５】
一方、パーティション情報サービスプログラム９１１が、取得要求を受信したと判断した場合（ステップＳ１１１２：Ｙｅｓ）、ＯＳ９０１のファイルシステムから、パーティション割り当て領域の位置情報と、ＯＳ９０１が作成したスワップ領域の位置情報と、を取得する（ステップＳ１１１３）。その後、パーティション情報サービスプログラム９１１が、取得したパーティション割り当て領域及びスワップ領域の位置情報を、制御プログラム９２０に送信する（ステップＳ１１１４）。
【００７６】
一方、制御プログラム９２０の取得部９２１は、タイムアウトまで取得要求に対応する応答を待ち続ける（ステップＳ１１０２）。そして、取得部９２１が、パーティション情報サービスプログラム９１１から、パーティション割り当て領域及びスワップ領域の位置情報を取得したか否か判定する（ステップＳ１１０３）。取得できなかった場合、換言すればタイムアウトが発生した場合若しくはエラー等により有効な領域の位置情報を得られなかった場合（ステップＳ１１０３：Ｎｏ）、復元制御部９２２は、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ１１０８）。
【００７７】
一方、取得部９２１が、各種領域（パーティション割り当て領域及びスワップ領域）の位置情報を取得できた場合（ステップＳ１１０３：Ｙｅｓ）、復元制御部９２２は、パーティション情報サービスプログラム９１１に対して、ＯＳ９０１の再起動を要求する（ステップＳ１１０４）。
【００７８】
一方、パーティション情報サービスプログラム９１１は、制御プログラム９２０からの再起動の要求を待ち続ける（ステップＳ１１１５）。そして、パーティション情報サービスプログラム９１１は、再起動の要求を受け付けたか否かを判定する（ステップＳ１１１６）。再起動の要求を受け付けていないと判定した場合（ステップＳ１１１６：Ｎｏ）、再びステップＳ１１１５から処理を行う。
【００７９】
一方、パーティション情報サービスプログラム９１１が、再起動要求を受け付けたと判定した場合（ステップＳ１１１６：Ｙｅｓ）、ＯＳ９０１の再起動を行う（ステップＳ１１１７）。再起動により、スワップ領域に格納されているデータが不要となる。
【００８０】
一方、制御プログラム９２０の復元制御部９２２は、ＯＳ９０１の再起動が行われたか否かを判定する（ステップＳ１１０５）。再起動が行われたか否かの判定手法としては、例えば、ＯＳ９０１が再起動した際に送信される信号等に基づいて判定することが考えられる。
【００８１】
復元制御部９２２は、再起動が行われなかったと判定した場合（例えば、タイムアウトまでＯＳ９０１からの再起動時の信号を受信しなかった場合）（ステップＳ１１０５：Ｎｏ）、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ１１０８）。再起動が行われなかった場合に、復元に用いるＨＤＤのディスク全体をコピーするのではなく、スワップ領域を含むパーティション割り当て領域を交換された後のＨＤＤにコピーしても良い。
【００８２】
一方、復元制御部９２２が、再起動が行われたと判定した場合（ステップＳ１１０５：Ｙｅｓ）、復元に用いるＨＤＤにおける、管理データ領域を、交換された後のＨＤＤにコピーする（ステップＳ１１０６）。次に、復元制御部９２２は、復元に用いるＨＤＤの、パーティション割り当て領域のうち、スワップ領域以外を、交換された後のＨＤＤにコピーする（ステップＳ１１０７）。
【００８３】
上述した処理手順により、本実施形態の情報処理装置９００は、上述した実施形態の効果の他に、スワップ領域のコピーを行わないために、復元するまでの時間をより短縮できる。
【００８４】
（第５の実施形態）
第４の実施形態では、ＯＳからスワップ領域の位置情報を取得する例について説明した。しかしながら、スワップ領域の位置情報の取得先をＯＳに制限するものではない。そこで、第５の実施形態では、ＨＤＤの管理データ領域を参照して、スワップ領域の位置情報を取得する例について説明する。
【００８５】
図１２は、第５の実施形態にかかる情報処理装置の構成を示したブロック図である。本実施形態にかかる情報処理装置１２００は、上述した第４の実施形態にかかる情報処理装置９００とは、ＯＳ９０１と処理が異なるＯＳ１２０１に変更され、多重化ディスクコントローラ９０２と処理が異なる多重化ディスクコントローラ１２０２に変更されている点で異なる。以下の説明では、上述した実施形態と同一の構成要素には同一の符号を付してその説明を省略している。
【００８６】
ＯＳ１２０１は、パーティション情報サービスプログラム１２１１を備えている。そして、パーティション情報サービスプログラム１２１１は、ＯＳ１２０１が起動している間に常駐しているプログラムとする。パーティション情報サービスプログラム１２１１は、制御プログラム１２２０から再起動要求を受け付けた場合に、ＯＳ１２０１を再起動させる制御を行う。
【００８７】
多重化ディスクコントローラ１２０２は、制御プログラム１２２０を備えている。制御プログラム１２２０は、取得部１２２１と、復元制御部１２２２と、を備え、故障したＨＤＤが交換された場合に、残りのＨＤＤから交換したＨＤＤへのデータ生成・コピーを行うことで、元の構成を復元する。
【００８８】
取得部１２２１は、ＨＤＤ（例えば、第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、及び第４のＨＤＤ１１４）における、パーティション割り当て領域と、スワップ領域と、を取得する。
【００８９】
次に、ＯＳ１２０１が作成するスワップ領域について説明する。図１３は、本実施形態の第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４の構造の例を示した図である。
【００９０】
図１３に示されるように、ＨＤＤ（第１のＨＤＤ１１１、第２のＨＤＤ１１２、第３のＨＤＤ１１３、又は第４のＨＤＤ１１４）のユーザ領域は、パーティション割り当て領域１３０２、１３０５と、未割り当て領域１３０３と、スワップ領域１３０４と、で構成されている。また、ＨＤＤの先頭に管理データ領域１３０１が設けられている。
【００９１】
管理データ領域１３０１には、パーティション割り当て領域と、スワップ領域が割り当てられた領域との位置情報が記録されているパーティションテーブルが格納されている。具体的には、パーティションテーブルには、パーティションのディスク上の開始位置と、サイズと、識別子（パーティションＩＤ）が格納されている。パーティションＩＤにより、通常のパーティション割り当て領域か、スワップ領域かを識別できる。
【００９２】
図１２に戻り、取得部１２２１は、管理データ領域１３０１を参照して、パーティション割り当て領域と、スワップ領域との位置情報を取得できる。
【００９３】
復元制御部１２２２は、ＨＤＤが交換された場合に、交換されたＨＤＤと同じデータを保持しているＨＤＤに記憶されたデータを用いてデータの復元制御を行う。
【００９４】
次に、本実施形態にかかる情報処理装置１２００における、ＨＤＤ交換時のデータの復元処理について説明する。図１４は、本実施形態にかかる情報処理装置１２００における上述した処理の手順を示すフローチャートである。
【００９５】
まず、取得部１２２１が、管理データ領域を確認して、復元に用いるＨＤＤにおける、パーティション割り当て領域、及びスワップ領域の取得を試みる（ステップＳ１４０１）。そして、取得部１２２１がパーティション割り当て領域及びスワップ領域の位置情報を取得したか否か判定する（ステップＳ１４０２）。取得できなかった場合（ステップＳ１４０２：Ｎｏ）、復元制御部１２２２は、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ１４０７）。
【００９６】
一方、取得部１２２１が、パーティション割り当て領域及びスワップ領域の位置情報を取得できた場合（ステップＳ１４０２：Ｙｅｓ）、取得部１２２１は、パーティション情報サービスプログラム１２１１に対して、ＯＳ１２０１の再起動を要求する（ステップＳ１４０３）。
【００９７】
一方、パーティション情報サービスプログラム１２１１は、制御プログラム１２２０からの再起動の要求を待ち続ける（ステップＳ１４１１）。そして、パーティション情報サービスプログラム１２１１は、再起動の要求を受け付けたか否かを判定する（ステップＳ１４１２）。再起動の要求を受け付けていないと判定した場合（ステップＳ１４１２：Ｎｏ）、再びステップＳ１４１１から処理を行う。
【００９８】
一方、パーティション情報サービスプログラム１２１１が、再起動要求を受け付けたと判定した場合（ステップＳ１４１２：Ｙｅｓ）、ＯＳ１２０１の再起動を行う（ステップＳ１４１３）。
【００９９】
一方、制御プログラム１２２０の復元制御部１２２２は、ＯＳ１２０１の再起動が行われたか否かを判定する（ステップＳ１４０４）。
【０１００】
復元制御部１２２２は、再起動が行われなかったと判定した場合（ステップＳ１４０４：Ｎｏ）、復元に用いるＨＤＤのディスク全体を、交換された後のＨＤＤにコピーする（ステップＳ１４０７）。
【０１０１】
一方、復元制御部１２２２が、再起動が行われたと判定した場合（ステップＳ１４０４：Ｙｅｓ）、復元に用いるＨＤＤにおける、管理データ領域を、交換された後のＨＤＤにコピーする（ステップＳ１４０５）。次に、復元制御部１２２２は、復元に用いるＨＤＤの、（スワップ領域、及び未割り当て領域を除いた）パーティション割り当て領域を、交換された後のＨＤＤにコピーする（ステップＳ１４０６）。
【０１０２】
上述した処理手順により、本実施形態の情報処理装置１２００は、上述した実施形態の効果の他に、スワップ領域のコピーを行わないために、復元するまでの時間をより短縮できる。
【０１０３】
（変形例）
上述した実施形態においては、記憶装置がＨＤＤの場合について説明した。しかしながら、上述した実施形態は、記憶装置をＨＤＤに制限するものではなく、半導体素子メモリを用いた記憶装置、例えばＳＳＤ（Solid  State  Drive）を用いても良い。例えば、複数のＳＳＤを用いてＲＡＩＤシステムを構築しても良い。そこで、変形例の情報処理装置では、複数のＳＳＤでＲＡＩＤシステムを構築する例について説明する。
【０１０４】
本変形例の情報処理装置は、複数のＳＳＤのうち１つが故障した場合に、上述した実施形態と同様の処理で、データを復元する。
【０１０５】
ところで、ＳＳＤにおいて、フラッシュメモリを用いたものでは書き込み、消去が行われる毎に素子が劣化するため、書き込み回数に上限が設けられていることが多い。
【０１０６】
本変形例においては、上述した実施形態と同様の処理をおこなうことで、全ての領域をコピーしていた従来と比べて、未割り当て領域や、スワップ領域の復元を行わない。このため、ＳＳＤ全体をコピーする場合と比べて、復元するデータが少なくなる、換言すれば書き込み回数が少なくなる。つまり、本変形例の情報処理装置では、書き込み回数を少なくすることで、各ＳＳＤの寿命をより長くすることが可能となる。
【０１０７】
上述した実施形態及び変形例においては、故障が発生したディスクを交換した後のデータ復元作業において、ディスク全体ではなく、復元する領域を限定することで、復元する際にコピーするデータ量を削減できるとともに、復元に要する時間を短縮できる。これにより、復元中という多重化ディスクの冗長性が維持できていない時間を短縮できるので、システム全体の頑健性が向上できる。
【０１０８】
本発明のいくつかの実施形態及び変形例を説明したが、これらの実施形態及び変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態及び変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１０９】
１００、４００、６００、９００、１２００…情報処理装置、１０１、４０１、６０１、９０１、１２０１…ＯＳ、１０２…メイン基板、１０３、４０２、６０２、９０２、１２０２…多重化ディスクコントローラ、１０４Ａ〜１０４Ｄ…接続Ｉ／Ｆ、１１１…第１のＨＤＤ、１１２…第２のＨＤＤ、１１３…第３のＨＤＤ、１１４…第４のＨＤＤ、１５０、４２０、６２０、９２０、１２２０…制御プログラム、１６１、４２１、６３１、９２１、１２２１…取得部、１６２、６３２、９２２、１２２２…復元制御部、４１１、６１１、９１１、１２１１…パーティション情報サービスプログラム、６２１…情報保持部
【図１】
2015084180.tif 000003
【図２】
2015084180.tif 000004
【図３】
2015084180.tif 000005
【図４】
2015084180.tif 000006
【図５】
2015084180.tif 000007
【図６】
2015084180.tif 000008
【図７】
2015084180.tif 000009
【図８】
2015084180.tif 000010
【図９】
2015084180.tif 000011
【図１０】
2015084180.tif 000012
【図１１】
2015084180.tif 000013
【図１２】
2015084180.tif 000014
【図１３】
2015084180.tif 000015
【図１４】
2015084180.tif 000016