次に、本発明の実施形態について図面を用いて説明する。
[第1の実施形態]
[実施形態の構成]
図1を参照すると、本発明の第1の実施形態である、読み出し専用インターフェースを有する記憶装置1は、プログラム制御により動作する第1記憶装置3、記憶装置制御部4、第2記憶装置5及び更新サーバ2を有する。加えて、配信サーバ6及びネットワーク網7を有する。
なお、第1の実施形態において第1記憶装置3と第2記憶装置5の信号インターフェースは必ずしも同一である必要は無く、異なる信号インターフェースの混在が可能である。例えばSCSIとIDE等の混在や、USBとファイバーチャネルとLAN等のインターフェース混在が可能である。
また、第1記憶装置3及び第2記憶装置5は、次の条件を全て満たしていれば、磁気記憶装置以外に不揮発性記憶装置・フラッシュメモリ・光ディスク装置等の記憶装置を採用することも可能である。また、異種の記憶装置を混在させることも可能である。この点、異種記異種の記憶装置を混在させる条件として、第2記憶装置5の記憶容量が第1記憶装置3の記憶容量以上である必要がある。また、第1記憶装置3と第2記憶装置5のファイルシステム構造が同じである必要がある。
第1の実施形態において、配信サーバ6から第2記憶装置5への記録要求コマンドは無視される。配信サーバ6から第2記憶装置5に対しては、読み出し要求しかできない。
なお、第1の実施形態において、更新サーバ2に図示しないネットワーク及び特定の電子計算機を接続することで、特定の電子計算機の稼動状態の確認や特定の電子計算機からのデータ参照を行うことも可能である。
[実施形態の動作の説明]
次に、図1及び図2のフローチャートを参照して第1の実施形態である読み出し専用インターフェースを有する記憶装置1の動作について詳細に説明する。
まず、読み出し専用インターフェースを有する記憶装置1の電源が投入(図2のステップS71)されると、記憶装置制御部4は更新サーバ2から第1記憶装置3への更新要求があるかチェックする(図2のステップR71)。
ここで、更新要求がない場合はステップR74に進む。一方、記憶装置制御部4は更新サーバ2から第1記憶装置3への更新要求が発生すると、更新サーバ2から第1記憶装置3への記録処理を許可する。この許可を受けて、第1記憶装置3は更新サーバ2からの更新データ記録動作を開始する(図2のステップS72)。
記憶装置制御部4は、更新サーバ2から第1記憶装置3への更新データ記録処理が完了したかチェックする(図2のステップR72)。そして、記憶装置制御部4は第1記憶装置3への更新データ記録処理が完了すると、第1記憶装置3に記録されたものと同じ更新データを第2記憶装置5に書き込む(図2のステップS73)。
記憶装置制御部4は第2記憶装置5への更新データ記録処理が完了したかチェックする
(図2のステップR73)。そして、記録処理が完了次第ステップR74に進む。
記憶装置制御部4は、第2記憶装置5への更新データ書き込み処理が完了した場合と、更新サーバ2からの更新要求が無い場合と、第1記憶装置3若しくは第2記憶装置5からの読み出し処理中の場合にステップR74の動作を行う。ここで、ステップR74においては、ネットワーク網7から配信サーバ6への参照要求により、第2記憶装置5への参照要求が発生していないかチェックする(図2のステップR74)。
ここで、参照要求がない場合はステップR76に進む。一方、記憶装置制御部4は、ネットワーク網7から配信サーバ6への参照要求により、第2記憶装置5への参照要求が発生すると、第2記憶装置5から配信サーバ6への読み出しを許可する。この許可を受けて、第2記憶装置5は配信サーバ6への読み出し動作を開始する(図2のステップS74)。
記憶装置制御部4はネットワーク網7から配信サーバ6への参照要求により、第2記憶装置5への参照要求が無い場合と第2記憶装置5が読み出し動作を開始した場合に、更新サーバ2から第1記憶装置3への参照要求が発生していないかチェックする(図2のステップR76)。
ここで、参照要求がない場合はステップR77に進む。一方、記憶装置制御部4は更新サーバ2から第1記憶装置3への参照要求が発生すると、第1記憶装置3から更新サーバ2への読み出しを許可する。この許可を受けて、第1記憶装置3は更新サーバ2への読み出し動作を開始する(図2のステップS76)。
記憶装置制御部4は更新サーバ2から第1記憶装置3への参照要求が発生していない場合と第1記憶装置3が読み出し動作を開始した場合に、第1記憶装置3若しくは第2記憶装置5での読み出し動作が完了しているかチェックを行う。そして、第1記憶装置3若しくは第2記憶装置5にて読み出し処理中であれば、ネットワーク網7から配信サーバ6への参照要求により、第2記憶装置5への参照要求が発生していないかチェックする(図2のステップR77とR74)。
記憶装置制御部4は更新サーバ2から第1記憶装置3への参照要求が発生していない場合と第1記憶装置3が読み出し動作を開始した場合に、第1記憶装置3若しくは第2記憶装置5での読み出し動作が完了しているかチェックを行う。そして、第1記憶装置3及び第2記憶装置5にて読み出し処理が完了している場合に更新サーバ2から第1記憶装置3への更新要求があるかチェックする(図2のステップR77とR71)。
[第2の実施形態]
第2の実施形態の構成について、図3のブロック図と、図10、図5及び図6のフローチャートを参照して説明する。
図3を参照すると、本発明の第2の実施形態である読み出し専用インターフェースを有する記憶装置21は、プログラム制御により動作する更新サーバ22、第1記憶装置23、記憶装置制御部24、第2記憶装置25、配信サーバ26、第1警告部31、第2警告部32及びネットワーク網27を有する。
なお、第2の実施形態において第1記憶装置23と第2記憶装置25の信号インターフェースは必ずしも同一である必要は無く、異なる信号インターフェースの混在が可能である。例えばSCSIとIDE、USBとファイバーチャネル、LAN等のインターフェースの混在が可能である。
また、第1記憶装置23及び第2記憶装置25は、次の条件を全て満たしていれば、磁気記憶装置以外に不揮発性記憶装置・フラッシュメモリ・光ディスク装置等の記憶装置を採用することも可能であり、異種の記憶装置を混在させることも可能である。この点、異種記異種の記憶装置を混在させる条件として、第2記憶装置25の記憶容量が第1記憶装置23の記憶容量以上である必要がある。また、第1記憶装置23と第2記憶装置25のファイルシステム構造が同じである必要がある。
第2の実施形態において、配信サーバ26から第2記憶装置25への記録要求コマンドは無視され、配信サーバ26から第2記憶装置25に対しては、読み出し要求しかできない。
第2の実施形態において、更新サーバ22に図示しないネットワーク及び特定の電子計算機を接続することで、特定の電子計算機の稼動状態の確認や特定の電子計算機からのデータ参照を行うことも可能である。
次に、図3のブロック図と、図10、図5及び図6のフローチャートを参照して本発明の第2の実施形態である読み出し専用インターフェースを有する記憶装置21の動作について詳細に説明する。
読み出し専用インターフェースを有する記憶装置21の電源が投入(図10のステップS1)されると、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図10のステップR1)。
ここで、更新要求がない場合はステップR4に進む。一方、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求が発生すると、更新サーバ22から第1記憶装置23への記録処理を許可する。この許可を受けて、第1記憶装置23は更新サーバ22からの更新データ記録動作を開始する(図10のステップS2)。
記憶装置制御部24は更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図10のステップR2)。
また、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しているかチェックする(図10のステップR8)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生していない場合、更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図10のステップR2及び図10のステップR8)。
第1記憶装置23への更新データ記録処理でエラーが発生している場合には、記憶装置制御部24は、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図10のステップS21と図5のステップS21)。
第1のバイパス動作について、図5を用いて説明する。
記憶装置制御部24は第1のバイパス動作を開始すると、第1警告部31に第1記憶装置23動作停止を表示し、断続警告音を発生させる(図5のステップS22)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図5のステップR21)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求がある場合、更新サーバ22から第2記憶装置25への記録処理を許可し、第2記憶装置25は更新サーバ22からの更新データ記録動作を開始する(図5のステップS23)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第2記憶装置25への更新データ記録処理が完了したかチェックする(図5のステップR22)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生しているかチェックする(図5のステップR23)。
第1のバイパス動作中、記憶装置制御部24は、第2記憶装置25への更新データ記録処理でエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する。(図5のステップS25)
一方、第1のバイパス動作中、第2記憶装置25への更新データ記録処理でエラーが発生しなかった場合には、記憶装置制御部24は、更新サーバ22から第2記憶装置25への更新データ記録処理が完了したかチェックする(図5のステップR23と図5のステップR22)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第2記憶装置25への更新データ記録処理が完了した場合に更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無いかチェックする(図5のステップR24)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第2記憶装置25への更新データ記録処理が完了した場合で更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求がある場合に、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出しを許可する。この許可を受けて、第2記憶装置25は更新サーバ22若しくは配信サーバ26への読み出し動作を開始する(図5のステップS24)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図5のステップR25)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しているかチェックする(図5のステップR26)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しなかった場合、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図5のステップR25と図5のステップR26)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図5のステップS25)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無い場合若しくは、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了した場合に、更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図5のステップR24と図5のステップR25と図5のステップR21)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理が完了すると、同じデータを第2記憶装置25に書き込む(図10のステップS3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理が完了したかチェックする(図10のステップR3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生しているかチェックする(図10のステップR9)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生していない場合、記憶装置制御部24から第2記憶装置25への更新データ記録処理が完了したかチェックする(図10のステップR9と図10のステップR3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生している場合、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図10のステップS31と図6のステップS31)。
第2のバイパス動作について、図6を用いて説明する。
記憶装置制御部24は第2のバイパス動作を開始すると、第2警告部32に第2記憶装置25動作停止を表示し、断続警告音を発生させる(図6のステップS32)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図6のステップR31)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求がある場合、更新サーバ22から第1記憶装置23への記録処理を許可し、第1記憶装置23は更新サーバ22からの更新データ記録動作を開始する(図6のステップS33)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図6のステップR32)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しているかチェックする(図6のステップR33)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しなかった場合、更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図6のステップR33と図6のステップR32)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第1記憶装置23への更新データ記録処理が完了した場合に更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無いかチェックする(図6のステップR34)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第1記憶装置23への更新データ記録処理が完了した場合で更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求がある場合に第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出しを許可する。この許可を受けて、第1記憶装置23は更新サーバ22若しくは配信サーバ26への読み出し動作を開始する(図6のステップS34)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図6のステップR35)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でリードエラーが発生しているかチェックする(図6のステップR36)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しなかった場合、第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図6のステップR35と図6のステップR36)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無い場合若しくは、第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了した場合に、更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図6のステップR34と図6のステップR35と図6のステップR31)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理が完了した場合、若しくは更新サーバ22からの更新要求が無い場合に第2記憶装置25への参照要求が無いかチェックする(図10のステップR4)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理が完了し第2記憶装置25への参照要求がある場合、若しくは更新サーバ22からの更新要求が無く第2記憶装置25への参照要求がある場合に第2記憶装置25から配信サーバ26への読み出しを許可する。この許可を受けて、第2記憶装置25は配信サーバ26への読み出し動作を開始する(図10のステップS4)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理が完了したかチェックする(図10のステップR5)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生しているかチェックする(図10のステップR10)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生していない場合、第2記憶装置25から配信サーバ26への読み出し処理が完了したかチェックする(図10のステップR10と図10のステップR5)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状態を表示し、リードエラーが発生したデータと同じデータを第1記憶装置23から読み出す(図10のステップS6)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生しているかチェックする(図10のステップR11)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、第2警告部32に第2記憶装置25のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図10のステップS12)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図10のステップS6で読んだデータ)を第2記憶装置25へ記録する(図10のステップS7)。
記憶装置制御部24は第2記憶装置25への記録処理でエラーが発生したかチェックする(図10のステップR12)。
記憶装置制御部24は第2記憶装置25への記録処理でエラーが発生している場合、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図10のステップS31と図6のステップS31)。
記憶装置制御部24は第2記憶装置25への正常に記録処理が完了した場合、第2記憶装置25から同データを読み出す(図10のステップS8)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラーが発生した場合、若しくは第1記憶装置23から読み出したデータと一致しない場合に、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図10のステップR13と図10のステップS31と図6のステップS31)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合、第2記憶装置25から配信サーバ26への読み出し処理が完了したかチェックする(図10のステップR13と図10のステップR5)。
記憶装置制御部24は第2記憶装置25からの読み出し処理が完了した場合、若しくは第2記憶装置25へ参照要求が無い場合に更新サーバ22から第1記憶装置23への参照要求が無いかチェックする(図10のステップR6)。
記憶装置制御部24は更新サーバ22から第1記憶装置23への参照要求が無いかチェックし、更新サーバ22から第1記憶装置23への参照要求が無い場合、更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図10のステップR6と図10のステップR1)。
記憶装置制御部24は第2記憶装置25からの読み出し処理が完了し更新サーバ22から第1記憶装置23への参照要求がある場合、若しくは第2記憶装置25への参照要求が無く更新サーバ22から第1記憶装置23への参照要求がある場合に第1記憶装置23から更新サーバ22への読み出し処理を許可し、第1記憶装置23から更新サーバ22への読み出し処理を開始する(図10のステップS5)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理が完了したかチェックする(図10のステップR7)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、エラーが発生しているかチェックする(図10のステップR14)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、リードエラーが発生していない場合、第1記憶装置23から更新サーバ22への読み出し処理が完了したかチェックする(図10のステップR14と図10のステップR7)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状態を表示し、リードエラーが発生したデータと同じデータを第2記憶装置25から読み出す(図10のステップS9)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生しているかチェックする(図10のステップR15)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、第2警告部32に第2記憶装置25のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図10のステップS12)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図10のステップS9で読んだデータ)を第1記憶装置23に記録する(図10のステップS10)。
記憶装置制御部24は第1記憶装置23への記録処理でエラーが発生しているかチェックする(図10のステップR16)。
記憶装置制御部24は第1記憶装置23への記録処理でエラーが発生している場合、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図10のステップS21と図5のステップS21)。
記憶装置制御部24は第1記憶装置23へ正常に記録処理が完了した場合、第1記憶装置23から同データを読み出す(図10のステップS11)。
記憶装置制御部24は第1記憶装置23からの読み出し処理でリードエラーが発生した場合、若しくは第2記憶装置25から読み出したデータと一致しない場合に、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図10のステップR17と図10のステップS21と図5のステップS21)。
記憶装置制御部24は第1記憶装置23からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合、第1記憶装置23から更新サーバ22への読み出し処理が完了したかチェックする(図10のステップR17と図10のステップR7)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理が完了したかチェックを行い、完了している場合、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図10のステップR7と図10のステップR1)。
以上説明した本発明の第2の実施形態による第1の効果は、第1記憶装置23若しくは第2記憶装置25のいずれかが故障した場合にあっても、もう一方の記憶装置で代替処理が可能となり、信頼性が向上することにある。
また、本発明の第2の実施形態による第2の効果は、第1記憶装置23若しくは第2記憶装置25のいずれかでリライト動作(再記録動作)にて修復可能な故障が発生した場合にあっても、もう一方の記憶装置からデータ補間動作を行うことによる自動修復が可能となることである。更に、自動修復が可能となったことにより、データ消失の機会を削減し、データの信頼性が向上するという効果も奏することとなる。
[第3の実施形態]
次に第3の実施形態の構成について、図3のブロック図と、図4、図5及び図6のフローチャートを参照して説明する。図3を参照すると、本発明読み出し専用インターフェースを有する記憶装置21の第3の実施形態は、プログラム制御により動作する更新サーバ22、第1記憶装置23、記憶装置制御部24、第2記憶装置25、配信サーバ26、第1警告部31、第2警告部32及びネットワーク網27を有する。
なお、第3の実施形態において第1記憶装置23と第2記憶装置25の信号インターフェースは必ずしも同一である必要は無く、異なる信号インターフェースの混在が可能である。例えばSCSIとIDE、USBとファイバーチャネル、LAN等のインターフェースの混在が可能である。
また、第1記憶装置23及び第2記憶装置25は、次の条件を全て満たしていれば、磁気記憶装置以外に不揮発性記憶装置・フラッシュメモリ・光ディスク装置等の記憶装置を採用することも可能であり、異種の記憶装置を混在させることも可能である。この点、異種記異種の記憶装置を混在させる条件として、第2記憶装置25の記憶容量が第1記憶装置23の記憶容量以上である必要がある。また、第1記憶装置23と第2記憶装置25のファイルシステム構造が同じである必要がある。
第3の実施形態において、配信サーバ26から第2記憶装置25への記録要求コマンドは無視され、配信サーバ26から第2記憶装置25に対しては、読み出し要求しかできない。
第3の実施形態において、更新サーバ22に図示しないネットワーク及び特定の電子計算機を接続することで、特定の電子計算機の稼動状態の確認や特定の電子計算機からのデータ参照を行うことも可能である。
次に、図3のブロック図と、図4、図5及び図6のフローチャートを参照して第3の実施形態である読み出し専用インターフェースを有する記憶装置21の動作について詳細に説明する。
読み出し専用インターフェースを有する記憶装置21の電源が投入(図4のステップS1)されると、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図4のステップR1)。
記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求が発生すると、更新サーバ22から第1記憶装置23への記録処理を許可し、第1記憶装置23は更新サーバ22からの更新データ記録動作を開始する(図4のステップS2)。
記憶装置制御部24は更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図4のステップR2)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しているかチェックする(図4のステップR8)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生していない場合、更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図4のステップR8と図4のステップR2)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生している場合、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図4のステップS21と図5のステップS21)。
第1のバイパス動作について、図5を用いて説明する。
記憶装置制御部24は第1のバイパス動作を開始すると、第1警告部31に第1記憶装置23動作停止を表示し、断続警告音を発生させる(図5のステップS22)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図5のステップR21)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求がある場合、更新サーバ22から第2記憶装置25への記録処理を許可し、第2記憶装置25は更新サーバ22からの更新データ記録動作を開始する(図5のステップS23)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第2記憶装置25への更新データ記録処理が完了したかチェックする(図5のステップR22)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生しているかチェックする(図5のステップR23)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図5のステップS25)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生しなかった場合、更新サーバ22から第2記憶装置25への更新データ記録処理が完了したかチェックする(図5のステップR23と図5のステップR22)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第2記憶装置25への更新データ記録処理が完了した場合に更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無いかチェックする(図5のステップR24)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第2記憶装置25への更新データ記録処理が完了した場合で更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求がある場合に、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出しを許可する。この許可を受けて、第2記憶装置25は更新サーバ22若しくは配信サーバ26への読み出し動作を開始する(図5のステップS24)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図5のステップR25)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しているかチェックする(図5のステップR26)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しなかった場合、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図5のステップR25と図5のステップR26)。
第1のバイパス動作中、記憶装置制御部24は第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図5のステップS25)。
第1のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無い場合若しくは、第2記憶装置25から更新サーバ22若しくは配信サーバ26への読み出し処理が完了した場合に、更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図5のステップR24と図5のステップR25と図5のステップR21)。
記憶装置制御部24は第1記憶装置23への更新データ記録処理が完了すると、同じデータを第2記憶装置25に書き込む(図4のステップS3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理が完了したかチェックする(図4のステップR3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生しているかチェックする(図4のステップR9)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生していない場合、記憶装置制御部24から第2記憶装置25への更新データ記録処理が完了したかチェックする(図4のステップR9と図4のステップR3)。
記憶装置制御部24は第2記憶装置25への更新データ記録処理でエラーが発生している場合、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図4のステップS31と図6のステップS31)。
第2のバイパス動作について、図6を用いて説明する。
記憶装置制御部24は第2のバイパス動作を開始すると、第2警告部32に第2記憶装置25動作停止を表示し、断続警告音を発生させる(図6のステップS32)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図6のステップR31)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求がある場合、更新サーバ22から第1記憶装置23への記録処理を許可し、第1記憶装置23は更新サーバ22からの更新データ記録動作を開始する(図6のステップS33)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図6のステップR32)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しているかチェックする(図6のステップR33)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23への更新データ記録処理でエラーが発生しなかった場合、更新サーバ22から第1記憶装置23への更新データ記録処理が完了したかチェックする(図6のステップR33と図6のステップR32)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第1記憶装置23への更新データ記録処理が完了した場合に更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無いかチェックする(図6のステップR34)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22からの更新要求にて更新要求無しの場合、若しくは更新サーバ22から第1記憶装置23への更新データ記録処理が完了した場合で更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求がある場合に第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出しを許可する。この許可を受けて、第1記憶装置23は更新サーバ22若しくは配信サーバ26への読み出し動作を開始する(図6のステップS34)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図6のステップR35)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でリードエラーが発生しているかチェックする(図6のステップR36)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生しなかった場合、第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了したかチェックする(図6のステップR35と図6のステップR36)。
第2のバイパス動作中、記憶装置制御部24は第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理でエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部24は更新サーバ22から第1記憶装置23若しくは配信サーバ26から第2記憶装置25への参照要求が無い場合若しくは、第1記憶装置23から更新サーバ22若しくは配信サーバ26への読み出し処理が完了した場合に、更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図6のステップR34と図6のステップR35と図6のステップR31)。
記憶装置制御部24は更新サーバ22から第1記憶装置23への更新要求が無い場合と第2記憶装置25への更新データ記録処理が完了した場合並びに第1記憶装置23若しくは第2記憶装置25から読み出し処理が完了していない場合に配信サーバ26から第2記憶装置25への参照要求があるかチェックする(図4のステップR4)。
記憶装置制御部24は前記チェックにて第2記憶装置25への参照要求がある場合に第2記憶装置25から配信サーバ26への読み出しを許可し、第2記憶装置25は配信サーバ26への読み出し動作を開始する(図4のステップS4)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生しているかチェックする(図4のステップR10)。
記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生していない場合、更新サーバ22から第1記憶装置23への参照要求が無いかチェックする(図4のステップR10と図4のステップR6)。
一方、記憶装置制御部24は第2記憶装置25から配信サーバ26への読み出し処理において、リードエラーが発生した場合、第2警告部32に第2記憶装置25のエラー状態を表示し、リードエラーが発生したデータと同じデータを第1記憶装置23から読み出す(図4のステップS6)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生しているかチェックする(図4のステップR11)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、第2警告部32に第2記憶装置25のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図4のステップS12)。
記憶装置制御部24は第1記憶装置23からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図4のステップS6で読んだデータ)を第2記憶装置25へ書き込む(図4のステップS7)。
記憶装置制御部24は第2記憶装置25への記録処理でエラーが発生したかチェックする(図4のステップR12)。
記憶装置制御部24は第2記憶装置25への記録処理でエラーが発生している場合、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図4のステップS31と図6のステップS31)。
記憶装置制御部24は第2記憶装置25への正常に記録処理が完了した場合、第2記憶装置25から同データを読み出す(図4のステップS8)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラーが発生した場合、若しくは第1記憶装置23から読み出したデータと一致しない場合に、第2記憶装置25の動作を停止し、第1記憶装置23にバイパス処理を行い第2のバイパス動作を開始する(図4のステップR13と図4のステップS31と図6のステップS31)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置25への参照要求が無い場合に第1記憶装置23への参照要求が発生しているかチェックする(図4のステップR4と図4のステップR13と図4のステップR6)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置25への参照要求が無い場合に、更新サーバ22から第1記憶装置23への参照要求があるかチェックを行い、更新サーバ22から第1記憶装置23への参照要求がある場合に第1記憶装置23から更新サーバ22への読み出し処理を許可する。この許可を受けて、第1記憶装置23から更新サーバ22への読み出し処理を開始する(図4のステップS5)。
記憶装置制御部24は第2記憶装置25からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置25への参照要求が無い場合に、更新サーバ22から第1記憶装置23への参照要求があるかチェックを行い、更新サーバ22から第1記憶装置23への参照要求が無い場合に、第1記憶装置23若しくは第2記憶装置25の読み出し処理が完了したかチェックする(図4のステップR6と図4のステップR7)。
記憶装置制御部24は第1記憶装置23若しくは第2記憶装置25が読み出し処理中の場合、第2記憶装置25への参照要求が発生しているかチェックする(図4のステップR7と図4のステップR4)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、リードエラーが発生していないかチェックする(図4のステップR14)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、リードエラーが発生していない場合、第1記憶装置23若しくは第2記憶装置25の読み出し処理が完了したかチェックする(図4のステップR14と図4のステップR7)。
記憶装置制御部24は第1記憶装置23から更新サーバ22への読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状態を表示し、リードエラーが発生したデータと同じデータを第2記憶装置25から読み出す(図4のステップS9)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生しているかチェックする(図4のステップR15)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生した場合、第1警告部31に第1記憶装置23のエラー状況を表示し、第2警告部32に第2記憶装置25のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置21の動作を停止する(図4のステップS12)。
記憶装置制御部24は第2記憶装置25からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図4のステップS9で読んだデータ)を第1記憶装置23へ書き込む(図4のステップS10)。
記憶装置制御部24は第1記憶装置23への記録処理でエラーが発生しているかチェックする(図4のステップR16)。
記憶装置制御部24は第1記憶装置23への記録処理でエラーが発生している場合、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図4のステップS21と図5のステップS21)。
記憶装置制御部24は第1記憶装置23への正常に記録処理が完了した場合、第1記憶装置23から同データを読み出す(図4のステップS11)。
記憶装置制御部24は第1記憶装置23からの読み出し処理でリードエラーが発生した場合、若しくは第2記憶装置25から読み出したデータと一致しない場合に、第1記憶装置23の動作を停止し、第2記憶装置25にバイパス処理を行い第1のバイパス動作を開始する(図4のステップR17と図4のステップS21と図5のステップS21)。
記憶装置制御部24は第1記憶装置23からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合、第1記憶装置23から更新サーバ22への読み出し処理が完了したかチェックする(図4のステップR17と図4のステップR7)。
記憶装置制御部24は第1記憶装置23若しくは第2記憶装置25の読み出し処理が完了したかチェックを行い、完了している場合に更新サーバ22から第1記憶装置23への更新要求があるかチェックする(図4のステップR7と図4のステップR1)。
本発明の第3の実施形態による効果は、第1記憶装置23から更新サーバ22への読み出し動作と第2記憶装置25から配信サーバ26の読み出し動作を同時並列処理することができることにある。
[第4の実施形態]
次に第4の実施形態の構成について、図7のブロック図と、図8、図5及び図6のフローチャートを参照して説明する。図7を参照すると、本発明読み出し専用インターフェースを有する記憶装置41の第4の実施形態は、プログラム制御により動作する更新サーバ42、第1記憶装置43、記憶装置制御部44、第2記憶装置45、配信サーバ46、第1警告部51、第2警告部52、スイッチ部54及びネットワーク網47を有する。
スイッチ部54は上,OFF,下の3状態を設定できる3ステートのスイッチである。
なお、第4の実施形態において第1記憶装置43と第2記憶装置45の信号インターフェースは必ずしも同一である必要は無く、異なる信号インターフェースの混在が可能である。例えばSCSIとIDE、USBとファイバーチャネル、LAN等のインターフェース混在が可能である。
また、第1記憶装置43及び第2記憶装置45は、次の条件を全て満たしていれば、磁気記憶装置以外に不揮発性記憶装置・フラッシュメモリ・光ディスク装置等の記憶装置を採用することも可能であり、異種の記憶装置を混在させることも可能である。この点、異種記異種の記憶装置を混在させる条件として、第2記憶装置45の記憶容量が第1記憶装置43の記憶容量以上である必要がある。また、第1記憶装置43と第2記憶装置25のファイルシステム構造が同じである必要がある。
第4の実施形態において、配信サーバ46から第2記憶装置45への記録要求コマンドは無視され、配信サーバ46から第2記憶装置45に対しては、読み出し要求しかできない。
第4の実施形態において、更新サーバ42に図示しないネットワーク及び特定の電子計算機を接続することで、特定の電子計算機の稼動状態や特定の電子計算機からのデータ参照を行うことも可能である。
図7のブロック図と、図8、図5及び図6のフローチャートを参照して本発明の第4の実施形態である読み出し専用インターフェースを有する記憶装置41の動作について詳細に説明する。
読み出し専用インターフェースを有する記憶装置41の電源が投入(図8のステップS1)されると、
記憶装置制御部44はスイッチ部54の状態をチェックする(図8のステップR18)。
記憶装置制御部44はスイッチ部54が中央以外の場合はコピー動作を開始する。具体的には、スイッチ部54が上側に倒れていれば第2記憶装置45から第1記憶装置43へ、スイッチ部54が下側に倒れていれば第1記憶装置43から第2記憶装置45へコピー動作を開始する(図8のステップS13)。
記憶装置制御部44は前記コピー動作が完了しているかチェックする(図8のステップR19)。
記憶装置制御部前記は前記コピー動作中、エラーが発生しているかチェックする(図8のステップR20)。
記憶装置制御部44は前記コピー動作中、エラーを検知すると第1警告部51及び第2警告部52にそれぞれのディスク状態を表示し、連続警告音を鳴らして読み出し専用インターフェースを有する記憶装置41の動作を停止する(図8のステップS15)。
記憶装置制御部44は前記コピー動作中、エラーが発生していなければ、コピー動作が完了しているかチェックを繰り返す(図8のステップR20と図8のステップR19)。
記憶装置制御部44は前記コピー動作が完了したことを検知すると、第1警告部51及び第2警告部52にそれぞれのディスク状態を表示後、コピー動作が完了した旨表示し、スイッチ部54を戻す旨表示する動作を繰り返す(図8のステップS14)。
記憶装置制御部44は前記コピー動作が完了した場合若しくは、スイッチ部54が中央にあった場合に、更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図8のステップR1)。
記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求が発生すると、更新サーバ42から第1記憶装置43への記録処理を許可し、第1記憶装置43は更新サーバ42からの更新データ記録動作を開始する(図8のステップS2)。
記憶装置制御部44は更新サーバ42から第1記憶装置43への更新データ記録処理が完了したかチェックする(図8のステップR2)。
記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生しているかチェックする(図8のステップR8)。
記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生していない場合、更新サーバ42から第1記憶装置43への更新データ記録処理が完了したかチェックする(図8のステップR8と図8のステップR2)。
記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生している場合、第1記憶装置43の動作を停止し、第2記憶装置45にバイパス処理を行い第1のバイパス動作を開始する(図8のステップS21と図5のステップS21)。
記憶装置制御部44は第1のバイパス動作を開始すると、第1警告部51に第1記憶装置43動作停止を表示し、断続警告音を発生させる(図5のステップS22)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図5のステップR21)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求がある場合、更新サーバ42から第2記憶装置45への記録処理を許可し、第2記憶装置45は更新サーバ42からの更新データ記録動作を開始する(図5のステップS23)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42から第2記憶装置45への更新データ記録処理が完了したかチェックする(図5のステップR22)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生しているかチェックする(図5のステップR23)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生した場合、第2警告部52に第2記憶装置45のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図5のステップS25)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生しなかった場合、更新サーバ42から第2記憶装置45への更新データ記録処理が完了したかチェックする(図5のステップR23と図5のステップR22)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42からの更新要求にて更新要求無しの場合、若しくは更新サーバ42から第2記憶装置45への更新データ記録処理が完了した場合に更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求が無いかチェックする(図5のステップR24)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42からの更新要求にて更新要求無しの場合、若しくは更新サーバ42から第2記憶装置45への更新データ記録処理が完了した場合で更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求がある場合に、第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出しを許可する。この許可を受けて、第2記憶装置45は更新サーバ42若しくは配信サーバ46への読み出し動作を開始する(図5のステップS24)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理が完了したかチェックする(図5のステップR25)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理でエラーが発生しているかチェックする(図5のステップR26)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理でエラーが発生しなかった場合、第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理が完了したかチェックする(図5のステップR25と図5のステップR26)。
第1のバイパス動作中、記憶装置制御部44は第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理でエラーが発生した場合、第2警告部52に第2記憶装置45のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図5のステップS25)。
第1のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求が無い場合若しくは、第2記憶装置45から更新サーバ42若しくは配信サーバ46への読み出し処理が完了した場合に、更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図5のステップR24と図5のステップR25と図5のステップR21)。
記憶装置制御部44は第1記憶装置43への更新データ記録処理が完了すると、同じデータを第2記憶装置45に書き込む(図8のステップS3)。
記憶装置制御部44は第2記憶装置45への更新データ記録処理が完了したかチェックする(図8のステップR3)。
記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生しているかチェックする(図8のステップR9)。
記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生していない場合、記憶装置制御部44から第2記憶装置45への更新データ記録処理が完了したかチェックする(図8のステップR9と図8のステップR3)。
記憶装置制御部44は第2記憶装置45への更新データ記録処理でエラーが発生している場合、第2記憶装置45の動作を停止し、第1記憶装置43にバイパス処理を行い第2のバイパス動作を開始する(図8のステップS31と図6のステップS31)。
記憶装置制御部44は第2のバイパス動作を開始すると、第2警告部52に第2記憶装置45動作停止を表示し、断続警告音を発生させる(図6のステップS32)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図6のステップR31)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求がある場合、更新サーバ42から第1記憶装置43への記録処理を許可し、第1記憶装置43は更新サーバ42からの更新データ記録動作を開始する(図6のステップS33)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43への更新データ記録処理が完了したかチェックする(図6のステップR32)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生しているかチェックする(図6のステップR33)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生した場合、第1警告部51に第1記憶装置43のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43への更新データ記録処理でエラーが発生しなかった場合、更新サーバ42から第1記憶装置43への更新データ記録処理が完了したかチェックする(図6のステップR33と図6のステップR32)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42からの更新要求にて更新要求無しの場合、若しくは更新サーバ42から第1記憶装置43への更新データ記録処理が完了した場合に更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求が無いかチェックする(図6のステップR34)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42からの更新要求にて更新要求無しの場合、若しくは更新サーバ42から第1記憶装置43への更新データ記録処理が完了した場合で更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求がある場合に第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出しを許可する。この許可を受けて、第1記憶装置43は更新サーバ42若しくは配信サーバ46への読み出し動作を開始する(図6のステップS34)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理が完了したかチェックする(図6のステップR35)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理でリードエラーが発生しているかチェックする(図6のステップR36)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理でエラーが発生しなかった場合、第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理が完了したかチェックする(図6のステップR35と図6のステップR36)。
第2のバイパス動作中、記憶装置制御部44は第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理でエラーが発生した場合、第1警告部51に第1記憶装置43のエラー状況を表示し、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図6のステップS35)。
第2のバイパス動作中、記憶装置制御部44は更新サーバ42から第1記憶装置43若しくは配信サーバ46から第2記憶装置45への参照要求が無い場合若しくは、第1記憶装置43から更新サーバ42若しくは配信サーバ46への読み出し処理が完了した場合に、更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図6のステップR34と図6のステップR35と図6のステップR31)。
記憶装置制御部44は更新サーバ42から第1記憶装置43への更新要求が無い場合と第2記憶装置45への更新データ記録処理が完了した場合並びに第1記憶装置43若しくは第2記憶装置45から読み出し処理が完了していない場合に配信サーバ46から第2記憶装置45への参照要求があるかチェックする(図8のステップR4)。
記憶装置制御部44は前記チェックにて第2記憶装置45への参照要求がある場合に第2記憶装置45から配信サーバ46への読み出しを許可し、第2記憶装置45は配信サーバ46への読み出し動作を開始する(図8のステップS4)。
記憶装置制御部44は第2記憶装置45から配信サーバ46への読み出し処理において、リードエラーが発生しているかチェックする(図8のステップR10)。
記憶装置制御部44は第2記憶装置45から配信サーバ46への読み出し処理において、リードエラーが発生していない場合、更新サーバ42から第1記憶装置43への参照要求が無いかチェックする(図8のステップR10と図8のステップR6)。
記憶装置制御部44は第2記憶装置45から配信サーバ46への読み出し処理において、リードエラーが発生した場合、第2警告部52に第2記憶装置45のエラー状態を表示し、リードエラーが発生したデータと同じデータを第1記憶装置43から読み出す(図8のステップS6)。
記憶装置制御部44は第1記憶装置43からの読み出し処理において、リードエラーが発生しているかチェックする(図8のステップR11)。
記憶装置制御部44は第1記憶装置43からの読み出し処理において、リードエラーが発生した場合、第1警告部51に第1記憶装置43のエラー状況を表示し、第2警告部52に第2記憶装置45のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図8のステップS12)。
記憶装置制御部44は第1記憶装置43からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図8のステップS6で読んだデータ)を第2記憶装置45へ書き込む(図8のステップS7)。
記憶装置制御部44は第2記憶装置45への記録処理でエラーが発生したかチェックする(図8のステップR12)。
記憶装置制御部44は第2記憶装置45への記録処理でエラーが発生している場合、第2記憶装置45の動作を停止し、第1記憶装置43にバイパス処理を行い第2のバイパス動作を開始する(図8のステップS31と図6のステップS31)。
記憶装置制御部44は第2記憶装置45への正常に記録処理が完了した場合、第2記憶装置45から同データを読み出す(図8のステップS8)。
記憶装置制御部44は第2記憶装置45からの読み出し処理でリードエラーが発生した場合、若しくは第1記憶装置43から読み出したデータと一致しない場合に、第2記憶装置45の動作を停止し、第1記憶装置43にバイパス処理を行い第2のバイパス動作を開始する(図8のステップR13と図8のステップS31と図6のステップS31)。
記憶装置制御部44は第2記憶装置45からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置45への参照要求が無い場合に第1記憶装置43への参照要求が発生しているかチェックする(図8のステップR4と図8のステップR13と図8のステップR6)。
記憶装置制御部44は第2記憶装置45からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置45への参照要求が無い場合に、更新サーバ42から第1記憶装置43への参照要求があるかチェックを行い、更新サーバ42から第1記憶装置43への参照要求がある場合に第1記憶装置43から更新サーバ42への読み出し処理を許可し、第1記憶装置43から更新サーバ42への読み出し処理を開始する(図8のステップS5)。
記憶装置制御部44は第2記憶装置45からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合と、第2記憶装置45への参照要求が無い場合に、更新サーバ42から第1記憶装置43への参照要求があるかチェックを行い、更新サーバ42から第1記憶装置43への参照要求が無い場合に、第1記憶装置43若しくは第2記憶装置45の読み出し処理が完了したかチェックする(図8のステップR6と図8のステップR7)。
記憶装置制御部44は第1記憶装置43若しくは第2記憶装置45が読み出し処理中の場合、第2記憶装置45への参照要求が発生しているかチェックする(図8のステップR7と図8のステップR4)。
記憶装置制御部44は第1記憶装置43から更新サーバ42への読み出し処理において、リードエラーが発生していないかチェックする(図8のステップR14)。
記憶装置制御部44は第1記憶装置43から更新サーバ42への読み出し処理において、リードエラーが発生していない場合、第1記憶装置43若しくは第2記憶装置45の読み出し処理が完了したかチェックする(図8のステップR14と図8のステップR7)。
記憶装置制御部44は第1記憶装置43から更新サーバ42への読み出し処理において、リードエラーが発生した場合、第1警告部51に第1記憶装置43のエラー状態を表示し、リードエラーが発生したデータと同じデータを第2記憶装置45から読み出す(図8のステップS9)。
記憶装置制御部44は第2記憶装置45からの読み出し処理において、リードエラーが発生しているかチェックする(図8のステップR15)。
記憶装置制御部44は第2記憶装置45からの読み出し処理において、リードエラーが発生した場合、第1警告部51に第1記憶装置43のエラー状況を表示し、第2警告部52に第2記憶装置45のエラー状況を表示した後、連続警告音を発生させ読み出し専用インターフェースを有する記憶装置41の動作を停止する(図8のステップS12)。
記憶装置制御部44は第2記憶装置45からの読み出し処理において、リードエラーが発生しなかった場合に同データ(図8のステップS9で読んだデータ)を第1記憶装置43へ書き込む(図8のステップS10)。
記憶装置制御部44は第1記憶装置43への記録処理でエラーが発生しているかチェックする(図8のステップR16)。
記憶装置制御部44は第1記憶装置43への記録処理でエラーが発生している場合、第1記憶装置43の動作を停止し、第2記憶装置45にバイパス処理を行い第1のバイパス動作を開始する(図8のステップS21と図5のステップS21)。
記憶装置制御部44は第1記憶装置43への正常に記録処理が完了した場合、第1記憶装置43から同データを読み出す(図8のステップS11)。
記憶装置制御部44は第1記憶装置43からの読み出し処理でリードエラーが発生した場合、若しくは第2記憶装置45から読み出したデータと一致しない場合に、第1記憶装置43の動作を停止し、第2記憶装置45にバイパス処理を行い第1のバイパス動作を開始する(図8のステップR17と図8のステップS21と図5のステップS21)。
記憶装置制御部44は第1記憶装置43からの読み出し処理でリードエラー若しくはデータ不一致が無かった場合、第1記憶装置43から更新サーバ42への読み出し処理が完了したかチェックする(図8のステップR17と図8のステップR7)。
記憶装置制御部44は第1記憶装置43若しくは第2記憶装置45の読み出し処理が完了したかチェックを行い、完了している場合に更新サーバ42から第1記憶装置43への更新要求があるかチェックする(図8のステップR7と図8のステップR1)。
本発明の第4の実施形態による第1の効果は、第1記憶装置43若しくは第2記憶装置45のいずれかにおいて回復不能な故障が発生した場合、もう一方の記憶装置から復旧動作が可能となり、記憶システム単独で故障時のデータ復旧が可能となることから、修復時間を短縮でき信頼性・稼働率向上が期待できることである。
例えば、未だ読み込みエラーや書き込みのエラーは発生していないが、片方の記憶装置から異常音が発生しているため、第1記憶装置43若しくは第2記憶装置を、他の補修用記憶装置に交換するような場合が考えられる。このような場合にスイッチ部54を利用して、交換後の記憶装置に対してマニュアルでコピー指示を行うことができる。
また、第4の実施形態にあって、第1記憶装置43若しくは第2記憶装置45故障後に補修用記憶装置が実装されたか否かが、記憶装置内の特定符号列若しくは記憶装置内シリアル符号情報等により識別できる場合にあっては、記憶装置制御部44による前記符号の判定動作によって自動復旧動作を行うようにしても良い。
以上詳細に説明し本発明の実施形態の効果を、背景技術として記載した特許文献1及び特許文献2と対比しながら説明する。
上述のように、特許文献1の構成にあっては第一ヘッドクラッシュに伴う媒体面破損が発生した場合、その媒体面破損を受けて第二ヘッドがクラッシュする可能性を否定できない。そして、この場合単一ヘッド故障からシステム全停止となってしまう問題点が潜在する。
しかし、本発明の実施形態である読み出し専用インターフェースを有する記憶装置においては、単一記憶装置内での読み書き動作を行うヘッド数は1つであり、前記のように媒体面破損からもう一方のヘッドクラッシュを誘発することは無い。
上述のように、特許文献2の構成では、読み書き用ヘッド数は1つであるが、ヘッドがクラッシュするとシステム全停止となってしまう問題点がある。
また、上述のように、特許文献2を応用する構成にあっても、書き込み動作中は読み出しを禁止する排他制御動作を必要とする。
しかし、特許文献2では記憶装置と第二記憶装置間の通信経路が無いことから、ソフトウェアドライバでの排他制御が必要となり、記憶システム単体での排他制御動作はできないという問題点がある。
更に、前記構成にて読み出し時にエラーが発生した場合、記憶装置と第二記憶装置間に同データが書かれておりデータの相互補完を行おうとしても、特許文献2では記憶装置と第二記憶装置間の通信経路が無いことから、ソフトウェアドライバでのリトライ処理が必要となり、記憶システム単体では相互補完動作ができないという問題点もある。
また、前記構成で書き込み時にエラーが発生した場合にあっては、古いデータへのアクセスを禁止する為にエラーが発生した記憶装置(記憶装置若しくは第二記憶装置)を第一コンピュータ及び第二コンピュータから完全に切り離す必要があるが、特許文献2は時分割切り替え動作となっており、書き込み動作異常を伝える経路が無く、第一コンピュータ及び第二コンピュータから切り離すことができない問題点があり、更新可能な電子計算機からそれぞれの記憶装置へ書き込む処理も2回必要となるという問題点もある。
更に、前記排他制御についての問題とデータの相互補完問題並びに書き込みエラー発生時における記憶装置切り離しの問題を解決するために、図9の構成とした場合にあっても、記憶装置制御部64にて両電子計算機の入出力処理及び両記憶装置の入出力処理及びエラー処理の全てについて処理する必要がある。そのため記憶装置制御部64でのオーバーヘッドが無視できない、という問題点がある。
本発明の実施形態である読み出し専用インターフェースを有する記憶装置にあっては、記憶装置制御部にて更新サーバ及び配信サーバとデータのやり取りを行う必要が無いことから、記憶装置制御部でのオーバーヘッドは最小となり、更新サーバからの書き込み動作は1回で完了する。
本発明読み出し専用インターフェースを有する記憶装置では前記排他制御の問題点についても記憶装置制御部にて第一記憶装置と第二記憶装置の状態を随時チェックすることで解決しており、システム単体での排他制御動作を実現している。
また、読み出しエラー時におけるデータの相互補完動作についても、読み出しエラーの際、同データ再書き込み(リライト動作)を行い再読み出しすることにより、読み出し可能となるデータを救済する機能を有している。更に、ヘッド故障が発生した場合及び前記リライト後のデータ化けを検出した場合にあっても、バイパス機能を有していることから、システム単体での動作継続が可能である。
また、万が一記憶装置2台が同時不調(両記憶装置がともに書き込み不可/読出し不可)となった場合には記憶システムを停止する機能も有している。
前記より、本発明読み出し専用インターフェースを有する記憶装置にあっては、電子計算機管理者若しくは図示しない特定の電子計算機により更新され、利用者及び他電子計算機が更新する必要の無いデータを扱う記憶装置・記憶システムにおいて、利用者及び他電子計算機による誤ったデータ消失操作・利用者及び他電子計算機による勝手なデータ更新操作・悪用者によるデータ改竄操作をハードウェアレベルで禁止し、かつ記憶装置制御部でのオーバーヘッドを最小化し、さらに記憶システムの信頼性についても向上させることができる。
また、本発明の実施形態では、記憶装置の制御部が各電子計算機に接続されていないことから、記憶装置の制御部のファームウェアがクラックされるというような問題は生じない。また、ファイルの管理を行うのは記憶装置の制御部ではなく、各電子計算機である。即ちファイル管理が分散処理されており、記憶装置の制御部のファームウェアが行うべき工程を最小としている。
加えて、書き込み処理回路と読み出し処理回路を物理的/論理的に分離した記憶装置において、更新動作をしていないタイミングでは、システムはファイルに対する読み出し処理のみを行うこととなる。実運用としてはこの読み出し処理を行っている割合が最も大きいと推察され、実運用にあって読み出し処理性能を向上させることが重要となる。
この点、本発明の実施形態では、記憶装置への読み書き動作及び各電子計算機への入出力処理を分散処理している、更新動作していないタイミングにおける制御部での処理はエラーリトライ処理のみとなることから、オーバーヘッドは最小となり、処理性能は最大となる。
また本発明の実施形態では、公開用にSATA(Serial Advanced Technology Attachment)ディスク(例えば8台)を制御部へ接続し、各SATAディスクに配信サーバを接続したとしても、更新動作していないタイミングにおける制御部での処理はエラーリトライ処理のみである。そして、R/W処理は各記憶装置に分散処理されていることから制御部でのオーバーヘッドは最小となる。また、前記構成でファイバーチャネルやSAS(Serial Attached SCSI)・SCSI(Small Computer System Interface)インターフェース等SATAよりも1ケタ信頼性の高いディスクを採用すれば、もう1ケタ多い(例えば40台〜80台の)公開用ディスクを接続することも可能となる。
上述したこれらの効果により、記憶装置及び電子計算機の動作におけるRASIS[Reliability:信頼性,Availavility:可用性,Serviceability:保守性,Integrity:完全性,Security:安全性]を向上させるという効果を奏する。
なお、本発明の実施形態である、読み出し専用インターフェースを有する記憶装置、更新サーバ及び配信サーバは、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。