(57)【要約】【課題】ミラーディスク装置において、片方のハードディスク装置に異常発生箇所が生じた場合の再構築を確実にする。【解決手段】コンピュータ本体は、各々のハードディスク装置２Ａ，２Ｂから読み返しを行うコマンドを発行するプログラムをバックグラウンドで動作させ、この読み返しで各々のハードディスク装置のデータ一致／不一致があるか否かのチェックをミラーディスク装置に行なわせ、不一致又は読み取りエラーが発生した場合には健全側のハードディスク装置の該当ブロックデータを使って異常発生したハードディスク装置の該当ブロックに上書きすることで、不良ブロックの修復を行わせる。【選択図】図１
2007115162.tif 000002
【特許請求の範囲】
【請求項１】
２台のハードディスク装置で構成したミラーディスク装置は、コンピュータ本体から書き込み要求されたデータを２台のハードディスク装置に二重保存し、コンピュータ本体からのデータ読み込み要求には一方のハードディスク装置からデータを読み出し、このデータ読み出しにエラーを検出した場合には他方のハードディスク装置から該当データを読み込み、異常個所のデータに上書きあるいは交代ブロック処理を行う処理機能を備えたデータの二重保存方法において、
前記コンピュータ本体は、ミラーディスク装置の各々のハードディスク装置から同時に読み込みを発生させるコマンドをバックグラウンド動作で定期的に実行する過程を有し、
前記ミラーディスク装置は、前記コンピュータ本体から前記コマンドを受けたとき、前記各々のハードディスク装置に対して各々読み返し処理を行う過程と、この過程で読み返された全ブロックのデータについて各々のハードディスク装置毎に一致／不一致の検査を行う過程と、この検査で読み返しエラーが発生した場合に当該ハードディスク装置の当該エラー発生箇所に、健全側のハードディスク装置の読み返しデータを上書きして異常個所の修復を行う過程とを有することを特徴とするデータの二重保存方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２台のハードディスク装置に同じデータを保存することで、データの信頼性を高めるデータの二重保存方法に関する。
【背景技術】
【０００２】
この種のデータ二重保存は、高い信頼性が要求される工業用コンピュータにおけるデータ保存で実施されており、ミラーディスク装置（ＲＡＩＤ１）と呼ばれている。このミラーディスク装置は、図２に示すように、コンピュータ本体１側からは１台のハードディスク装置に見えるが、ハードディスク装置側では２台のハードディスク装置２Ａ，２Ｂに同じデータを書き込むようにしている。
【０００３】
このミラーディスク装置により、コンピュータ本体側のドライバソフトウェア等の変更なしに、一方のハードディスク装置の故障などによるデータ損失のリスクを低減させ、信頼性を高めている（例えば、特許文献１参照）。
【特許文献１】特開平１０−０６６０４７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ハードディスク装置は、稀ではあるが、書き込んだデータがＥＣＣエラー（書き込み後何等かの原因でデータの一部が壊れてしまう現象）や不正ブロック等により異常になる箇所が発生することがある。最近のハードディスク装置は容量が極めて大きくなってきているため、この異常個所が発生する確率も高くなる。この異常個所は、ハードディスク装置からの読み込み処理を行うことによりデータ異常として検出することができる。
【０００５】
ミラーディスク装置で行っている処理は、図３の（ａ）に示すように、コンピュータ本体側のソフトウェアによる書き込み要求時には、２台のハードディスク装置２Ａ，２Ｂへ同じデータを書き込む。逆に、図３の（ｂ）に示すように、コンピュータ本体側による読み込み要求時には、該当データを速く読み出すことのできる片側のハードディスク装置、例えば２Ａからデータを読み込む。
【０００６】
ここで、図４の（ａ）に示すように、ハードディスク装置２Ａからのデータ読み込み時に、上記異常（読み出しエラー）を検出した場合、図４の（ｂ）に示すように、ミラーディスク装置の他方のハードディスク装置２Ｂから該当データを読み込み、異常個所のデータに上書き（あるいは交代ブロック処理）を行うことによりデータを修復し、その正当性を確保する。
【０００７】
しかし、読み込み頻度が非常に少ないデータや異常でない側のハードディスク装置からデータが読み込まれた場合、またはファイルシステムとして使用してない領域のデータ等があった場合、これらのデータについて上記異常が発生した場合は通常運用で検出することは困難であり、修復機能が働かない場合がある。
【０００８】
この状態で片側ディスク装置２Ｂが故障した場合、図５の（ａ）に示すように、ミラーディスク装置は２台のハードディスク装置２Ａ，２Ｂを同じデータにするために、交換していない側のハードディスク装置２Ａから交換したハードディスク装置２Ｂへ全データのコピーを行う。このとき、図５の（ｂ）に示すように、交換していない側のハードディスク装置（コピー元）２Ａにデータの異常個所があると、コピー元の読み出し時にエラーになってしまい、結果として正常に、ミラーディスク装置の構築ができない。
【０００９】
また、異常個所は、データ欠損となってしまうため、ハードディスク装置の再フォーマットやバックアップからのリストア等の処置が必要になる。
【００１０】
本発明の目的は、上記の課題を解決したデータの二重保存方法を提供することにある。
【課題を解決するための手段】
【００１１】
本発明は、前記の課題を解決するため、ミラーディスク装置の各々のハードディスク装置から読み返しを行うコマンドを発行するプログラムをバックグラウンドで動作させ、この読み返しで各々のハードディスク装置のデータ一致／不一致があるか否かのチェックを行い、不一致が発生した場合には健全側のハードディスク装置の該当ブロックデータを使って異常発生したハードディスク装置の該当ブロックに上書きすることで、不良ブロックの修復を行わせるようにしたもので、以下の方法を特徴とする。
【００１２】
（１）２台のハードディスク装置で構成したミラーディスク装置は、コンピュータ本体から書き込み要求されたデータを２台のハードディスク装置に二重保存し、コンピュータ本体からのデータ読み込み要求には一方のハードディスク装置からデータを読み出し、このデータ読み出しにエラーを検出した場合には他方のハードディスク装置から該当データを読み込み、異常個所のデータに上書きあるいは交代ブロック処理を行う処理機能を備えたデータの二重保存方法において、
前記コンピュータ本体は、ミラーディスク装置の各々のハードディスク装置から同時に読み込みを発生させるコマンドをバックグラウンド動作で定期的に実行する過程を有し、
前記ミラーディスク装置は、前記コンピュータ本体から前記コマンドを受けたとき、前記各々のハードディスク装置に対して各々読み返し処理を行う過程と、この過程で読み返された全ブロックのデータについて各々のハードディスク装置毎に一致／不一致の検査を行う過程と、この検査で読み返しエラーが発生した場合に当該ハードディスク装置の当該エラー発生箇所に、健全側のハードディスク装置の読み返しデータを上書きして異常個所の修復を行う過程とを有することを特徴とする。
【発明の効果】
【００１３】
以上のとおり、本発明によれば、ミラーディスク装置の各々のハードディスク装置から読み返しを行うコマンドを発行するプログラムをバックグラウンドで動作させ、この読み返しで各々のハードディスク装置のデータ一致／不一致があるか否かのチェックを行い、不一致が発生した場合には健全側のハードディスク装置の該当ブロックデータを使って異常発生したハードディスク装置の該当ブロックに上書きするようにしたため、以下の効果がある。
【００１４】
（１）ミラーディスク装置で片側ハードディスク装置の故障による交換が生じた場合、故障していないハードディスク装置側の異常ブロックによるミラーディスク装置再構築異常を未然に防止することができる。
【００１５】
（２）上記異常によるシステム復旧作業（バックアップ媒体からのレストア作業）のためのシステム停止を無くすことができ、システムの信頼性を高めることができる。
【発明を実施するための最良の形態】
【００１６】
図１は、本発明の実施形態を示し、ミラーディスク装置で片側のハードディスク装置の故障による交換が生じた場合の処理手順である。
【００１７】
まず、ミラーディスク装置の各々のハードディスク装置２Ａ，２Ｂから同時に読み込みを発生させるコマンド（ＶＥＲＩＦＹコマンドとする）を定期的に送信するプログラムをコンピュータ本体側に用意しておく。このＶＥＲＩＦＹコマンドは、標準のハードディスク装置におけるＳＣＳＩ（small computer system interface）プロトコルであり、ハードディスク装置内の指定された論理ブロックの読み返し処理を行なわせるコマンドである。
【００１８】
本実施形態では、コンピュータ本体は、上記のＶＥＲＩＦＹコマンドをバックグラウンド動作で定期的に実行する。このＶＥＲＩＦＹコマンドに対して、ミラーディスク装置は、図１の（ａ）に示すように、ＶＥＲＩＦＹコマンドを受けたとき、２台のハードディスク装置２Ａ，２Ｂに対して各々読み返し処理を行う。各々のハードディスク装置２Ａ，２Ｂから読み返された全ブロックのデータについて、ミラーディスク装置は、図１の（ｂ）に示すように、各々のハードディスク装置毎にデータの一致／不一致の検査を行い、この検査で読み返しエラーが発生した場合（図示ではハードディスク装置２Ａ側のデータに読み返しエラーが発生した場合）、図１の（ｃ）に示すように、当該エラー発生箇所の異常として検出し、健全側のハードディスク装置２Ｂの読み返しデータで異常発生箇所に上書き（該当データをコピー）し、異常個所の修復を行う。
【００１９】
なお、ＶＥＲＩＦＹコマンドによる読み返しで、ハードディスク装置２Ｂにエラーが発生した場合は、ハードディスク装置２Ａから該当するブロックのデータで上書きする。
【００２０】
したがって、ミラーディスク装置において、片側のハードディスク装置の故障による交換が生じた場合、故障していない健全側ハードディスク装置への当該異常ブロックによるミラーディスク装置再構築異常を防止し、異常箇所の修復ができる。
【００２１】
以上までの説明では、コンピュータのバスをＳＣＳＩとし、そのＶＥＲＩＦＹコマンドを実行する場合を示したが、ＳＣＳＩに限るものではない。これ以外の、例えばＩＤＥ、あるいはＵＳＢバスにおいても同等の処理ができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施形態を示すディスクの再構築処理手順図。
【図２】ミラーディスク装置の構成図。
【図３】ミラーディスク装置の読み書き処理手順図（従来）。
【図４】異常検出時の処理手順図（従来）。
【図５】ディスクの再構築処理手順図（従来）。
【符号の説明】
【００２３】
１  コンピュータ本体
２Ａ，２Ｂ  ミラーディスク装置
【図１】
2007115162.tif 000003
【図２】
2007115162.tif 000004
【図３】
2007115162.tif 000005
【図４】
2007115162.tif 000006
【図５】
2007115162.tif 000007