(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続された２台の計算機の一方を運用系とし、他方を待機系として２重運用し、運用系計算機のデータファイルを更新する都度、更新データを待機系計算機のデータファイルへ等価する２重系計算機システムにおいて、上記更新の回数をカウントする更新回数カウンタと更新時の運用系計算機の識別を示す運用系計算機識別情報とを各々の計算機の各々の等価対象データファイルのレコード単位又はデータファイル単位に記憶する管理部をディスク内に有し、運用系計算機または待機系計算機において等価対象データファイルを更新したら、当該レコード又は当該データファイルに対応する更新回数カウンタと更新時の運用系計算機識別情報とを更新し、故障又は保守等により停止した計算機が立ち上がり、この計算機が待機系へと遷移する時に、両系の更新回数カウンタ又は更新時の運用系計算機識別情報が異なるレコード又はデータファイルのみを運用系計算機から新待機系計算機へコピーすることを特徴とするデータファイル等価処理方法。
【請求項２】
ネットワークを介して接続されたｎ台（ｎ≧３）の計算機のうちの１台を運用系とし、他のｍ台（ｎ−１≧ｍ≧１）を待機系として多量系運用し、運用系計算機のデータファイルを更新する都度、更新データを待機系計算機のデータファイルへ等価する多重系計算機システムにおいて、上記更新の回数をカウントする更新回数カウンタと更新時の運用系計算機の識別を示す運用系計算機識別情報とを各々の計算機の各々の等価対象データファイルのレコード単位又はデータファイル単位に記憶する管理部をディスク内に有し、運用系計算機または待機系計算機において等価対象データファイルを更新したら、当該レコード又は当該データファイルに対応する更新回数カウンタと更新時の運用系計算機識別情報とを更新し、故障又は保守等により停止した計算機が立ち上がり、この計算機が待機系へと遷移する時に、両系の更新回数カウンタ又は更新時の運用系計算機識別情報が異なるレコード又はデータファイルのみを運用系計算機から新待機系計算機へコピーすることを特徴とするデータファイル等価処理方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、多重化された計算機システムの運用系計算機と待機系計算機などにおけるデータファイル等価処理方法に関するものである。
【０００２】
【従来の技術】
従来、計算機システムを用いた情報処理システムや制御処理システムは、一般的にその信頼性を上げるために２重系の構成として、運用系計算機と待機系計算機を設け、両方の計算機を稼働させてデュープレックス運転を行うものが見られる。このようなシステムでは、運用系計算機でデータファイルを更新する都度、待機系計算機のデータファイルにも同一データを書込むことにより、両系のデータファイルを等価する。また、故障又は保守等により一方の計算機が停止した後に待機系へ立ち上げる場合は、両系の計算機のデータファイルを一致させるために運用系計算機のファイルの内容を新待機系計算機のデータファイルへコピーするが、対象データ量が多いと、コピーに時間がかかり、結果として待機立ち上げ時間が長くなるという問題があり、このコピー時間を短縮する必要がある。
【０００３】
図２６は、例えば特開平３−１３７７４２号公報に示された、コピー時間の短縮を目的とした、従来のデータファイル等価処理方法を採用した２系列化計算機システムを示すハードウェア構成図、図２７は従来のデータファイル等価処理方法の一例を示すブロック図である。図２６，図２７において、１，２は２重系を構成する計算機、５は計算機１と計算機２を接続する伝送路である。１０は計算機１のＣＰＵ、１１は計算機１の主メモリ、１２は計算機１のディスク、１２１と１２２はディスク１２内のデータファイル、１３は計算機１と伝送路５を接続する伝送インタフェース部である。２０は計算機２のＣＰＵ、２１は計算機２の主メモリ、２２は計算機２のディスク、２２１と２２２はディスク２２内のデータファイル、２３は計算機２と伝送路５を接続する伝送インタフェース部である。１２１１はデータファイル１２１上のレコード、１２２１はデータファイル１２２上のレコード、１１１は計算機１が運用系でかつ計算機２が停止している時に計算機１のデータファイルの更新の有無をデータファイルのレコード単位で記憶する管理部であり、主メモリ１１内部に存在する。２２１１はデータファイル２２１上のレコード、２２２１はデータファイル２２２上のレコード、２１１は計算機２が運用系でかつ計算機１が停止している時に計算機２のデータファイルの更新の有無をデータファイルのレコード単位で記憶する管理部であり、主メモリ２１内部に存在する。レコード１２１１とレコード２２１１、レコード１２２１とレコード２２２１は各々対応しており、計算機１と計算機２の一方が運用系、他方が待機系として運転する場合、対応するレコードの内容は常に等しくなければならない。
【０００４】
次に動作について説明する。計算機２が運用系の場合は、運用系計算機２は図２８に示すフローチャートに従ってデータ変更処理（運用系）を行う。すなわち、運用系計算機２は、データ更新要求を受け付けると、ステップＳＴ５０１で計算機２のデータファイル２２１またはデータファイル２２２に更新データを書込み、ステップＳＴ５０２へ移る。ステップＳＴ５０２では、他系計算機が待機系であるか否かをチェックし、待機系であればステップＳＴ５０３へ移り、待機系でなければステップＳＴ５０４へ移る。ステップＳＴ５０３では、更新データを計算機１へ転送してデータ変更処理を終える。ステップＳＴ５０４では当該レコードを更新したことを運用系計算機２の管理部２１１に記憶してデータ変更処理を終える。図２８に示すフローチャートによると、例えば、計算機１が待機モード以外の時に運用系計算機２がレコード２２１１とレコード２２２１を更新したとすれば、計算機管理部２１１にはレコード２２１１とレコード２２２１が更新されたと記憶される。また、例えば計算機２が運用系で、計算機１が待機系であるとすれば、運用系計算機２でレコード２２１１あるいはレコード２２２１を更新しても運用系計算機２の管理部２１１には記憶されない。
【０００５】
もしも計算機１が待機系の場合は、待機系計算機１は図２９に示すフローチャートに従ってデータ変更処理（待機系）を行う。すなわち、図２８のステップＳＴ５０３の結果、運用系計算機２から更新対象データを受信した時にデータ変更処理（待機系）が起動されると図２９のステップＳＴ６０１において、当該データをデータファイル１２１またはデータファイル１２２の対応するレコードに書き込んで、データ変更処理（待機系）を終える。図２８と図２９において、例えば計算機２が運用系で、計算機１が待機系であるとすれば、運用系計算機２でレコード２２１１とレコード２２２１を更新すれば、レコード２２１１と同じ内容で待機系計算機１のレコード１２１１が更新され、レコード２２２１と同じ内容で待機系計算機１のレコード１２２１が更新される。
【０００６】
次に、停止している計算機１を待機系へ立ち上げる時には、運用系計算機２は図３０に示すフローチャートに従ってデータコピー処理（運用系）を行う。すなわち、ステップＳＴ７０１において、データファイルの先頭レコードをチェック対象レコードとし、ステップＳＴ７０２へ移る。ステップＳＴ７０２では、計算機２の管理部２１１を参照して、計算機１が待機系以外の時にチェック対象レコードの更新されたか否かを判定し、データ更新が記憶されている時にはステップＳＴ７０３に移り、データ更新が記憶されていない時にはステップＳＴ７０５へ移る。ステップＳＴ７０３では、チェック対象レコードの内容をデータファイル２２１またはデータファイル２２２から読み込み、ステップＳＴ７０４へ移る。ステップＳＴ７０４では、ステップＳＴ７０３で読み込んだデータを立ち上げ中の計算機１へ転送して、ステップＳＴ７０５へ移る。ステップＳＴ７０５では、未処理のレコードが残っているか否かを判定し、残っていればステップＳＴ７０６へ移り、残っていなければデータコピー処理（運用系）を終える。ステップＳＴ７０６ではチェック対象レコードを次のレコードとし、ステップＳＴ７０２へ移る。
【０００７】
また、停止している計算機１を待機系へ立ち上げる時には、新待機系の計算機１は図３１に示すフローチャートに従ってデータコピー処理（新待機系）を行う。すなわち、図３０のステップＳＴ７０４の結果、運用系計算機２からコピー対象データを受信した時にデータコピー処理（新待機系）が起動されると図３１のステップＳＴ８０１において、当該データをデータファイル１２１またはデータファイル１２２の対応するレコードにコピーして、データコピー処理（新待機系）を終える。図２９と図３０において、例えば、管理部２１１にレコード２２１１とレコード２２２１が更新されたと記憶されていれば、レコード２２１１とレコード２２２１のデータが計算機１へ転送され、レコード１２１１とレコード１２２１にそれぞれコピーされる。
【０００８】
【発明が解決しようとする課題】
従来のデータファイル等価処理方法によると、例えば運用系計算機２が、図２８のステップＳＴ５０１でレコード２２１１を更新し、ステップＳＴ５０２にて計算機１を待機モードと判断し、ステップＳＴ５０３で更新データを計算機１へ転送してから待機系計算機１が図２９のステップＳＴ６０１を実行するまでの間に、故障等により計算機１が待機系以外に遷移を開始した場合に、計算機２のレコード２２１１は更新されかつ計算機１のレコード１２１１は更新されないにもかかわらず、管理部２１１にはレコード２２１１が単独系で更新されたということが記憶されていないという現象が発生する。この後計算機１を待機系に立ち上げた場合、図３０において、レコード２２１１についてはステップＳＴ７０２にてデータ更新が記憶されていないと判断され、ステップＳＴ７０３，ＳＴ７０４の処理をスキップするため、運用系計算機２のレコード２２１１と待機系計算機１の対応するレコード１２１１の内容が一致しないという問題点があった。
【０００９】
上記問題点を防止するために、図２９に示すステップＳＴ６０１の処理の後、待機系へのレコードの書き込みが成功したことを運用系に送信する処理を追加するとともに、図２８においてステップＳＴ５０２の次に他系からの書き込み結果の受信を待ち、他系での書き込みが成功しなかった場合にはステップＳＴ５０４をスキップするように変更することも考えられるが、この場合、運用系はデータ変更の都度、待機系でのデータ書き込みとの同期をとるため処理性能が悪くなるという、問題点がある。
【００１０】
また、従来の方法では、データの更新の有無を記憶する管理部が主メモリにあるため、一方の計算機が運用系にあり、他方の計算機が待機系にあり、待機系計算機が停止の状態にあるとき運用系計算機が停止すれば、管理部の内容はクリアされるため、再度一方の計算機が運用系、他方の計算機が待機系へ復帰する時はデータファイルを運用系計算機から新待機系計算機へ全コピーしなければならないという、問題点がある。
【００１１】
この発明は上記のような問題点を解決するためになされたもので、運用系−待機系での２重系運転や多重系運転の性能を損なうことなく、待機系計算機の立ち上げ時に短い時間で確実にデータファイルを等価することができるデータファイル等価処理方法を得ることを目的とする。
【００１２】
【課題を解決するための手段】
請求項１の発明に係るデータファイル等価処理方法は、２重系計算機システムにおいて、各々の計算機１，２の各々の等価対象データファイル１２１，２２１のレコード単位に更新回数カウンタと更新時の運用系計算機識別情報を記憶する管理部１２０，２２０をディスク１２，２２内に有し、運用系計算機または待機系計算機において等価対象データファイルを更新したら、当該レコードに対応する更新回数カウンタと更新時の運用系計算機識別情報を更新し、故障または保守等により停止した計算機が立上り、待機系へと遷移する時に、両系の更新回数カウンタまたは更新時の運用系計算機識別情報が異なるレコードのみを運用系計算機から新待機系計算機へコピーするようにしたものである。
【００１３】
請求項２の発明に係るデータファイル等価処理方法は、多重系計算機システムにおいて、各々の計算機１，２，３の各々の等価対象データファイル１２１，２２１，３２１のレコード単位に更新回数カウンタと更新時の運用系計算機識別情報を記憶する管理部１２０，２２０，３２０をディスク１２，２２，３２内に有し、運用系計算機または待機系計算機において等価対象データファイルを更新したら、当該レコードに対応する更新回数カウンタと更新時の運用系計算機識別情報を更新し、故障または保守等により停止した計算機が立上り、待機系へと遷移する時に、両系の更新回数カウンタまたは更新時の運用系計算機識別情報が異なるレコードのみを運用系計算機から新待機系計算機へコピーするようにしたものである。
【００１４】
【作用】
請求項１の記載におけるデータファイル等価処理方法は、２重系計算機システムの運用系計算機と待機系計算機において、例えば、計算機２を運用系、計算機１を待機系とすれば、運用系計算機２のデータファイル２２１を更新後、両系の計算機１，２は非同期でレコード単位に更新回数カウンタをカウントアップするとともに更新時の運用系計算機識別情報を記憶し、待機系立ち上げ時の計算機１と運用系計算機２との更新回数カウンタまたは更新時の運用系計算機識別情報が異なるレコードのみを運用系計算機２から新待機系計算機１へコピーする。これにより、運用系−待機系での２重運転の性能を損なうことなく、待機系計算機１の立ち上げ時に、短い時間で確実にデータファイルが等価される。
【００１５】
また、請求項２の記載におけるデータファイル等価処理方法は、多重系計算機システムの運用系計算機と待機系計算機において、例えば、計算機１，２を運用系、計算機３を待機系とすれば、運用系計算機２のデータファイル２２１を更新後、両系の計算機２，３は非同期でレコード単位に更新回数カウンタをカウントアップするとともに更新時の運用系計算機識別情報を記憶し、待機系立ち上げ時の計算機３と運用系計算機２との更新回数カウンタまたは更新時の運用系計算機識別情報が異なるレコードのみを運用系計算機２から新待機系計算機３へコピーする。これにより、運用系ー待機系での多重系運転の性能を損なうことなく、待機系計算機３の立ち上げ時に、短い時間で確実にデータファイルが等価される。
【００１６】
【実施例】
実施例１．
以下、この発明の実施例１を図に基づいて説明する。図１はこの発明の実施例１に係るデータファイル等価処理方法を採用した２重系計算機システムを示すハードウェア構成図、図２はこの実施例１に係るデータファイル等価処理方法を示すブロック図である。図１，図２において、１，２は２重系を構成する計算機、５は計算機１と計算機２を接続するネットワーク上の伝送路である。１０は計算機１のＣＰＵ、１１は計算機１の主メモリ、１２は計算機１のディスク、１２１と１２２はディスク１２内のデータファイル、１３は計算機１と伝送路５を接続する伝送インタフェース部である。２０は計算機２のＣＰＵ、２１は計算機２の主メモリ、２２は計算機２のディスク、２２１と２２２はディスク２２内のデータファイル、２３は計算機２と伝送路５を接続する伝送インタフェース部である。１２１１はデータファイル１２１のレコード、１２２１はデータファイル１２２のレコード、２２１１はデータファイル２２１のレコード、２２２１はデータファイル２２２のレコードである。レコード１２１１とレコード２２１１、レコード１２２１とレコード２２２１は各々対応しており、計算機１と計算機２の一方が運用系、他方が待機系として運転する場合、対応するレコードの内容は常に等しくなければならない。１２０は計算機１が運用系または待機系の時に計算機１のデータファイルを更新する都度、レコード単位でカウントアップされる更新回数カウンタと更新時の運用系計算機名称（運用系計算機識別情報）を有する管理部であり、ディスク１２内部に存在する。２２０は計算機２が運用系または待機系の時に計算機２のデータファイルを更新する都度、レコード単位でカウントアップされる更新回数カウンタと更新時の運用系計算機名称を有する管理部でありディスク２２内部に存在する。
【００１７】
図３は管理部１２０の構造を示す図であり、図３において、１２１１０はデータファイル１２１のレコード１２１１の更新回数カウンタ、１２１１１はレコード１２１１を更新した時の運用系計算機名称、１２２１０はデータファイル１２２のレコード１２２１の更新回数カウンタ、１２２１１はレコード１２２１を更新した時の運用系計算機名称である。図４は管理部２２０の構造を示す図であり、図４において、２２１１０はデータファイル２２１のレコード２２１１の更新回数カウンタ、２２１１１はレコード２２１１を更新した時の運用系計算機名称、２２２１０はデータファイル２２２のレコード２２２１の更新回数カウンタ、２２２１１はレコード２２２１を更新した時の運用系計算機名称である。更新カウンタは例えば４バイトの符号無し整数のように、充分大きな値を表現できるものとし、システムの最初の運用開始時に０クリアされ、表現できる最大値の状態でカウントアップされると０へ戻るものとする。
【００１８】
次に動作について説明する。運用系計算機は図５に示すフローチャートに従ってデータ変更処理（運用系）を行う。すなわち、運用系計算機は、データ変更要求を受け付けると、ステップＳＴ１０１で自系のデータファイルに更新データを書込み、ステップＳＴ１０２へ移る。ステップＳＴ１０２では、運用系計算機のディスク内に存在する管理部内の、更新対象レコードに対応する更新回数カウンタをカウントアップして、ステップＳＴ１０３へ移る。ステップＳＴ１０３では、運用系計算機の管理部内の、更新対象レコードに対応する更新時運用系計算機名称に自系計算機名称を書き込み、ステップＳＴ１０４へ移る。ステップＳＴ１０４では、自系以外の計算機で待機系のものがあるか否かをチェックし、あればステップＳＴ１０５へ移り、なければデータ変更処理（運用系）を終える。ステップＳＴ１０５では、更新データを待機系計算機へ転送してデータ変更処理（運用系）を終える。
【００１９】
待機系計算機は図６に示すフローチャートに従ってデータ変更処理（待機系）を行う。すなわち、図５のステップＳＴ１０５の結果、運用系計算機から更新対象データを受信した時にデータ変更処理（待機系）が起動されると図６のステップＳＴ２０１において、当該データをデータファイルの対応するレコードに書き込んで、ステップＳＴ２０２へ移る。ステップＳＴ２０２では、待機系計算機のディスク内に存在する管理部内の、更新対象レコードに対応する更新回数カウンタをカウントアップして、ステップＳＴ２０３へ移る。ステップＳＴ２０３では、待機系計算機の管理部内の、更新対象レコードに対応する更新時運用系計算機名称に他系計算機名称を書き込み、データ変更処理（待機系）を終える。
【００２０】
次に、停止している計算機を待機系へ立ち上げる時には、運用系計算機は図７に示すフローチャートに従ってデータコピー処理（運用系）を行う。すなわち、ステップＳＴ３０１において、データファイルの先頭レコードをチェック対象レコードとし、ステップＳＴ３０２へ移る。ステップＳＴ３０２では、自系の管理部のチェック対象レコードの更新回数カウンタと待機遷移系計算機の管理部のチェック対象レコードの更新回数カウンタとを比較し、等しければステップＳＴ３０３に移り、等しくなければステップＳＴ３０４へ移る。ステップＳＴ３０３では、自系の管理部のチェック対象レコードの更新時運用系計算機名称と待機遷移系の計算機の管理部のチェック対象レコードの更新時運用系計算機名称とを比較し、等しければステップＳＴ３０６に移り、等しくなければステップＳＴ３０４へ移る。ステップＳＴ３０４では、チェック対象レコードの内容をデータファイルから読込み、ステップＳＴ３０５へ移る。ステップＳＴ３０５では、ステップＳＴ３０４で読み込んだデータを待機遷移中の計算機へ転送して、ステップＳＴ３０６へ移る。ステップＳＴ３０６では、未処理のレコードが残っているか否かを判定し、残っていればステップＳＴ３０７へ移り、残っていなければデータコピー処理（運用系）を終える。ステップＳＴ３０７ではチェック対象レコードを次のレコードとし、ステップＳＴ３０２へ戻る。
【００２１】
また、停止している計算機１を待機系へ立ち上げる時の、新待機系の計算機は図８に示すフローチャートに従ってデータコピー処理（新待機系）を行う。すなわち、図７のステップＳＴ３０５の結果、運用系計算機からコピー対象データを受信した時にデータコピー処理（新待機系）が起動されると図８のステップＳＴ４０１において、当該データをデータファイルの対応するレコードに書き込んで、ステップＳＴ４０２へ移る。ステップＳＴ４０２では、処理したレコードに対応する運用系計算機の管理部の更新回数カウンタと更新時運用系計算機名称を自系計算機の管理部の対応するエリアにコピーして、データコピー処理（新待機系）を終える。
【００２２】
例えば、計算機１が待機系、計算機２が運用系で運転しているとする。この時のデータファイルと管理部が図９の内容であったとする。すなわち、計算機１のデータファイル１２１のレコード１２１１の内容をＡ、計算機１のデータファイル１２２のレコード１２２１の内容をＸ、計算機１のデータファイル１２１のレコード１２１１の更新回数カウンタ１２１１０の値をａ、更新時運用系計算機名称１２１１１を「計算機１」、レコード１２２１の更新回数カウンタ１２２１０をｂ、更新時運用系計算機名称１２２１１を「計算機２」とすると、運用系＋待機系で２重系運転しているため、計算機１と計算機２のデータファイルと管理部の対応するエリアの内容は等しいことから、計算機２のデータファイル２２１のレコード２２１１の内容はＡ、計算機２のデータファイル２２２のレコード２２２１の内容はＸ、計算機２のデータファイル２２１のレコード２２１１の更新回数カウンタ２２１１０の値はａ、更新時運用系計算機名称２２１１１は「計算機１」、レコード２２２１の更新回数カウンタ２２２１０はｂ、更新時運用系計算機名称２２２１１は「計算機２」である。この状態で運用系計算機２のデータファイル２２１のレコード２２１１をＢに更新すると、図５と図６の処理が動作した結果、待機系計算機１のデータファイル１２１のレコード１２１１が同じデータＢで更新されるとともに、待機系計算機１の更新回数カウンタ１２１１０と運用系計算機２の更新回数カウンタ２２１１０はａ＋１となり、待機系計算機１の更新時運用系計算機名称１２１１１と運用系計算機２の更新時運用系計算機名称２２１１１は「計算機２」となる（図１０）。次に、運用系計算機２のデータファイル２２２のレコード２２２１をデータＹで更新したが、図６のステップＳＴ２０１が動作する直前に、待機系計算機１が故障等により停止すると、待機系計算機１のデータファイル１２２のレコード１２２１は更新されず、運用系計算機２の更新回数カウンタ２２２１０はｂ＋１となるが、停止遷移系計算機１の更新回数カウンタ１２２１０はｂのままであり、運用系計算機２の更新時運用系計算機名称２２２１１は「計算機２」に上書きされ、停止遷移系計算機１の更新時運用系計算機名称１２２１１は「計算機２」のままである（図１１）。次に、運用系計算機２を停止しても、両計算機のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１２）。次に計算機２を運用系に立ち上げてもデータファイルと管理部の内容は変わらない（図１３）。次に、計算機１を待機系に立ち上げると、図７と図８の処理が動作し、新待機系計算機１の更新回数カウンタ１２１１０と運用系計算機２の更新回数カウンタ２２１１０は等しく、新待機系計算機１の更新時運用系計算機名称１２１１１と運用系計算機２の更新時運用系計算機名称２２１１１も等しいため、新待機系計算機１のレコード１２１１の内容は変わらず、運用系計算機２の更新回数カウンタ２２２１０と新待機系計算機１の更新回数カウンタ１２２１０は等しくないため、運用系計算機２のレコード２２２１の内容Ｙが新待機系計算機１のレコード１２２１へコピーされるとともに、運用系計算機２の更新回数カウンタ２２２１０の内容が新待機系計算機１の更新回数カウンタ１２２１０へ、運用系計算機２の更新時運用系計算機名称２２２１１の内容が新待機系計算機１の更新時運用系計算機名称１２２１１へコピーされ、両系のデータファイルと管理部の内容が等しくなる（図１４）。
【００２３】
また、図９の状態で待機系計算機１が故障等により停止しても、両計算機のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１５）。この状態で運用系計算機２のデータファイル２２１のレコード２２１１をＢに更新すると、図５の処理が動作した結果、運用系計算機２の更新回数カウンタ２２１１０はａ＋１となり、運用系計算機２の更新時運用系計算機名称２２１１１は「計算機２」となるが、停止系計算機１のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１６）。次に、運用系計算機２が故障等により停止しても、両計算機のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１７）。次に、計算機１が運用モードへ立ち上がっても、両計算機１，２のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１８）。この状態で運用系計算機１のデータファイル１２１のレコード１２１１をＣに更新すると、図５の処理が動作した結果、運用系計算機１の更新回数カウンタ１２１１０はａ＋１となり、運用系計算機１の更新時運用系計算機名称１２１１１は「計算機１」となるが、停止系計算機２のデータファイル、更新回数カウンタ、更新時運用系計算機名称は変化しない（図１９）。次に、計算機２を待機系に立ち上げると、図７と図８の処理が動作し、新待機系計算機２の更新回数カウンタ２２１１０と運用系計算機１の更新回数カウンタ１２１１０は等しいが、新待機系計算機２の更新時運用系計算機名称２２１１１と運用系計算機１の更新時運用系計算機名称１２１１１が等しくないため、運用系計算機１のレコード１２１１の内容Ｂが新待機系計算機２のレコード２２１１へコピーされるとともに、運用系計算機１の更新回数カウンタ１２１１０の内容が新待機系計算機２の更新回数カウンタ２２１１０へ、運用系計算機１の更新時運用系計算機名称１２１１１の内容が新待機系計算機２の更新時運用系計算機名称２２１１１へコピーされ、運用系計算機１の更新回数カウンタ１２２１０と新待機系計算機２の更新回数カウンタ２２２１０は等しく、運用系計算機１の更新時運用系計算機名称１２２１１と新待機系計算機２の更新時運用系計算機名称２２２１１は等しいため、新待機系計算機２のレコード２２２１の内容は変わらず、結果として、両系のデータファイルと管理部の内容が等しくなる（図２０）。
【００２４】
以上のように実施例１によれば、運用系計算機２のデータファイルのレコードを更新後、待機系計算機１の対応するレコードを更新するまでに待機系計算機１が故障等により停止しても、待機系計算機１が再度待機系に立ち上がるときに両系の計算機１，２のデータファイルの当該レコードが不一致と認識され、運用系計算機２から新待機系計算機１へコピーされる。また、管理部はディスクにあるため両系の計算機１，２が停止しても管理部の内容は消去されないこと、及び更新時の運用系計算機名称を記憶していることから、データファイルのレコードを計算機２が運用系、計算機１が待機系の時に更新後、今度は計算機１が運用系、計算機２が待機系の時に別の値で更新したとしても、再度運用系＋待機系で運転したときに両系の計算機１、２のデータファイルの当該レコードが不一致と認識され運用系計算機１から新待機系計算機２へコピーされる。この結果、両系の計算機１，２の運転モードがどのように遷移したとしても、待機系立ち上げ時に両系の計算機１，２の内容が不一致のデータファイルレコードを正しく認識でき、不一致のレコードのみを運用系計算機１から新待機系計算機２へコピーするため、待機立ち上げ時間が短縮される。また、運用系−待機系で２重系運転しているとき、運用系計算機のデータ変更処理において、待機系計算機でのデータ更新と同期をとる必要がないため、２重系運転時の性能を損なわない。
【００２５】
なお、上記実施例１では、便宜上、計算機１を待機系、計算機２を運用系としたが、上記説明からも明らかのように、計算機１を運用系、計算機２を待機系としてもよく、この場合も上記実施例１と同等の効果が得られる。
【００２６】
実施例２．
以下、この発明の実施例２を図に基づいて説明する。
図２１はこの発明の実施例２に係るデータファイル等価処理方法を採用した多重系計算機システムを示すハードウェア構成図、図２２はこの実施例３によるデータファイル等価処理方法を示すブロック図である。図２１，図２２において、１，２，３は３重系を構成する計算機、５は計算機１と計算機２と計算機３を接続するネットワーク上の伝送路である。１０は計算機１のＣＰＵ、１１は計算機１の主メモリ、１２は計算機１のディスク、１２１と１２２はディスク１２内のデータファイル、１３は計算機１と伝送路５を接続する伝送インタフェース部である。２０は計算機２のＣＰＵ、２１は計算機２の主メモリ、２２は計算機２のディスク、２２１と２２２はディスク２２内のデータファイル、２３は計算機２と伝送路３を接続する伝送インタフェース部である。３０は計算機３のＣＰＵ、３１は計算機３の主メモリ、３２は計算機２のディスク、３２１と３２２はディスク３２内のデータファイル、３３は計算機３と伝送路５を接続する伝送インタフェース部である。１２１１はデータファイル１２１のレコード、１２２１はデータファイル１２２のレコード、２２１１はデータファイル２２１のレコード、２２２１はデータファイル２２２のレコード、３２１１はデータファイル３２１のレコード、３２２１はデータファイル３２２のレコードである。レコード１２１１とレコード２２１１とレコード３２１１、レコード１２２１とレコード２２２１とレコード３２２１は各々対応しており、計算機１と計算機２と計算機３のどれか１台が運用系、残りの１台あるいは２台が待機系として運転する場合、運用系計算機と待機系計算機の対応するレコードの内容は常に等しくなければならない。１２０は計算機１が運用系または待機系の時に計算機１のデータファイルを更新する都度レコード単位でカウントアップされる更新回数カウンタと更新時の運用系計算機名称（運用系計算機識別情報）を有する管理部であり、ディスク１２内部に存在する。２２０は計算機２が運用系または待機系の時に計算機２のデータファイルを更新する都度、レコード単位でカウントアップされる更新回数カウンタと更新時の運用系計算機名称を有する管理部でありディスク２２内部に存在する。３２０は計算機３が運用系または待機系の時に計算機３のデータファイルを更新する都度レコード単位でカウントアップされる更新回数カウンタと更新時の運用系計算機名称を有する管理部でありディスク３２内部に存在する。
【００２７】
図２３は管理部１２０の構造を示す図であり、図２３において、１２１１０はデータファイル１２１のレコード１２１１の更新回数カウンタ、１２１１１はレコード１２１１を更新した時の運用系計算機名称、１２２１０はデータファイル１２２のレコード１２２１の更新回数カウンタ、１２２１１はレコード１２２１を更新した時の運用系計算機名称である。図２４は管理部２２０の構造を示す図であり、図２４において、２２１１０はデータファイル２２１のレコード２２１１の更新回数カウンタ、２２１１１はレコード２２１１を更新した時の運用系計算機名称、２２２１０はデータファイル２２２のレコード２２２１の更新回数カウンタ、２２２１１はレコード２２２１を更新した時の運用系計算機名称である。図２５は管理部３２０の構造を示す図であり、図２５において、３２１１０はデータファイル３２１のレコード３２１１の更新回数カウンタ、３２１１１はレコード３２１１を更新した時の運用系計算機名称、３２２１０はデータファイル３２２のレコード３２２１の更新回数カウンタ、３２２１１はレコード３２２１を更新した時の運用系計算機名称である。更新カウンタは例えば４バイトの符号無し整数のように、充分大きな値を表現できるものとし、システム最初の運用開始時に０クリアされ、表現できる最大値の状態でカウントアップされると０へ戻るものとする。
【００２８】
なお、上記実施例２における計算機１は前記実施例１における計算機１に対応させ、上記実施例２における計算機２又は計算機３は前記実施例１における計算機２に対応させれば、上記実施例２の動作は前記実施例１の動作と同じであるので、ここでは説明を省略する。
【００２９】
以上のように実施例２によれば、運用系計算機２のデータファイルのレコードを更新後、待機系計算機１の対応するレコードを更新するまでに待機系計算機１が故障等により停止しても、待機系計算機１が再度待機系に立ち上がるときに両系の計算機１，２のデータファイルの当該レコードが不一致と認識され、運用系計算機２から新待機系計算機１へコピーされる。また、管理部はディスクにあるため両系の計算機１，２が停止しても管理部の内容は消去されないこと、及び更新時の運用系計算機名称を記憶していることから、データファイルのレコードを計算機２が運用系、計算機１が待機系の時に更新後、今度は計算機１が運用系、計算機２が待機系の時に別の値で更新したとしても、再度運用系＋待機系で運転したときに両系の計算機１，２のデータファイルの当該レコードが不一致と認識され運用系計算機１から新待機系計算機２へコピーされる。この結果、両系の計算機１，２の運転モードがどのように遷移したとしても、待機系立ち上げ時に両系の計算機１，２の内容が不一致のデータファイルレコードを正しく認識でき、不一致のレコードのみを運用系計算機１から新待機系計算機２へコピーするため、待機立ち上げ時間が短縮される。また、運用系−待機系で多重系運転しているとき、運用系計算機のデータ変更処理において、待機系計算機でのデータ更新と同期をとる必要がないため、多重系運転時の性能を損なわない。
【００３０】
なお、以上説明した実施例１，２ではデータファイル等価について説明したが、データファイルには当然データが含まれているので、本発明で言うデータファイル等価はデータ等価の概念をも含んでいる。したがって、データ等価の場合も、実施例１，２で説明した処理と同様な処理を行わせることにより、実現でき、この場合も実施例１，２と同等な効果が得られる。
【００３１】
また、上記実施例１，２では、管理部に更新時の運用系計算機識別情報として運用系計算機名称を記憶したが、それに限らず更新時の運用系計算機番号また更新時の運用計算機を示すコードを記憶してもよく、この場合も上記実施例１，２と同等の効果が得られる。
【００３２】
また、上記実施例１，２では、管理部にデータファイルのレコード単位で更新回数カウンタと更新時の運用系計算機名称を記憶したが、これらはデータファイル単位に記憶してもよく、この場合も上記実施例１，２と同等の効果が得られる。
【００３３】
【発明の効果】
以上説明したように第１の発明によれば、２重系計算機システムの運用系計算機と待機系計算機において、データファイル更新後、両系の計算機間で非同期にレコード単位に更新回数カウンタをカウントアップするとともに更新時の運用系計算機識別情報を記憶し、待機立ち上げ系の計算機と運用系計算機の更新回数カウンタまたは更新時の運用系計算機識別情報が異なるレコードのみを運用系計算機から新待機系計算機へコピーする処理を行うので、運用系計算機のデータファイルのレコードを更新後、待機系計算機の対応するレコードを更新するまでに待機系計算機が故障等により停止しても、再度待機系に立ち上がるときに両系の計算機のデータファイルの当該レコードが不一致と認識され、運用系計算機から新待機系計算機へコピーされる。また、管理部はディスクにあるため両系の計算機が停止しても管理部の内容は消去されないこと、及び更新時の運用系計算機識別情報を記憶していることから、データファイルのレコードを一方の計算機が運用系、他方の計算機が待機系の時に更新後、今度はさきほど待機系の計算機が運用系、さきほど運用系の計算機が待機系の時に別の値で更新したとしても、再度運用系＋待機系で運転したときに両系の計算機のデータファイルの当該レコードが不一致と認識され運用系計算機から新待機系計算機へコピーされる。この結果、両系の計算機の運転モードがどのように遷移したとしても、待機系立ち上げ時に両系の計算機の内容が不一致のデータファイルレコードを正しく認識でき、不一致のレコードのみを運用系計算機から新待機系計算機へコピーするため、待機系計算機の立ち上げ時間が短縮され、また、運用系−待機系で２重系運転しているとき、運用系計算機のデータ変更処理において、待機系計算機でのデータ更新と同期をとる必要がないため、２重系運転時の性能を損なわないという効果が得られる。
【００３４】
また、第２の発明によれば、多重系計算機システムの運用系計算機と待機系計算機において、第１の発明と同等の方法を適用するように構成したので、多重化した計算機システムでも運用系計算機のデータファイルのレコードを更新後、待機系計算機の対応するレコードを更新するまでに待機系計算機が故障等により停止しても、再度待機系に立ち上がるときに両系の計算機のデータファイルの当該レコードが不一致と認識され、運用系計算機から新待機系計算機へコピーされる。また、データファイルのレコードを一方の計算機が運用系、他方の計算機が待機系の時に更新後、今度はさきほど待機系の計算機が運用系、さきほど運用系の計算機が待機系の時に別の値で更新したとしても、再度運用系＋待機系で運転したときに両系の計算機のデータファイルの当該レコードが不一致と認識され運用系計算機から新待機系計算機へコピーされる。この結果、全系の計算機の運転モードがどのように遷移したとしても、待機系計算機の立ち上げ時に運用系計算機と新待機系計算機の内容が不一致のデータファイルレコードを正しく認識でき、待機立ち上げ時間が短縮され、また、多重系運転時の性能を損なわないという効果が得られる。
【図面の簡単な説明】
【図１】  この発明の実施例１に係るデータファイル等価処理方法を採用した２重系計算機システムを示すハードウェア構成図である。
【図２】  上記実施例１に係るデータファイル等価処理方法を示すブロック図である。
【図３】  上記実施例１における計算機１の管理部の構造図である。
【図４】  上記実施例１における計算機２の管理部の構造図である。
【図５】  上記実施例１における運用系計算機のデータ変更処理の手順を示すフローチャートである。
【図６】  上記実施例１における待機系計算機のデータ変更処理の手順を示すフローチャートである。
【図７】  上記実施例１における運用系計算機のデータコピー処理の手順を示すフローチャートである。
【図８】  上記実施例１における新待機系計算機のデータコピー処理の手順を示すフローチャートである。
【図９】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１０】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１１】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１２】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１３】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１４】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１５】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１６】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１７】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１８】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図１９】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図２０】  上記実施例１における各計算機の管理部とデータファイルのレコードの内容の変化を示す図である。
【図２１】  この発明の実施例２に係るデータファイル等価処理方法を採用した多重化計算機システムを示すハードウェア構成図である。
【図２２】  上記実施例２に係るデータファイル等価処理方法を示すブロック図である。
【図２３】  上記実施例２における計算機１の管理部の構造図である。
【図２４】  上記実施例２における計算機２の管理部の構造図である。
【図２５】  上記実施例２における計算機３の管理部の構造図である。
【図２６】  従来のデータファイル等価処理方法を採用した２系列化計算機システムを示すハードウェア構成図である。
【図２７】  従来のデータファイル等価処理方法を示すブロック図である。
【図２８】  従来のデータファイル等価処理方法における運用系計算機のデータ変更処理の手順を示すフローチャートである。
【図２９】  従来のデータファイル等価処理方法における待機系計算機のデータ変更処理の手順を示すフローチャートである。
【図３０】  従来のデータファイル等価処理方法における運用系計算機のデータコピー処理の手順を示すフローチャートである。
【図３１】  従来のデータファイル等価処理方法における新待機系計算機のデータコピー処理の手順を示すフローチャートである。
【符号の説明】
１，２，３  計算機、５  伝送路、１０，２０，３０  ＣＰＵ、
１１，２１，３１  主メモリ、１２，２２，３２  ディスク、
１３，２３，３３  伝送Ｉ／Ｆ、１２０，２２０，３２０  管理部、
１２１，１２２，２２１，２２２，３２１，３２２  データファイル、
１２１１，１２２１，２２１１，２２２１，３２１１，３２２１  レコード、
１２１１０，１２２１０，２２１１０，２２２１０，３２１１０，３２２１０  更新回数カウンタ、１２１１１，１２２１１，２２１１１，２２２１１，３２１１１，３２２１１，更新時運用系計算機名称（更新時運用系計算機識別情報）。
【図１】
0003702314.tif 000002
【図２】
0003702314.tif 000003
【図３】
0003702314.tif 000004
【図４】
0003702314.tif 000005
【図５】
0003702314.tif 000006
【図６】
0003702314.tif 000007
【図７】
0003702314.tif 000008
【図８】
0003702314.tif 000009
【図９】
0003702314.tif 000010
【図１０】
0003702314.tif 000011
【図１１】
0003702314.tif 000012
【図１２】
0003702314.tif 000013
【図１３】
0003702314.tif 000014
【図１４】
0003702314.tif 000015
【図１５】
0003702314.tif 000016
【図１６】
0003702314.tif 000017
【図１７】
0003702314.tif 000018
【図１８】
0003702314.tif 000019
【図１９】
0003702314.tif 000020
【図２０】
0003702314.tif 000021
【図２１】
0003702314.tif 000022
【図２２】
0003702314.tif 000023
【図２３】
0003702314.tif 000024
【図２４】
0003702314.tif 000025
【図２５】
0003702314.tif 000026
【図２６】
0003702314.tif 000027
【図２７】
0003702314.tif 000028
【図２８】
0003702314.tif 000029
【図２９】
0003702314.tif 000030
【図３０】
0003702314.tif 000031
【図３１】
0003702314.tif 000032