(57)【要約】【課題】ディスク障害によるシステムダウンを未然に防止し、また、ディスク障害時の復旧作業を軽減する。【解決手段】チェック部２−６は、全てのハードディスク装置２−１〜２−３から読み出したデータが一致した場合には、ハードディスク切換部２−５により、最も高い優先順位Ｐ１のハードディスク装置２−２のデータをメインシステム１に渡す。多数決部２−７は、チェックしたデータが異なる場合、各ハードディスク装置２−１〜２−３から読み出したデータの多数決を行ない、多数派であったハードディスク装置の中から優先順位の高いハードディスク装置から読み込んだデータをメインシステム１に渡す。【選択図】　図１
2004005162.tif 000002
【特許請求の範囲】
【請求項１】
着脱可能な複数の記憶媒体と、
前記複数の記憶媒体に並行してデータの書き込み処理と読み出し処理とを行なうデータ書込読出手段と、
前記複数の記憶媒体のいずれかに異常が発生したか否かを監視するチェック手段と、
前記チェック手段により異常発生したと判別された場合、前記複数の記憶媒体のうち、正常である記憶媒体を、前記データ書込読出手段によるデータの書き込み処理と読み出し処理とを有効とすべく選択する切換手段と
を具備することを特徴とする記憶装置。
【請求項２】
前記複数の記憶媒体の各々に、前記チェック手段により判別された異常発生に基づいて動的に優先順位を設定する優先順位設定手段を具備し、
前記切換手段は、前記優先順位に基づいて、前記データ書込読出手段によるデータの書き込み処理と読み出し処理とが有効となる記憶媒体を選択することを特徴とする請求項１記載の記憶装置。
【請求項３】
前記チェック手段により異常発生したと判別された場合、前記複数の記憶媒体におけるデータ整合性の多数決を行なう多数決手段を具備し、前記優先順位設定手段は、前記複数の記憶媒体の各々に、前記多数決手段による多数決の結果に基づいて動的に優先順位を設定することを特徴とする請求項２記載の記憶装置。
【請求項４】
複数の記録媒体に並行してデータの書き込み処理と読み出し処理とを行う際、前記複数の記録媒体に異常が発生したか否かを監視し、
前記異常が発生したと判別された場合、前記複数の記録媒体におけるデータの整合性の多数決を行い、
前記多数決の結果に基づいて、前記複数の記憶媒体の各々に、読み出し処理と書き込み処置とを行うための記録媒体を選択するための優先順位を設定する
ことを特徴とする自動復旧方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ハードディスク装置などの記憶装置の異常発生によるシステムダウンを未然に防止する記憶装置、自動復旧方法に関する。
【０００２】
【従来の技術】
従来、コンピュータでは、様々なデータを保持するための外部記憶装置として、大容量のストレージ装置、例えばハードディスク装置を用いている。特に、ハードディスク装置の障害により保持していたデータが使用不能になることを防止すべく、多くのサーバ装置では、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ　Ａｒｒａｙｓ
ｏｆ　Ｉｎｄｅｐｅｎｄｅｎｔ　Ｄｉｓｋｓ）を導入していた。
【０００３】
ＲＡＩＤには、その使用方法に応じて、ＲＡＩＤ１〜ＲＡＩＤ６までのモードが設定されている。それぞれのモードでは、書き込み処理が異なる。ここでは、ＲＡＩＤ１を前提として説明する。ＲＡＩＤは、複数のハードディスク装置に同じデータを書き込むことにより、１つのハードディスク装置に障害が起った場合であっても、他のハードディスクで運用を行なう記憶システムである。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来技術によるディスク障害防止方法では、ハードディスクの初期不良、誤操作、事故等によって全てのハードディスクに同時に障害が起った場合などは、復旧に多くの人的負担とコスト、時間を要するという問題があった。
【０００５】
この発明は上述した事情に鑑みてなされたもので、ディスク障害によるシステムダウンを未然に防止することができ、また、ディスク障害時の復旧作業を軽減することができる記憶装置、自動復旧方法を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上述した問題点を解決するために、本発明は、着脱可能な複数の記憶媒体と、前記複数の記憶媒体に並行してデータの書き込み処理と読み出し処理とを行なうデータ書込読出手段と、前記複数の記憶媒体のいずれかに異常が発生したか否かを監視するチェック手段と、前記チェック手段により異常発生したと判別された場合、前記複数の記憶媒体のうち、正常である記憶媒体を、前記データ書込読出手段によるデータの書き込み処理と読み出し処理とを有効とすべく選択する切換手段とを具備することを特徴とする。
【０００７】
また、請求項２記載の発明では、請求項１記載の記憶装置において、前記複数の記憶媒体の各々に、前記チェック手段により判別された異常発生に基づいて動的に優先順位を設定する優先順位設定手段を具備し、前記切換手段は、前記優先順位に基づいて、前記データ書込読出手段によるデータの書き込み処理と読み出し処理とが有効となる記憶媒体を選択することを特徴とする。
【０００８】
また、請求項３記載の発明では、請求項２記載の記憶装置において、前記チェック手段により異常発生したと判別された場合、前記複数の記憶媒体におけるデータ整合性の多数決を行なう多数決手段を具備し、前記優先順位設定手段は、前記複数の記憶媒体の各々に、前記多数決手段による多数決の結果に基づいて動的に優先順位を設定することを特徴とする。
【０００９】
また、上述した問題点を解決するために、請求項４記載の発明では、複数の記録媒体に並行してデータの書き込み処理と読み出し処理とを行う際、前記複数の記録媒体に異常が発生したか否かを監視し、前記異常が発生したと判別された場合、前記複数の記録媒体におけるデータの整合性の多数決を行い、前記多数決の結果に基づいて、前記複数の記憶媒体の各々に、読み出し処理と書き込み処置とを行うための記録媒体を選択するための優先順位を設定することを特徴とする。
【００１０】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態を説明する。
Ａ．実施形態の構成
図１は、本発明の実施形態による記憶装置の構成を示すブロック図である。図１において、メインシステム１は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを含むコンピュータ側の装置である。記憶装置２は、メインシステムの外部記憶装置として用いられるストレージ装置である。該記憶装置２は、着脱可能な複数のハードディスク（図１においては、ＨＤＤと示す）装置２−１，２−２，２−３、予備ハードディスク（図１においては、予備ＨＤＤと示す）装置２−４、ハードディスク切換部（図１においては、ＨＤＤ切換部と示す）２−５、チェック部２−６、多数決部２−７および優先順位設定部２−８から構成されている。
なお、ハードディスク装置について示しているがストレージ装置であれば、いずれであっても良い。
【００１１】
ハードディスク装置２−１，２−２，２−３、および予備ハードディスク装置２−４は、所定のインターフェース（ＳＣＳＩ、ＡＴＡＰなど）を介してハードディスク切換部２−５に接続され、共通バス３に接続されている。ハードディスク装置２−１，２−２，２−３には、図２に示すように、後述する優先順位設定部２−８により優先順位が設定されている。この優先順位は、どのハードディスク装置を優先的に使用するかを示すものである。
【００１２】
図示の例では、優先順位の初期設定として、ハードディスク装置２−２に最も高い優先順位Ｐ１、ハードディスク装置２−１に次に高い優先順位Ｐ２、ハードディスク装置２−３に最も低い優先順位Ｐ３が設定されている（Ｐ１＞Ｐ２＞Ｐ３）。なお、予備ハードディスク装置２−４には、優先順位は設定されていない。
【００１３】
ハードディスク切換部２−５は、上記ハードディスク装置２−１，２−２，２−３、および予備ハードディスク装置２−４のうち、データの書き込み、読み出しが正常に行なわれ、かつ優先順位の高いハードディスク装置を選択し、メインシステム１との間で使用可能とする。また、ハードディスク切換部２−５は、ハードディスク装置に障害が発生している場合において、復旧作業を行わせるために、障害の発生したハードディスク装置と、予備ハードディスク装置との切換えを、チェック部２−６からの指示に基づいて行う。
【００１４】
チェック部２−６は、メインシステム１と記憶装置２のハードディスク装置２−１，２−２，２−３との間で行なわれるデータの書き込み、読み出しが正常に行なわれたか否かを判断する。また、このチェック部２−６は、ハードディスク装置に障害が発生しているか否かを判断し、判断結果に基づいて、障害の発生したハードディスク装置と、予備ハードディスク装置との切換をハードディスク切換部２−５に指示する。
【００１５】
多数決部２−７は、上記チェック部２−６によるチェック結果がハードディスク装置間で異なった場合、どのハードディスク装置を用いるかを多数決により決定するものである。多数決の手順の詳細については後述する。優先順位設定部２−８は、上記多数決の結果に従って、上記ハードディスク装置２−１，２−２，２−３の優先順位を変更する。また、優先順位設定部２−８は、チェック部２−６によって障害が発見され、ハードディスク切換部２−５によりハードディスク装置が予備ハードディスク装置に切り換えられた場合、各ハードディスク装置に優先順位を設定する。
【００１６】
Ｂ．実施形態の動作
次に、本実施形態の動作について詳細に説明する。
【００１７】
Ｂ−１．読み込み時
まず、メインシステム１が記憶装置２からデータを読み込むときの動作について説明する。ここで、図３は、データの読み込み時の動作を説明するためのフローチャートである。また、図４ないし図６は、データの読み込み時の動作を説明するための概念図である。
【００１８】
メインシステム１からデータの読み込み要求があると（ステップＳａ１）、図４に示すように、チェック部２−６により、全てのハードディスク装置２−１〜２−３から読み込んだ情報が同じデータであるか否かをチェックする（ステップＳａ２）。そして、全てのハードディスク装置２−１〜２−３におけるデータが全く同じであれば、図５に示すように、ハードディスク装置切換部２−５により、最も高い優先順位Ｐ１のハードディスク装置２−２を選択し、該ハードディスク装置２−２に蓄積されているデータをメインシステム１に渡す（ステップＳａ３）。
【００１９】
一方、チェックしたデータが異なる場合、多数決部２−７により、各ハードディスク装置２−１〜２−３から読み込まれたデータにより、各ハードディスク装置２−１〜２−３をグループ（派）に分けて多数決を行なう（ステップＳａ４）。そして、多数派であったハードディスク装置の中から優先順位の高いハードディスク装置から読み込んだデータをメインシステム１に渡す。そして、優先順位設定部２−８により優先順位の再設定を行う、つまり、多数派であったハードディスク装置に少数派のハードディスク装置より高い優先順位を設定する（ステップＳａ５）。また、少数派であったハードディスク装置には、多数派のハードディスク装置より低い優先順位を設定する（ステップＳａ６）。
【００２０】
例えば、ハードディスク装置２−２のみが異なるデータを蓄積していた場合、各ハードディスク装置２−１〜２−３から読み込まれたデータに基づいて、各ハードディスク装置をグループ（派）に分けて多数決を行なう。そして、図６に示すように、多数派であったハードディスク装置２−１，２−３の中から、ハードディスク装置切換部２−５により、高い優先順位Ｐ２のハードディスク装置２−１を選択し、該ハードディスク装置２−１に蓄積されているデータをメインシステム１に渡す。次いで、優先順位設定部２−８により優先順位の再設定を行なう。この図示の例では、ハードディスク装置２−１の優先順位Ｐ２をＰ１へ上げ、ハードディスク装置２−３の優先順位Ｐ３をＰ２へ上げ、ハードディスク装置２−２の優先順位Ｐ１をＰ３へ下げるというように、各ハードディスク装置２−１〜２−３の優先順位を変更する。
【００２１】
さらに、チェック部２−６は、少数派であったハードディスク装置に対してディスクチェックを行なう。（ステップＳａ７）そして、チェック部２−６で該ハードディスク装置が復旧不可能であると判断した場合には、ハードディスク切換部２−５は、当該ハードディスク装置と予備ハードディスク装置２−４とを切り換える。なお、復旧不可能とされたハードディスク装置は、部品交換等を行うための保守対象となるため、チェック部２−６などにより、保守管理者などの交換を知らせる通知が行われる。また、優先順位設定部２−８により、予備ハードディスクの優先順位を他のハードディスク装置より最も低くする（ステップＳａ８）。図６の例では、ハードディスク装置２−２と予備ハードディスク装置２−４とを切り替え、優先順位を最も低いＰ３とする。一方、該ハードディスク装置が復旧可能であると判断した場合には、フォーマット等の復旧作業を行なう（ステップＳａ９）。
【００２２】
Ｂ−２．書き込み時
次に、メインシステム１が記憶装置２へデータを書き込むときの動作について説明する。ここで、図７は、データの書き込み時の動作を説明するためのフローチャートである。また、図８および図９は、データの書き込み時の動作を説明するための概念図である。
【００２３】
メインシステム１からデータの書き込み要求があると（ステップＳｂ１）、図８に示すように、各ハードディスク装置２−１〜２−３に同時にデータを書き込み、チェック部２−６により、書き込まれたデータのチェックを行なう（ステップＳｂ２）。そして、チェック部２−６のチェック結果から全てのハードディスク装置２−１〜２−３におけるデータが全く同じであれば、そのまま書き込みを終了する（ステップＳｂ３）。
一方、チェック部２−６のチェック結果において、チェックしたデータが異なる場合、多数決部２−７により、各ハードディスク装置２−１〜２−３に書き込まれたデータを比較し、多数決を行なう（ステップＳｂ４）。そして、優先順位設定部２−８により、多数派であったハードディスク装置に少数派のハードディスク装置より高い優先順位を設定する（ステップＳａ５）。また、少数派であったハードディスク装置には、多数派のハードディスク装置より低い優先順位を設定する（ステップＳｂ６）。
【００２４】
例えば、チェック部２−６のチェック結果からハードディスク装置２−２のみが異なる情報が書き込まれていた場合、多数決部２−７は各ハードディスク装置２−１〜２−３に書き込まれたデータにより、ハードディスク装置２−１，２−３のグループ（派）と、ハードディスク装置２−２のグループ（派）とに分けて多数決を行なう。そして、優先順位設定部２−８は、図９に示すように、ハードディスク装置２−１の優先順位Ｐ２をＰ１へ上げ、ハードディスク装置２−３の優先順位Ｐ３をＰ２へ上げ、ハードディスク装置２−２の優先順位Ｐ１をＰ３へ下げる。
【００２５】
さらに、チェック部２−６は、少数派であったハードディスク装置に対してディスクチェックを行なう（ステップＳｂ７）。そして、チェック結果が該ハードディスク装置が復旧不可能であると判断した場合には、ハードディスク切換部２−５によって当該ハードディスク装置と予備ハードディスク装置２−４とが切り替えられ、優先順位設定部２−８により、予備ハードディスク装置２−４の優先順位を最も低くする（ステップＳｂ８）。図９の例では、ハードディスク装置２−２と予備ハードディスク装置２−４とを切り替え、予備ハードディスク装置２−４の優先順位をＰ３とする。一方、該ハードディスク装置が復旧可能であると判断した場合には、フォーマット等の復旧作業を行なう（ステップＳｂ９）。なお、ハードディスク装置が復旧不可能であると判断されると、チェック部２−６は、システムの保守管理などに交換すべきハードディスク装置がある旨を通知する。
【００２６】
なお、上述した実施形態において、チェック部２−６によるチェックタイミングは、以下の２通り考えられる。
【００２７】
１）読み込み、書き込みを行なう毎に実施する。
２）読み込みを行なっていなくても、所定の時間毎に各ハードディスク装置に蓄積されている各々データを比較し、データ毎に比較結果をチェック結果キャッシュ部（図示略）に記憶しておき、データの読み込みを行なう際に、チェック結果キャッシュ部を参照する。
【００２８】
特に、チェック結果キャッシュ部を用いる場合には、読み込み時における処理時間を短縮することが可能となる。
【００２９】
また、データを比較する方法は、以下の２通り考えられる。
１）データの内容そのものを比較する。データが例えば「山田太郎」であれば、各ハードディスク装置２−１〜２−３から読み出された「山田太郎」と比較する。他と異なるデータ「山川次郎」が読み出されたハードディスク装置は、少数派であるので、メンテナンス対象となり、予備ハードディスク装置２−４と交換され、修理される。修理不可の場合には、新しいハードディスク装置を予備ハードディスク装置として装着する。なお、この場合、複数のハードディスク装置から読み出された各データに対して、所定の演算を行ない、演算結果を比較することにより、データの整合性をチェックしてもよい。
【００３０】
２）読み出したデータが明らかに異なるデータである場合には、その異なるデータが複数のハードディスク装置から読み出され、多数決で優っても、少数派とする。例えば、「山田太郎」というデータが読み出されるはずであるのにもかかわらず、１０００行もある文字列のデータが読み出された場合には、明らかにデータの形式が違うので、１０００行もある文字列のデータが複数のハードディスク装置から読み出されても、少数派とする。
【００３１】
また、予備ハードディスク装置２−４が、常時使用されるハードディスク装置として使用されるようになった場合、優先順位が最下位から始まるが、壊れていないという実績を積むことにより、他のハードディスク装置が故障したときに、優先順位を上げるようにしてもよい。
【００３２】
Ｂ−３．他の実施例
図１０は、ＲＡＩＤ１以外を用いた場合（１つのデータを分割して記憶するＲＡＩＤの場合）における記憶装置（一部）の構成を示すブロック図である。この場合、複数のハードディスク装置１０−１，１０−２，１０−３で１つのグループＧ１を構成し、複数のハードディスク装置１１−１，１１−２，１１−３で１つのグループＧ２を構成し、複数のハードディスク装置１２−１，１２−２，１２−３で１つのグループＧ３を構成している。
【００３３】
上記構成では、データの書き込み時、あるいは読み出し時におけるデータのチェックは、グループＧ１〜Ｇ３毎にデータを読み出してチェックする。すなわち、グループＧ１においては、ハードディスク装置１０−１〜１０−３のそれぞれからデータＡ１を読み出してチェックし、不一致があれば、ハードディスク装置１０−１〜１０−３で、多数決をとる。また、グループＧ２においては、ハードディスク装置１１−１〜１１−３のそれぞれからデータＡ２を読み出してチェックし、不一致があれば、ハードディスク装置１１−１〜１１−３で、多数決をとる。さらに、グループＧ３においては、ハードディスク装置１２−１〜１２−３のそれぞれからデータＡ３を読み出してチェックし、不一致があれば、ハードディスク装置１２−１〜１２−３で、多数決をとる。そして、Ａ１〜Ａ３のデータの多数決をとり、多数派のデータを最終的にメインシステムに渡す。
【００３４】
上述した実施形態によれば、ディスク障害、誤操作等の障害が発生した場合でもサービスを止めることなく、本システムの復旧を行なうことができる。また、システムに障害が発生した場合、システムの監視、復旧からハードの復旧まで、全て自動で行なうため、コンピュータの設置場所に出向くことが減り、運用、監視、復旧のための人的負荷、それによるコストを抑えることができる。
【００３５】
また、記憶装置２の機能は、図示しない記憶部に記憶されたプログラムを実行することで実現するようになっている。記憶部は、ハードディスク装置や光磁気ディスク装置、フラッシュメモリ等の不揮発性メモリやＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）のような揮発性のメモリ、あるいはこれらの組み合わせにより構成されるものとする。また、上記記憶部とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含む。
【００３６】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワークや電話回線等の通信回線のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、上述した処理の一部を実現するためのものであってもよい。さらに、上述した処理を記憶装置２に既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【００３７】
以上、この発明の実施形態を、図面を参照して詳述してきたが、具体的な構成は、上記実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００３８】
【発明の効果】
以上説明したように、本発明によれば、複数の記憶媒体に並行してデータの書き込み処理と読み出し処理とを行なう際、チェック手段により、前記複数の記憶媒体のいずれかに異常が発生したか否かを監視し、異常発生したと判別された場合、切換手段により、前記複数の記憶媒体のうち、正常である記憶媒体を選択的に切り換え、該選択された記憶媒体に対して、前記データ書込読出手段によるデータの書き込み処理と読み出し処理とを行なうようにしたので、ディスク障害によるシステムダウンを未然に防止することができ、また、ディスク障害時の復旧作業を軽減することができるという利点が得られる。
また、本発明によれば、優先順位設定手段により、記憶媒体を信頼性の高い順序で優先度が設定されるので、蓄積されているデータは同時に信頼性が高いものと判断できる。
さらに、本発明によれば、多数決手段により、複数の記憶媒体の内でデータの信頼性を判断でき、優先順位が動的に変更されるので、恒常的に信頼性の高いデータを取り扱うことができる。
【図面の簡単な説明】
【図１】本発明の実施形態による記憶装置の構成を示すブロック図である。
【図２】ハードディスク装置２−１，２−２，２−３に初期設定された優先順位を説明するための概念図である。
【図３】データの読み込み時の動作を説明するためのフローチャートである。
【図４】データの読み込み時の動作を説明するための概念図である。
【図５】データの読み込み時の動作を説明するための概念図である。
【図６】データの読み込み時の動作を説明するための概念図である。
【図７】データの書き込み時の動作を説明するためのフローチャートである。
【図８】データの書き込み時の動作を説明するための概念図である。
【図９】データの書き込み時の動作を説明するための概念図である。
【図１０】ＲＡＩＤ１以外を用いた場合（１つのデータを分割して記憶するＲＡＩＤの場合）における記憶装置（一部）の構成を示すブロック図である。
【符号の説明】
１　メインシステム
２　記憶装置
２−１〜２−３　ハードディスク装置（複数の記憶媒体）
２−４　予備ハードディスク装置
２−５　ハードディスク切換部（切換手段）
２−６　チェック部（監視手段）
２−７　多数決部（多数決手段）
２−８　優先順位設定部（優先順位設定手段）
１０−１〜１０−３　ハードディスク装置
１１−１〜１１−３　ハードディスク装置
１２−１〜１２−３　ハードディスク装置
Ｇ１〜Ｇ３　グループ
【図１】
2004005162.tif 000003
【図２】
2004005162.tif 000004
【図３】
2004005162.tif 000005
【図４】
2004005162.tif 000006
【図５】
2004005162.tif 000007
【図６】
2004005162.tif 000008
【図７】
2004005162.tif 000009
【図８】
2004005162.tif 000010
【図９】
2004005162.tif 000011
【図１０】
2004005162.tif 000012