JP2006195737A - 計算機システム - Google Patents
計算機システム Download PDFInfo
- Publication number
- JP2006195737A JP2006195737A JP2005006675A JP2005006675A JP2006195737A JP 2006195737 A JP2006195737 A JP 2006195737A JP 2005006675 A JP2005006675 A JP 2005006675A JP 2005006675 A JP2005006675 A JP 2005006675A JP 2006195737 A JP2006195737 A JP 2006195737A
- Authority
- JP
- Japan
- Prior art keywords
- computer system
- file
- information list
- remote information
- transaction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】 低コストで、計算機システムの故障によるディスクの内容を破壊することを防止できるディスク多重化システムを提供する。
【解決手段】 多重化システム20により、データの書込みをトランザクション単位に分割し、データ書込みのログをとり、トランザクションの最後に、当該トランザクション中に変更のあったデータのみを外部記憶装置50に書き込む。また、ネットワーク接続されているすべての計算機システム2,3に対してトランザクション中に変更のあったデータの書き込み命令を送信する。
【選択図】 図3
【解決手段】 多重化システム20により、データの書込みをトランザクション単位に分割し、データ書込みのログをとり、トランザクションの最後に、当該トランザクション中に変更のあったデータのみを外部記憶装置50に書き込む。また、ネットワーク接続されているすべての計算機システム2,3に対してトランザクション中に変更のあったデータの書き込み命令を送信する。
【選択図】 図3
Description
本発明は、計算機システムが故障した場合にデータを保護することを目的としたディスク多重化システムに関する。
計算機システムの故障によりデータ損失が発生してしまう場合がある。これに備えてデータを保護することを目的として、ひとつのデータを複数の記憶ディスクへ記憶させるディスク多重化システムが知られている。
ディスクを多重化するひとつの方法として、ローカルディスクを多重化するRAIDシステムがある。また、フォールトトレラントシステムでは、全く同じ構成のシステムを常に待機系として動作させ、運用しているシステムにトラブルが発生した場合、待機系に切り替えるホットスタンバイシステムがある。
しかしながら、ローカルディスクを多重化するRAIDシステムでは、計算機システムの故障発生によりディスクの内容を破壊してしまう恐れもある。また、ホットスタンバイシステムでは、同じ構成のシステムを構築しなければならないため、コストが高くなってしまう。
本発明は、低コストで、計算機システムの故障によるディスクの内容を破壊することを防止できるディスク多重化システムを提供することを目的とする。
本発明による計算機システムは、データを格納するための外部記憶装置と、他の計算機システムと通信を行うためのネットワークコントローラと、外部記憶装置へデータを格納するためのファイルシステムと、多重化システムとを備え、多重化システムは、データの書込みをトランザクション単位に分割し、データ書込みのログをとり、トランザクションの最後に、当該トランザクション中に変更のあったデータのみを外部記憶装置に書き込むとともに、ネットワークコントローラと接続されているすべての計算機システムに対してトランザクション中に変更のあったデータの書き込み命令を送信することを特徴とする。
本発明の計算機システムは、また、ネットワークコントローラと接続されている自身を含む各計算機システムを区別するための識別情報と、各計算機システムが管理するファイル名と、ファイル毎に設定されトランザクション処理を実行する毎に値が増加するシーケンシャル番号とを関連づけて保持するリモート情報リストを有し、ネットワークコントローラと接続されているすべての計算機システムに対してリモート情報リストを送信し、ネットワークコントローラと接続されている計算機から同一ファイル名でシーケンシャル番号がより大きなファイルあるいはリモート情報リストに含まれていないファイルが送信されてきたときそのファイルを外部記憶装置に保存する機能を有する。ホストの計算機システムは、この機能によりデータ修復を行うことができる。
本発明の計算機システムは、また、ネットワークコントローラと接続されている自身を含む各計算機システムを区別するための識別情報と、各計算機システムが管理するファイル名と、ファイル毎に設定され当該ファイルに対してトランザクション処理を実行する毎に値が増加するシーケンシャル番号とを関連づけて保持するリモート情報リストを有し、ネットワークコントローラと接続されている計算機システムから当該計算機システムの保持するリモート情報リストが送信されてきたとき、自身の保持するリモート情報リストと送信されてきたリモート情報リストとを比較し、送信されてきたリモート情報リストの中に自身の保持するリモート情報リスト中のファイル名と同一のファイル名でシーケンシャル番号がより大きなものが含まれていれば、当該リモート情報リストを送信してきた計算機システムに対してそのファイル名のファイルの送信要求を送信する機能を有する。リモートPCは、この機能によりデータ修復を行うことができる。
本発明によると、ネットワーク上に構築されている他の計算機システムにデータを格納するため、計算機システムの故障によりディスクの内容を破壊することを防止でき、最小限のデータ変更のみを転送することで通信のオーバヘッドを抑止できる。また、同一のシステムを構築する必要がなく、システム上にネットワークと外部記憶装置を有する計算機システムが存在すれば、該計算機システム上にバックアップデータを構築できるため、コストもかからない。
本発明の実施形態について、図面を参照して詳細に説明する。
図1は、本発明の一実施例に係るディスク多重化方式の構成を示すブロック図である。
本発明のディスク多重化システムは、複数の計算機システム1,2,3,…がネットワーク70で接続されている環境を前提とする。各計算機システム1,2,3,…は、アプリケーション10、多重化システム20、ファイルシステム30、オペレーティングシステム40、ファイルを格納する外部記憶装置50、ネットワークを制御するNIC60を備える。
本発明のディスク多重化システムは、複数の計算機システム1,2,3,…がネットワーク70で接続されている環境を前提とする。各計算機システム1,2,3,…は、アプリケーション10、多重化システム20、ファイルシステム30、オペレーティングシステム40、ファイルを格納する外部記憶装置50、ネットワークを制御するNIC60を備える。
図2は、外部記憶装置50に格納されるデータ(以下、ファイルと呼ぶ)の構成を示す図である。ファイル100は、固定サイズで構成されるレコード110と呼ばれるブロックの集合体である。各計算機システム1,2,3,…は、少なくともファイル100を扱えるアプリケーションをそれぞれが保有する。
図3は、本発明の多重化システム20の処理フロー図である。アプリケーション10は多重化システムに対して、トランザクション300の開始を通知するためのBegin_Work命令210を発行する。以下、トランザクション300の完了を要求するCommit_Work命令260までトランザクション処理となる。多重化システム20は、アプリケーション10からのファイル書込み要求であるWrite_File命令220を受け付けると、外部記憶装置50にレコード110を書き込むことを行わず、命令リスト230にリストしておく。
図4は、命令リスト230の構成である。命令リスト230の各ノード430は、命令内容400と、データを書き込むレコードNo410、レコードに書き込むデータの格納先を示すアドレスであるデータ格納アドレス420で構成される。そして、ノード430は、時系列順にリスティングされる。
そして、アプリケーション10からのトランザクション完了要求であるCommit_Work命令260を受け付けると、多重化システム20は命令リスト230から同じレコードNo410の命令に対しては、一番最後に受け付けたWrite_File命令220を受け付ける。これによって、同じレコード110に対する重複するWrite_File命令220を削除することで、ディスク書込み280の回数を削減できる。また、リモートPC200へのファイル書込みの要求である命令・データ送信270も少なくてすみ、ネットワーク70のオーバヘッドを削減できる。多重化システムはディスク書込み280とリモートPC200への命令・データ送信270が終了したならば、アプリケーション10に対して、トランザクション完了290を通知する。
命令・データ送信270を受領したリモートPC200は、命令・データ送信270に含まれている命令リストに従って自身の管理する外部記憶装置に対して書き込みを行う。それによって、リモートPC200の外部記憶装置に保持されているホストと同名のファイルがホストの管理する外部記憶装置内のファイルと同じ状態に更新される。
トランザクション完了290で新しいファイルに更新されるため、ファイルの読み込み命令に関してはトランザクション完了290以降で最新のファイルが読み込まれる。別のアプリケーションが同一のファイルを読み込む場合、トランザクション300中であれば、たとえ、アプリケーション10がファイル100のレコード110をWrite_File命令220を実行していても、ディスク書込み280が実行されていないため、トランザクション300前のレコード110が読み込まれる。
これは、リモートPC200のWrite_File命令250も同一である。リモートPC200が自身の外部記憶装置に対して、ディスク書込みを実行すると、ネットワークに接続されている他のPCにも命令・データ送信要求を実施する。このとき、命令・データ送信要求を受け付けたPCがトランザクション300中であれば、トランザクション完了290前にディスク書込み280を実施することで、リモートPC200の命令・データ送信要求を受け付ける。しかし、トランザクション300中でない場合もある。このため、命令・データ送信要求では、最初にトランザクション開始240要求を発行する。もし、トランザクション中でなければ、トランザクション開始240を受け付け、トランザクション300となる。
第2の実施例を第5図を用いて説明する。
パワーオン500により、ホストPCの電源が投入されると、外部記憶装置50からリモート情報リスト510を取得する。リモート情報リストは、ホストPC及びすべてのリモートPCを管理しているリモート情報のリストである。
パワーオン500により、ホストPCの電源が投入されると、外部記憶装置50からリモート情報リスト510を取得する。リモート情報リストは、ホストPC及びすべてのリモートPCを管理しているリモート情報のリストである。
リモート情報600には、各PCを区別するための固定id520と、各PCのアプリケーションが管理するファイルの名称であるファイル名530と、トランザクション処理を実行する毎に値が増加するシーケンシャル番号540から構成される。
図3によって説明したように、1つのトランザクションによるホストのファイルの変更を反映した命令・データ送信270を受領した各リモートPCは、それによって自身の外部記憶装置に保持している同名のファイルに書き込みを行い、そのファイルの内容をホストの有するファイルと同じ内容に更新する。それと同時に、各リモートPCは、自身の外部記憶装置に保有しているリモート情報リスト中で、更新したファイル名のシーケンシャル番号を1だけインクリメントする。
ホストPCはパワーオン500後、各リモートPCに対して、自身のリモート情報600をブロードキャストする。各リモートPCは受信したホストPCのリモート情報500と、リモートPCが保持しているリモート情報のシーケンシャル番号540を比較する。もし、ホストPCのシーケンシャル番号がリモートPCが保持しているホストPCのシーケンシャル番号よりも大きな場合、リモートPCが保持しているホストPCのファイルの内容がホストPCのものよりも古いことになる。この場合、リモートPC200はホストPCに対して、データ送信要求560を送信し、最新のファイルを送信してもらう。こうして、リモートPCは、自身が保持しているホストのバックアップデータが最新のものでない場合、それを知るとともに、バックアップデータを常に最新のものとすることができる。
また、リモートPCの保持しているホストPCのファイル名が、ホストPCから送られたリモート情報に存在しない場合、ホストPCが自身のファイルを喪失してしまったと考えられるので、リモートPCはホストPCに対して、データ転送要求580を送信し、リモートPCが保持しているファイルをホストPCに対して送信する(590)。こうして、ホストは喪失したデータやファイルを回復することができる。ホストPCのデータ修復は自動的に行われ、データの修復時間を抑え、信頼性を高めることができる。
以上説明したように、発明によれば、ネットワーク上に接続されている外部記憶装置を保持する他の計算機システムにデータを退避できることで、多重化するための特別なハードウェアを追加する必要がないため、コストを追加する必要がない。また、従来のようにローカルディスクを多重化した場合、計算機システム自身が暴走したならば、データを破壊してしまう恐れがある。しかし、本システムであればネットワーク上の他の計算機システムのデータまで破壊する恐れがなくため、信頼性を向上することができる効果がある。更に、仮に外部記憶装置が破壊したり、ある時点までのデータを喪失した場合、他の計算機システムにデータを退避しているため、データ喪失によるシステム障害を防止することができる。
1,2,3:計算機システム、10:アプリケーション、20:多重化システム、30:ファイルシステム、40:オペレーティングシステム、50:外部記憶装置、60:NIC、70:ネットワーク
Claims (3)
- データを格納するための外部記憶装置と、
他の計算機システムと通信を行うためのネットワークコントローラと、
前記外部記憶装置へデータを格納するためのファイルシステムと、
多重化システムとを備え、
前記多重化システムは、データの書込みをトランザクション単位に分割し、データ書込みのログをとり、トランザクションの最後に、当該トランザクション中に変更のあったデータのみを前記外部記憶装置に書き込むとともに、前記ネットワークコントローラと接続されているすべての計算機システムに対して前記トランザクション中に変更のあったデータの書き込み命令を送信することを特徴とする計算機システム。 - 請求項1記載の計算機システムにおいて、
前記ネットワークコントローラと接続されている自身を含む各計算機システムを区別するための識別情報と、各計算機システムが管理するファイル名と、ファイル毎に設定されトランザクション処理を実行する毎に値が増加するシーケンシャル番号とを関連づけて保持するリモート情報リストを有し、
前記ネットワークコントローラと接続されているすべての計算機システムに対して前記リモート情報リストを送信し、前記ネットワークコントローラと接続されている計算機から同一ファイル名でシーケンシャル番号がより大きなファイルあるいは前記リモート情報リストに含まれていないファイルが送信されてきたときそのファイルを前記外部記憶装置に保存する機能を有することを特徴とする計算機システム。 - 請求項1記載の計算機システムにおいて、
前記ネットワークコントローラと接続されている自身を含む各計算機システムを区別するための識別情報と、各計算機システムが管理するファイル名と、ファイル毎に設定され当該ファイルに対してトランザクション処理を実行する毎に値が増加するシーケンシャル番号とを関連づけて保持するリモート情報リストを有し、
前記ネットワークコントローラと接続されている計算機システムから当該計算機システムの保持するリモート情報リストが送信されてきたとき、自身の保持するリモート情報リストと送信されてきたリモート情報リストとを比較し、送信されてきたリモート情報リストの中に自身の保持するリモート情報リスト中のファイル名と同一のファイル名でシーケンシャル番号がより大きなものが含まれていれば、当該リモート情報リストを送信してきた計算機システムに対してそのファイル名のファイルの送信要求を送信する機能を有することを特徴とする計算機システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005006675A JP2006195737A (ja) | 2005-01-13 | 2005-01-13 | 計算機システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005006675A JP2006195737A (ja) | 2005-01-13 | 2005-01-13 | 計算機システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006195737A true JP2006195737A (ja) | 2006-07-27 |
Family
ID=36801785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005006675A Pending JP2006195737A (ja) | 2005-01-13 | 2005-01-13 | 計算機システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006195737A (ja) |
-
2005
- 2005-01-13 JP JP2005006675A patent/JP2006195737A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6941490B2 (en) | Dual channel restoration of data between primary and backup servers | |
JP3992427B2 (ja) | ファイルシステム | |
JP4415610B2 (ja) | 系切替方法、レプリカ作成方法、及びディスク装置 | |
US7415586B2 (en) | Data backup method and system | |
JP5094460B2 (ja) | 計算機システム、データ一致化方法およびデータ一致化処理プログラム | |
US6701455B1 (en) | Remote copy system with data integrity | |
WO2007103141A2 (en) | Method and apparatus for providing virtual machine backup | |
US20080005288A1 (en) | Storage system and data replication method | |
US6073221A (en) | Synchronization of shared data stores through use of non-empty track copy procedure | |
JP2007200182A (ja) | ストレージ装置、及びストレージシステム | |
JP2005196683A (ja) | 情報処理システム、情報処理装置、及び情報処理システムの制御方法 | |
JP2007323507A (ja) | 記憶システム並びにこれを用いたデータの処理方法 | |
JP2005182683A (ja) | データ転送方法及びシステム並びにプログラム | |
JP5521595B2 (ja) | ストレージシステム及びストレージ制御方法 | |
JP6931081B2 (ja) | データバックアップシステム、中継サイトストレージ、データバックアップ方法、及び中継サイトストレージの制御プログラム | |
JP2008033527A (ja) | ストレージ装置、ディスク装置及びデータ復元方法 | |
JP2006072684A (ja) | ストレージネットワークシステム及び管理サーバ、ホストとストレージ装置 | |
US7587466B2 (en) | Method and computer system for information notification | |
KR101072056B1 (ko) | 데이터 스토리지 시스템의 서비스 워크로드 식별자 | |
JP5509272B2 (ja) | 計算機システム、データ一致化方法およびデータ一致化処理プログラム | |
JP2006195737A (ja) | 計算機システム | |
US7613888B2 (en) | Maintain owning application information of data for a data storage system | |
JP2008219445A (ja) | 保守用カスタマイズメモリ管理システムおよび方法 | |
WO2016038722A1 (ja) | ストレージシステム及びデータ書込み方法 | |
JP2008217533A (ja) | ソフトウェア管理装置およびソフトウェア管理プログラム |