JP4095139B2 - Computer system and file management method - Google Patents

Computer system and file management method Download PDF

Info

Publication number
JP4095139B2
JP4095139B2 JP23293097A JP23293097A JP4095139B2 JP 4095139 B2 JP4095139 B2 JP 4095139B2 JP 23293097 A JP23293097 A JP 23293097A JP 23293097 A JP23293097 A JP 23293097A JP 4095139 B2 JP4095139 B2 JP 4095139B2
Authority
JP
Japan
Prior art keywords
file
checkpoint
computer
standby
update
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.)
Expired - Fee Related
Application number
JP23293097A
Other languages
Japanese (ja)
Other versions
JPH10133927A (en
Inventor
秀昭 平山
敏雄 白木原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP23293097A priority Critical patent/JP4095139B2/en
Publication of JPH10133927A publication Critical patent/JPH10133927A/en
Application granted granted Critical
Publication of JP4095139B2 publication Critical patent/JP4095139B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、たとえばネットワーク接続された複数のコンピュータにより構成されるネットワークコンピューティング環境などにおいて、高い信頼性を必要とするグループコンピューティング処理、データベース処理、およびトランザクション処理などに適用して好適なコンピュータシステムおよびファイル管理方法に関する。
【0002】
【従来の技術】
CPUによって実行されるプロセスのアドレス空間やコンテクスト、およびファイルなどの状態を定期的に採取して(これをチェックポイントと称す)、障害が発生したときに、最後に採取したチェックポイントの状態を復元し、その時点からプロセスの実行を再開始するといった障害からの回復機能を有したシステムにおいては、従来より外部入出力処理に関して課題があった。すなわち、障害が発生したときに、最後に採取したチェックポイントからプロセスを再実行させる際、プロセスのアドレス空間やプロセッサのコンテクストなどの状態は復元できるが、外部入力装置の状態の復元は容易ではなかった。
【0003】
たとえば、ファイルに対する書き込みをキャンセルすることは困難であるために、ファイルに対して書き込みを行なうときには、データをファイルに書き込む前に書き込み以前のデータを事前に読み込んで保存を行ない、その後にファイルへのデータ書き込みを行なっていた。
【0004】
図15は、ファイルに対する書き込みをキャンセルすることが困難なため、ファイルに対して書き込みを行なうときに、データをファイルに書き込む前に書き込み以前のデータを事前に読み込んで保存を行ない、その後にファイルへのデータ書き込みを行なう従来のシステムの仕組みを説明する図である。
【0005】
この例では、時刻t1のチェックポイントを採取した時点において“ABCD”の4バイトのデータからなるファイルに、時刻t2において1バイト目に“X”をwriteしている(1)。この場合、従来では、ファイルの1バイト目に“X”をwriteする前に、ファイルの1バイト目のデータ“B”をreadしておき(これをundoログとも言う)(2)、その後でファイルの1バイト目に“X”をwriteしている(3)。
【0006】
その後、時刻t3において障害が発生したために、プロセスを最後に採取されたチェックポイントの状態(t1)にロールバックする。ファイルは、チェックポイントt1以降に1バイト目が“X”に更新されているが、更新時に採取されたundoログを用いることにより、チェックポイントt1の状態を復元している。なお、このundoログは、次のチェックポイント時に不要となり廃棄される。
【0007】
また、たとえば2つのコンピュータにより構築され、その一方(プライマリコンピュータ)を運用系、他方(バックアップコンピュータ)を待機系として振り分けて2重化し、プライマリコンピュータに障害が発生したときに、バックアップコンピュータが処理を引き継くことによってシステムの可用性を高めるといったシステムも存在する。そして、このようなシステムで、前述したようにチェックポイントを定期的に採取していけば、信頼性をさらに向上させることが可能となる。
【0008】
【発明が解決しようとする課題】
この様に、プロセスのアドレス空間やコンテクスト、およびファイルなどの状態、すなわち、チェックポイントを定期的に採取していき、障害が発生したときに、最後に採取したチェックポイントの状態を復元し、その時点からプロセスの実行を再開始するといった障害からの回復機能を有したシステム(2重化されているかどうかを問わない)においては、その信頼性は向上されるが、一方で、ファイルの更新(たとえば書き込み)を行なうときに、一旦更新前のデータをファイルから読み込んで、それからファイルへの更新を行なわなければならなかったために、ファイルの更新性能を低下させるという課題があった。
【0009】
この発明は、このような実情に鑑みてなされたものであり、チェックポイントを定期的に採取して、障害が発生したときには最後に採取したチェックポイントの状況を復元し、その時点からプロセスの実行を再開始するといった障害からの回復機能を有したシステムにおいて、ファイルの更新を行なうときに、更新前のデータをファイルから読み込むなどといったことを不要とし、ファイルの更新性能を大幅に改善することを可能とするコンピュータシステムおよびファイル管理方法を提供することを目的とする。
【0010】
【課題を解決するための手段】
この発明のコンピュータシステムは、運用系および待機系の2つのコンピュータで2重化されたコンピュータシステムであって、中断されたプロセスの処理を再開始するための、アドレス空間とプロセッサコンテクストとを含むチェックポイント情報が保存されるチェックポイントを定期的に採取し、前記運用系および待機系双方のコンピュータ上に前記チェックポイント情報を保存するコンピュータシステムにおいて、前記運用系のコンピュータ上で実行されるプロセスによって更新されるファイルを前記運用系および待機系双方のコンピュータで2重化して設けておき、前記プロセスからファイルの更新が指示されたときに、その更新情報を前記待機系のコンピュータ上に保存して運用系のファイルのみを更新し、その更新が完了した時点でその更新の要求元に対し更新完了を通知することにより、前記アドレス空間とプロセッサコンテクストを含むチェックポイント情報に基づき最後に採取されたチェックポイントにおける状態にプロセスが復元された場合に必要となる、最後に採取されたチェックポイントにおける状態に待機系のファイルを維持する第1のファイル管理手段と、前記チェックポイントが採取される毎に、前記更新情報に示される更新内容を前記待機系のファイルに反映させることにより、待機系のファイルを当該採取されたチェックポイントにおける状態に更新する第2のファイル管理手段とを具備してなることを特徴とする。
【0011】
この発明のコンピュータシステムにおいては、プロセスがファイルの更新を要求したときに、その更新内容を示す更新情報を取得して保存するとともに、運用系のコンピュータに配置されたファイル(運用系ファイル)のみを即座に更新して、その結果を要求元であるプロセスに返答する。そして、チェックポイントが採取された後に、その保存しておいた更新情報で示される更新内容を、待機系のコンピュータに配置されたファイル(待機系ファイル)に反映させる。
【0012】
一方、たとえばプロセスがアボートしたときなどには、保存しておいた更新情報に基づいて、最後に採取したチェックポイント以降に更新されたデータに対応する更新前のデータを待機系ファイルからすべて読み出し、この読み出した更新前のデータを用いて運用系ファイルをチェックポイント時点に復元する。
【0013】
すなわち、このコンピュータシステムにおいては、従来のようにファイルを更新するときに、更新前のデータを読み出して退避させておくといった処理の完了を通常処理に待機させることなく、障害時のファイルのリカバリが実現されることになり、信頼性を損なうことなくファイルの更新性能を飛躍的に向上させることが可能となる。
【0014】
また、運用系ファイルの復元に代えて、最終のチェックポイント以前に保存された更新情報で示される更新内容すべてが反映された待機系ファイルを用いたチェックポイントからのプロセスの再実行も有効である。すなわち、運用系のコンピュータの障害などにより、運用系ファイルを用いての再開始が不可能な場合などにおける処理の継続も確保されることになり、システムの可用性を向上させることになる。また、この場合には、第3のコンピュータに新たに待機系ファイルを確保すれば、システムの可用性をさらに向上させることが可能となる。
【0015】
【発明の実施の形態】
まず、図1を参照してこの発明の基本原理を説明する。図1に示すように、この発明のコンピュータシステムは、運用系システム10と待機系システム20とで多重化されたシステムを前提とする。以下にそれぞれの動作を説明する。
【0016】
(通常処理)
(1)運用系システム10でアプリケーションプログラム11がWriteシステムコールを発行する。
【0017】
(2)ジャケットルーチン12がWriteシステムコールをフックし、運用系のオペレーティングシステムにWriteシステムコールを発行するとともに、そのWrite要求を待機系システム20に送信する。ただし、待機系システム20に即座にWrite要求を送信する必要はなく、次のチェックポイントまでに送信すればよい。また、待機系システム20では、受信したWrite要求を即座に実行するのではなく、一旦未確定キュー211に格納する。
【0018】
(3)チェックポイント処理が指示されると、運用系システム10は、溜っているWrite要求をすべて待機系システム20に送信し終えなければならない。
【0019】
(4)一方、待機系システム20では、未確定キュー211に格納されたWrite要求を確定キュー212に移動する。
【0020】
(5)この確定キュー212に移されたWrite要求は、待機系システム20のオペレーティングシステムによって順次処理されていく。
【0021】
すなわち、通常処理において発生するファイル更新においては、更新前のデータを読み出して退避させておくといった処理の完了を待機することがない。
【0022】
(ロールバック処理)
(3)´障害が発生したようなときに、運用系システム10および待機系システム20の双方にロールバック処理が指示される。
【0023】
(4)´このとき、運用系システム10に残存するWrite要求を、すべて待機系システム20に送信する。また、待機系の未確定キュー211に格納されたWrite要求は、最後のチェックポイント以降に発行されたものであるので、逆にこれを参照して待機系ファイル23から更新前のデータを読み出し、この読み出した更新前のデータを用いて運用系ファイル14をロールバックする。これにより、運用系ファイル14および待機系ファイル23の双方のファイルが最後のチェックポイント時点の状態になる。
【0024】
(5)´そして、待機系システム20は、未確定キュー211に残存するWrite要求をすべてキャンセルする。
【0025】
これにより、チェックポイント時点からの再開始が可能となる。
【0026】
次に、この発明の実施の形態を説明する。
【0027】
(第1の実施形態)
まず、この発明の第1の実施形態を説明する。図2にはこの発明の第1の実施形態に係るコンピュータシステムのシステム構成が示されている。図2に示したように、本実施形態のコンピュータシステムは、コンピュータがプライマリコンピュータ30と、バックアップコンピュータ40とで2重化されており、これらはネットワーク50で接続されている。このプライマリコンピュータ30とバックアップコンピュータ40とは、前述した運用系システム10および待機系システム20双方をそれぞれに備えており、いずれかで運用系システム10が動作するときに、他方では待機系システム20が動作する。ここでは、プライマリコンピュータ30側で運用系システム10、バックアップコンピュータ40側で待機系システム20をそれぞれ説明する。
【0028】
プロセス35は、プライマリコンピュータ30上で実行され、プライマリファイル39とバックアップファイル41とで2重化されたファイルを更新する。ここで、プライマリファイル39はプライマリコンピュータ30上に、バックアップファイル41はバックアップコンピュータ40上に配置され、プライマリコンピュータ30上のファイルシステム36およびバックアップコンピュータ40上のファイルシステム48を介して更新される。
【0029】
プライマリコンピュータ30上のファイルシステム36は、プライマリファイル操作部38とプライマリファイル復元部37とを含んでいる。一方、バックアップコンピュータ40上のファイルシステム48は、バックアップファイル操作部43、未確定キュー431、確定キュー432、バックアップファイル更新部44およびプライマリファイル復元情報読み出し部42を含んでいる。
【0030】
プロセス35がこの2重化されたファイルを更新する場合、プライマリファイル操作部38およびバックアップファイル操作部43を経由して行なう。プロセス35がこの2重化されたファイルに対応するwriteを行なうと、プライマリファイル39は、そのまま即座に更新されるが、バックアップファイル41はその時点では更新されずに、「ファイル書き込み情報」がバックアップファイル操作部43を経由して、バックアップコンピュータ40上の未確定キュー431に保存される。
【0031】
また、プロセス35がチェックポイントを採取する場合には、チェックポイント制御部31が、チェックポイント情報保存部32とプライマリファイル操作部38とにその指示を出す。チェックポイント情報保存部32は、チェックポイント採取の指示を受け取ると、チェックポイント情報(アドレス空間とプロセッサコンテクスト)をプライマリコンピュータ30上およびバックアップコンピュータ40上に保存する(プライマリコンピュータ30上のチェックポイント情報34およびバックアップコンピュータ40上のチェックポイント情報45)。
【0032】
一方、プライマリファイル操作部38は、チェックポイント採取の指示を受け取ると、バックアップファイル操作部43を経由して、未確定キュー431に保存されていた「ファイル書き込み情報」を確定キュー432に移動させる。この確定キュー432に移動された「ファイル書き込み情報」は、チェックポイント採取後に、バックアップファイル更新部44によってバックアップファイル41の更新のために使用され、バックアップファイル41の更新後に廃棄される。これにより、チェックポイント以降にプライマリファイル39に対して行なわれたものと同じwrite操作が、バックアップファイル41に対しても行なわれることになる。
【0033】
プロセス35がアボートなどの障害を発生させ、プロセス35をプライマリコンピュータ30上で最後に採取したチェックポイントから再実行する場合、アドレス空間とプロセッサコンテクストとは、プライマリコンピュータ30上のチェックポイント情報復元部37によって復元される。
【0034】
ファイルに関しては、バックアップファイル41は、チェックポイント以降の更新は未だ未確定キュー431に「ファイル書き込み情報」が保存されているだけであり、実際には更新されていないので復元は不要である。しかしながら、プライマリファイル39は、チェックポイント以降にすでに更新が行なわれているので復元が必要である。したがって、未確定キュー431に保存された「ファイル書き込み情報」に基づき、プライマリファイル39の更新前データをバックアップファイル41からreadし、このreadした更新前データをプライマリファイル39にwriteすることによって復元する。そして、この後、未確定キュー431に保存された「ファイル書き込み情報」を廃棄する。なお、確定キュー432に「ファイル書き込み情報」が保存されている場合には、その「ファイル書き込み情報」のバックアップファイル41への反映が完了した後に、前述した復元処理を開始する。
【0035】
一方、プライマリコンピュータ30またはプライマリコンピュータ30を制御するオペレーティングシステムがシステムダウンなどの障害を発生させ、プロセス35をバックアップコンピュータ40上で最後に採取したチェックポイントから再実行する場合には、アドレス空間とプロセッサコンテクストとは、チェックポイント情報復元部46によってプロセス47に復元される。
【0036】
ファイルに関しては、バックアップファイル41は、チェックポイント以降の更新は未だ未確定キュー431に「ファイル書き込み情報」が保存されているだけであり、実際には更新されていないので復元は不要である。
【0037】
なお、この「ファイル書き込み情報」のプライマリコンピュータ30からバックアップコンピュータ40への転送については最適化が可能である。障害が発生したときに、プライマリコンピュータ30がダウンしなかった場合は、プライマリファイル39を復元し、プライマリファイル39を用いてチェックポイントからの処理を再開する。一方、障害が発生したときに、プライマリコンピュータ30がダウンした場合には、バックアップファイル41を用いてチェックポイントから処理を再開する。
【0038】
それゆえに、「ファイル書き込み情報」は、プライマリファイル操作部38からバックアップファイル操作部43に即時に送る必要はない。すなわち、これらの「ファイル書き込み情報」は、次のチェックポイントまでに送ればよいので、転送効率を考慮すると、一旦プライマリファイル操作部38において蓄積しておき、「一定容量蓄積された」、「一定時間経過した」および「チェックポイント採取が要求された」といった事象の発生をトリガとして、バックアップファイル操作部43にまとめて送るということが可能である。
【0039】
図3には、本実施形態を適用するコンピュータシステムの概略構成が示されている。コンピュータはプライマリコンピュータ30とバックアップコンピュータ40とで2重化されており、プライマリコンピュータ30にはディスク装置60aが、バックアップコンピュータ40にはディスク装置60bがそれぞれ接続されている。プロセス35はプライマリコンピュータ上で実行され、また、このプロセス35がアクセスするファイルは、プライマリファイル39とバックアップファイル41とで2重化されており、各々ディスク装置60aとディスク装置60bとに配置されている。
【0040】
そして、チェックポイントは、チェックポイント情報をプライマリコンピュータ30側(プライマリチェックポイント情報34)と、バックアップコンピュータ40側(バックアップチェックポイント情報45)の両方に保持する。なお、この図では、チェックポイントをディスク装置上に保持しているが、メモリ上に保持しても構わない。
【0041】
もし、プライマリコンピュータ30またはプライマリコンピュータ30を制御するオペレーティングシステムにシステムダウンなどの障害が発生した場合には、バックアップコンピュータ40側でチェックポイント情報45を用いてプロセス47を再実行する。この場合プロセス47は、バックアップファイル41を使用することになる。
【0042】
また、プライマリファイル39またはバックアップファイル41を複数個持ち、3重化以上のファイルシステムを作ることも可能である。この場合、たとえば3重化ファイルシステムならば、
(1)2個のプライマリファイルと1個のバックアップファイル
(2)1個のプライマリファイルと2個のバックアップファイル
といった組み合わせが考えられる。
【0043】
図4は、本実施形態においてファイルを更新する様子を示す図である。この例では、プライマリコンピュータ30上で動くプロセス35が、4バイトのデータ“ABCD”を持つ2重化されたファイル(プライマリコンピュータ30上のプライマリファイル39と、バックアップコンピュータ40上のバックアップファイル41)に対し、時刻t1において1バイト目に“X”をwriteしている(1)。これによってプライマリファイル39は即時に更新されるが、バックアップファイル41は即時には更新されずに、「ファイル書き込み情報」のみを保存している。
【0044】
この後、時刻t2においてチェックポイントが採取されることによって、先程の「ファイル書き込み情報」の実行が確定する(2)。そして時刻t2以降で、確定された「ファイル書き込み情報」に基づいて、バックアップファイル41の更新を実行している。
【0045】
図5は、本実施形態において障害発生時にプライマリファイルを復元する様子を示す図である。この例では、プライマリコンピュータ30上で動くプロセス35が、4バイトのデータ“ABCD”を持つ2重化されたファイル(プライマリコンピュータ30上のプライマリファイル39と、バックアップコンピュータ40上のバックアップファイル41)に対し、時刻t1において1バイト目に“X”をwriteしている(1)。これによってプライマリファイル39は即時に更新されるが、バックアップファイル41は即時には更新されずに、「ファイル書き込み情報」のみを保存している。
【0046】
この後、時刻t2において障害が発生している(2)。すなわち、時刻t1おける「ファイル書き込み情報」でプライマリファイル39は更新されているため復元の必要があるが、バックアップファイル41は未だ更新されていないため復元の必要がない。ここで時刻t1において保存された「ファイル書き込み情報」によって、プライマリファイル39の更新部分がかわる。そこで、プライマリファイル39の復元においては、未確定の「ファイル書き込み情報」に示された位置のデータをバックアップファイル41からreadし、そのreadしたデータをプライマリファイル39にwriteすることによって、プライマリファイル39を復元する。
【0047】
そして、プライマリコンピュータ30上で取られているチェックポイントを用いて、プライマリコンピュータ30上でプロセス35を再実行している。この再実行されたプロセス35は、復元されたプライマリファイル39を使用する。
【0048】
図6は、ファイル操作部が「ファイル書き込み」を指示されたときの処理の流れを示すフローチャートである。この場合、まず、「ファイル書き込み情報」を保存し、未確定キュー431にリンクする(ステップA1)。次に、「ファイル書き込み情報」にしたがって、プライマリファイル39の更新を行なう(ステップA2)。この時点で、「ファイル書き込み」操作は完了したとして、要求側に完了通知を行なう(ステップA3)。
【0049】
図7は、ファイル操作部が「チェックポイント採取」を指示されたときの処理の流れを示すフローチャートである。この場合、保存されている「ファイル書き込み情報」を未確定キュー431から確定キュー432に移動する(ステップB1)。
【0050】
図8は、バックアップファイル更新部の処理の流れを示すフローチャートである。この場合、まず、確定キュー432に「ファイル書き込み情報」がリンクされているかどうかを検査する(ステップC1)。もし、リンクされていない場合(ステップC1のN)、バックアップファイル更新部44は、この検査を続行する。一方、リンクされている場合には(ステップC1のY)、確定キュー432にリンクされている「ファイル書き込み情報」に基いて、バックアップファイル41を更新する(ステップC2)。そして、実行した「ファイル書き込み情報」を確定キュー432からはずす(ステップC3)。
【0051】
図9は、プロセス35にアボートなどの障害が発生し、プロセス35をプライマリコンピュータ30上で最後に採取したチェックポイントから再実行する場合の処理の流れを示すフローチャートである。
【0052】
プロセス35に障害が発生すると、まず、プライマリコンピュータ30上のチェックポイント情報復元部33に、「アドレス空間とプロセッサコンテクストとの復元を指示する(ステップD1)。次に、プライマリファイル復元部33に、「プライマリファイルの復元」を指示する(ステップD2)。
【0053】
図10は、プライマリコンピュータ30上のチェックポイント情報復元部が「アドレス空間とプロセッサコンテクストの復元」を指示された場合の処理の流れを示すフローチャートである。この場合、まず、プロセス35のアドレス空間を復元する(ステップE1)。次に、プロセス35のチェックポイント採取時のプロセッサコンテクストの状態を復元する(ステップE2)。
【0054】
図11は、プライマリファイル復元部37が、「プライマリファイルの復元」を指示された場合の処理の流れを示すフローチャートである。この場合、まず、未確定キュー431に、「ファイル書き込み情報」がリンクされているかどうかを検査する(ステップF1)。「ファイル書き込み情報」がリンクされている場合には(ステップF1のY)未確定キュー431にリンクされている「ファイル書き込み情報」にしたがって、プライマリファイル39の中の更新されている部分のデータをバックアップファイル41からreadし、そのReadしたデータをプライマリファイル39にwriteすることにより、プライマリファイル39のその更新されている部分のデータを復元する(ステップF2)。そして、復元に利用した「ファイル書き込み情報」を、未確定キュー431からはずす(廃棄する)(ステップF3)。この処理は、未確定キュー431にリンクた「ファイル書き込み情報」が無くなるまで繰り返される。
【0055】
プライマリコンピュータ30またはプライマリコンピュータ30を制御するオペレーティングシステムにシステムダウンなどの障害が発生した場合には、プロセス35をバックアップコンピュータ40上で最後に採取したチェックポイントから再実行する。この場合は、バックアップファイル41で処理を引き継ぐ。図12は、障害が発生したときに、バックアップファイル41で処理を引き継ぐ様子を示す図である。
【0056】
この例では、プライマリコンピュータ30上で動作するプロセス35が、4バイトのデータ“ABCD”を持つ2重化されたファイル(プライマリコンピュータ30上のプライマリファイル39と、バックアップコンピュータ40上のバックアップファイル41)に対し、時刻t1において1バイト目に“X”をwriteしている(1)。これによってプライマリファイル39は即時に更新されるが、バックアップファイル41は即時には更新されずに、「ファイル書き込み情報」のみを保存している。
【0057】
この後、時刻t2においてプライマリコンピュータ30に障害が発生している(2)。この場合、バックアップコンピュータ40上に取られたチェックポイントを用いて、バックアップコンピュータ40上でプロセス47を再実行している。このとき、プロセス47は、バックアップファイル41を用いて処理を継続するわけだが、時刻t1においてプライマリファイル39は更新されているが、バックアップファイル41は未だ更新されていないので、バックアップコンピュータ40上でのプロセス47の再実行においては、バックアップファイル42がそのまま使用できる。
【0058】
なお、障害発生によりバックアップファイルを切り離した場合には、その後に新たなバックアップファイルを作成することによって、再び図1の様な初期状態を再現することができ、再度の障害発生に対しても回復処理が可能となる。
【0059】
また、障害発生によってバックアップファイルで処理を引き継ぎ、チェックポイントから処理を再実行した場合には、その後、バックアップファイルをプライマリファイルとして新たなバックアップファイルを作成することにより、再び図1の様な初期状態を再現することができ、再度の障害発生に対しても回復処理が可能となる。この再度バックアップファイルを作成する場合には、以下の様な2つの方法がある。
【0060】
(1)バックアップファイル切り離し後のプライマリファイルの更新情報とデータとを保存しておき、バックアップファイルを再接続する場合には、バックアップファイルに前記切り離し後のプライマリファイルの更新情報とデータとを反映させる。
【0061】
(2)プライマリファイルをバックアップファイルにコピーする。ただし、コピー中にもプライマリファイルが更新され続けている場合には、コピーを始めると同時にファイルの更新情報とデータとをバックアップファイルにも反映させる。
【0062】
さらに、この2つの方法を組み合わせた以下の様な方法も有効である。
【0063】
(3)切り離されたバックアップファイル(あるいは障害発生前のプライマリファイル)を再接続することを前提に、一定時間が経過するまでは(1)の方法が取れる様に、バックアップファイル切り離し後のプライマリファイルの更新情報とデータとを保存しておく。一定時間を経過したら、(1)の方法は締め、バックアップファイル切り離し後のプライマリファイルの更新情報とデータとの保存は止めて、(2)の方法を取るようにする。また、切り離されたバックアップファイル以外のファイルで再接続する場合にも、バックアップファイル切り離し後のプライマリファイルの更新情報とデータとの保存は止めて、(2)の方法を取る。
【0064】
(第2の実施形態)
次に、この発明の第2の実施形態を説明する。第1の実施形態では、2重化されたコンピュータシステムを説明したが、この発明は、2重化されていないコンピュータ上のファイルシステムに適用しても効果がある。そこで、本実施形態では、2重化されていないコンピュータ上のファイルシステムに適用した場合を例に説明する。図13は、この発明を2重化されていないコンピュータ上のファイルシステムに適用した場合の構成図である。このシステムでは、コンピュータは2重化されておらず、コンピュータ30のみが存在する。プロセス35は、このコンピュータ30上で実行され、プライマリファイル39とバックアップファイル41とで2重化されたファイルを更新する。すなわち、これらブライマリファイル39およびバックアップファイル41は、共にコンピュータ30上に配置され、ファイルシステム36を介して更新される。
【0065】
コンピュータ30上のファイルシステム36は、プライマリファイル操作部38、プライマリファイル復元部37、バックアップファイル操作部43、未確定キュー431、確定キュー432、バックアップファイル更新部44およびプライマリファイル復元情報読み出し部42を含んでいる。
【0066】
プロセス35がこの2重化されたファイルを更新するときは、プライマリファイル操作部38およびバックアップファイル操作部43を経由して行なう。プロセス35がこの2重化されたファイルに対するwriteを行なうと、プライマリファイル39はそのまま更新されるが、バックアップファイル41は更新されずに、「ファイル書き込み情報」がバックアップファイル操作部43を経由して未確定キュー431に保存される。
【0067】
また、プロセス35がチェックポイントを採取するときには、チェックポイント制御部31が、チェックポイント情報保存部32とプライマリファイル操作部43に指示を出す。チェックポイント情報保存部32はチェックポイント採取の指示を受けると、アドレス空間とプロセッサコンテクストとをコンピュータ30上に行なう(チェックポイント情報34)。
【0068】
一方、プライマリファイル操作部38は、チェックポイント採取の指示を受けると、バックアップファイル操作部43を経由して、未確定キュー431に保存されていた「ファイル書き込み情報」を確定キュー432に移動させる。確定キュー432に移動された「ファイル書き込み情報」は、チェックポイント採取後に、バックアップファイル更新部44によってバックアップファイル41の更新のために使用され、バックアップファイル41の更新後に廃棄される。これにより、チェックポイント以降にプライマリファイル39に対して行なわれたのと同じように、write操作がバックアップファイル41に対して行なわれる。
【0069】
プロセス35にアボートなどの障害が発生し、プロセス35をコンピュータ30上で最後に採取したチェックポイントから再実行する場合、アドレス空間とプロセッサコンテクストは、コンピュータ30上のチェックポイント情報復元部33によって復元される。
【0070】
ファイルに関しては、バックアップファイル41は、チェックポイント以降の更新が未だ未確定キュー431に「ファイル書き込み情報」が保存されているだけであり、実際には更新されていないので復元は不要である。しかしながら、プライマリファイル39は、チェックポイント以降にすでに更新が行なわれているので復元が必要である。したがって、未確定キュー431に保存された「ファイル書き込み情報」に基づき、プライマリファイル39の更新前データをバックアップファイル41からreadし、このReadした更新前データをプライマリファイル39にwriteすることによって復元する。そして、この後、未確定キュー431に保存された「ファイル書き込み情報」を廃棄する。なお、確定キュー432に「ファイル書き込み情報」が保存されている場合には、その「ファイル書き込み情報」のバックアップファイル41への反映が完了した後に、前述した復元処理を開始する。
【0071】
図14には、本実施形態を適用するコンピュータシステムの概略構成が示されている。本実施形態のシステムはコンピュータ30のみで稼働し2重化されていない。コンピュータ30にはディスク装置60aとディスク装置60bとが接続されている。プロセス35はコンピュータ30上で実行され、また、このプロセス35がアクセスするファイルは、プライマリファイル39とバックアップファイル41とで2重化されており、各々ディスク装置60aとディスク装置60bとに配置されている。
【0072】
このように、この発明を適用することにより、プロセスのアドレス空間やプロセッサのコンテクストなどの状態(チェックポイント情報)を定期的に保存しながら実行を続け、障害が発生したときには最後に保存したチェックポイントからプロセスを再実行させることによる障害時対策を施したシステムにおいて、ファイルの更新を行なう際に、一旦更新前データをファイルから読み込む必要がなくなるため、ファイルの更新性能が大幅に改善される。
【0073】
なお、前述の実施形態に記載したファイルの管理方法は、コンピュータに実行させることのできるプログラムとしてフロッピィディスク、光ディスクおよび半導体メモリなどの記録媒体に格納して頒布することが可能である。
【0074】
【発明の効果】
以上詳述したように、この発明によれば、プロセスがファイルの更新を要求したときに、その更新内容を示す更新情報を取得して保存するとともにプライマリファイルのみを即座に更新し、チェックポイントが採取された後に、その保存しておいた更新情報で示される更新内容をバックアップファイルに反映させる。そして、たとえばプロセスがアボートしたときなどには、保存しておいた更新情報に基づいて、最後に採取したチェックポイント以降に更新されたデータに対応する更新前のデータをバックアップファイルからすべて読み出し、この読み出した更新前のデータを用いてプライマリファイルをチェックポイント時点に復元し、プロセスの再実行を開始する(バックアップファイルを用いたプロセスの再実行の開始も可能)。
【0075】
すなわち、このコンピュータシステムにおいては、従来のようにファイルを更新するときに、更新前のデータを読み出して退避させておくといった処理の完了を通常処理に待機させることなく、障害時のファイルのリカバリが実現されることになり、信頼性を損なうことなくファイルの更新性能を飛躍的に向上させることが可能となる。
【図面の簡単な説明】
【図1】この発明の基本原理を説明するための概念図。
【図2】この発明の第1の実施形態に係るコンピュータシステムのシステム構成を示す図。
【図3】同実施形態を適用するコンピュータシステムの概略構成を示す図。
【図4】同実施形態においてファイルを更新する様子を示す図。
【図5】同実施形態において障害発生時にプライマリファイルを復元する様子を示す図。
【図6】同実施形態のファイル操作部が「ファイル書き込み」を指示されたときの処理の流れを示すフローチャート。
【図7】同実施形態のファイル操作部が「チェックポイント採取」を指示されたときの処理の流れを示すフローチャート。
【図8】同実施形態のバックアップファイル更新部の処理の流れを示すフローチャート。
【図9】同実施形態のプロセスにアボートなどの障害が発生し、プロセスをプライマリコンピュータ30上で最後に採取したチェックポイントから再実行する場合の処理の流れを示すフローチャート。
【図10】同実施形態のプライマリコンピュータ上のチェックポイント情報復元部が「アドレス空間とプロセッサコンテクストとの復元」を指示された場合の処理の流れを示すフローチャート。
【図11】同実施形態のプライマリファイル復元部が「プライマリファイルの復元」を指示された場合の処理の流れを示すフローチャート。
【図12】同実施形態の障害が発生したときにバックアップファイルで処理を引き継ぐ様子を示す図。
【図13】この発明の第2の実施形態に係るコンピュータシステムのシステム構成を示す図。
【図14】同実施形態を適用するコンピュータシステムの概略構成を示す図。
【図15】従前のファイルに対する書き込みをキャンセルすることが困難なため、ファイルに対して書き込みを行なうときに、データをファイルに書き込む前に書き込み以前のデータを事前に読み込んで保存を行ない、その後にファイルへのデータ書き込みを行なう従来のシステムの仕組みを説明する図。
【符号の説明】
10…運用系システム、11…アプリケーションプログラム、12…ジャケットルーチン、13…OSバッファキャッシュ、14…ディスク装置、20…待機系システム、21デーモン、211…未確定キュー、212…確定キュー、22…OSバッファキャッシュ、23…ディスク装置、30…プライマリコンピュータ、31…チェックポイント制御部、32…チェックポイント情報保存部、33…チェックポイント情報復元部、34…チェックポイント情報、35…プロセス、36…ファイルシステム、37…プライマリファイル復元部、38…プライマリファイル操作部、39…プライマリファイル、40…バックアップコンピュータ、41…バックアップファイル、42…プライマリファイル復元情報読み出し部、43…バックアップファイル操作部、431…未確定キュー、432…確定キュー、44…バックアップファイル更新部、45…チェックポイント情報、46…チェックポイント情報復元部、47…プロセス、50…ネットワーク、60a,60b…ディスク装置。
[0001]
BACKGROUND OF THE INVENTION
The present invention is a computer system suitable for application to group computing processing, database processing, transaction processing, etc. that require high reliability in a network computing environment composed of a plurality of computers connected to a network, for example. And a file management method.
[0002]
[Prior art]
Periodically collect the address space, context, and file status of processes executed by the CPU (this is called a checkpoint), and restore the last collected checkpoint status when a failure occurs However, in a system having a recovery function from a failure such as restarting the execution of a process from that point, there has been a problem regarding external input / output processing. In other words, when a failure occurs, when the process is re-executed from the last collected checkpoint, the state of the process address space and processor context can be restored, but the state of the external input device cannot be easily restored. It was.
[0003]
For example, since it is difficult to cancel writing to a file, when writing to a file, before writing the data to the file, read and save the data before writing, and then write to the file Data was being written.
[0004]
In FIG. 15, since it is difficult to cancel writing to the file, when writing to the file, before writing the data to the file, the data before writing is read in advance and saved, and then to the file. It is a figure explaining the mechanism of the conventional system which performs data writing of.
[0005]
In this example, “X” is written to the first byte at time t2 in the file consisting of 4-byte data “ABCD” at the time when the checkpoint at time t1 is taken (1). In this case, conventionally, before writing “X” to the first byte of the file, the data “B” of the first byte of the file is read (this is also referred to as undo log) (2), and thereafter "X" is written to the first byte of the file (3).
[0006]
Thereafter, because a failure has occurred at time t3, the process is rolled back to the last checkpoint state (t1). The first byte of the file is updated to “X” after checkpoint t1, but the state of checkpoint t1 is restored by using an undo log collected at the time of update. Note that this undo log becomes unnecessary and discarded at the next checkpoint.
[0007]
Also, for example, it is constructed by two computers, and one (primary computer) is assigned as the active system and the other (backup computer) is assigned as the standby system, and the backup computer performs processing when a failure occurs in the primary computer. Some systems increase the availability of the system by taking over. Then, with such a system, if checkpoints are periodically collected as described above, the reliability can be further improved.
[0008]
[Problems to be solved by the invention]
In this way, the status of the process address space, context, and files, that is, checkpoints are collected periodically, and when a failure occurs, the last collected checkpoint state is restored. In a system with a function of recovering from a failure such as restarting the execution of a process from the point in time (whether it is duplicated or not), its reliability is improved, but on the other hand, file update ( For example, when data is written), the data before update must be read once from the file and then updated to the file, which causes a problem of reducing the file update performance.
[0009]
The present invention has been made in view of such circumstances, and periodically collects checkpoints, restores the status of the last collected checkpoint when a failure occurs, and executes the process from that point. In a system that has a recovery function from failure such as restarting, it is not necessary to read the data before update from the file when updating the file, and greatly improve the file update performance. It is an object of the present invention to provide a computer system and a file management method that make possible.
[0010]
[Means for Solving the Problems]
The computer system of the present invention is a computer system that is duplicated by two computers of an active system and a standby system, and is interrupted. Process To restart the process Checkpoint information including address space and processor context is stored Checkpoints are periodically collected and placed on both the active and standby computers. The checkpoint information In the computer system to be stored, a file to be updated by a process executed on the active computer is provided in duplicate on both the active computer and the standby computer, and the process is instructed to update the file. The update information is saved on the standby computer, and only the active file is updated. When the update is completed, the update request source is notified of the update completion. Thus, it is necessary when the process is restored to the state at the last collected checkpoint based on the checkpoint information including the address space and the processor context. First file management to maintain files Means and the checkpoint is taken Every time Reflecting the update contents indicated in the update information in the standby file The second file management for updating the standby file to the state at the collected checkpoint Means.
[0011]
In the computer system of the present invention, when a process requests a file update, the update information indicating the update contents is acquired and stored, and only the file (operating file) placed on the operating computer is stored. Update immediately and return the result to the requesting process. After the checkpoint is collected, the update content indicated by the stored update information is reflected in the file (standby file) arranged in the standby computer.
[0012]
On the other hand, for example, when the process is aborted, all the pre-update data corresponding to the data updated after the last collected checkpoint is read from the standby file based on the saved update information, Using the read data before update, the operational file is restored to the checkpoint time.
[0013]
In other words, in this computer system, when a file is updated as in the prior art, file recovery in the event of failure can be performed without waiting for normal processing to complete processing such as reading and saving data before update. As a result, the file update performance can be dramatically improved without degrading the reliability.
[0014]
Instead of restoring the active file, it is also effective to re-execute the process from the checkpoint using the standby file that reflects all the update contents indicated by the update information saved before the last checkpoint. . In other words, continuation of processing is ensured in the case where restart using the operation system file is impossible due to a failure of the operation system computer, etc., and the system availability is improved. In this case, if a standby file is newly secured in the third computer, the availability of the system can be further improved.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
First, the basic principle of the present invention will be described with reference to FIG. As shown in FIG. 1, the computer system of the present invention is premised on a system that is multiplexed with an active system 10 and a standby system 20. Each operation will be described below.
[0016]
(Normal processing)
(1) In the operational system 10, the application program 11 issues a Write system call.
[0017]
(2) The jacket routine 12 hooks the Write system call, issues a Write system call to the operating operating system, and transmits the Write request to the standby system 20. However, it is not necessary to immediately send a write request to the standby system 20, and it may be sent by the next checkpoint. Further, in the standby system 20, the received Write request is not immediately executed, but temporarily stored in the indeterminate queue 211.
[0018]
(3) When the checkpoint process is instructed, the active system 10 must finish transmitting all the accumulated write requests to the standby system 20.
[0019]
(4) On the other hand, in the standby system 20, the write request stored in the unconfirmed queue 211 is moved to the confirmed queue 212.
[0020]
(5) Write requests transferred to the confirmation queue 212 are sequentially processed by the operating system of the standby system 20.
[0021]
That is, in the file update that occurs in the normal process, there is no waiting for the completion of the process of reading and saving the data before the update.
[0022]
(Rollback processing)
(3) When a failure occurs, rollback processing is instructed to both the active system 10 and the standby system 20.
[0023]
(4) ′ At this time, all the Write requests remaining in the active system 10 are transmitted to the standby system 20. Also, since the Write request stored in the standby unconfirmed queue 211 is issued after the last checkpoint, the data before update is read from the standby file 23 by referring to this, The active file 14 is rolled back using the read data before update. As a result, both the active file 14 and the standby file 23 are in the state at the time of the last checkpoint.
[0024]
(5) ′ The standby system 20 then cancels all write requests remaining in the indeterminate queue 211.
[0025]
Thereby, it is possible to restart from the check point.
[0026]
Next, an embodiment of the present invention will be described.
[0027]
(First embodiment)
First, a first embodiment of the present invention will be described. FIG. 2 shows a system configuration of a computer system according to the first embodiment of the present invention. As shown in FIG. 2, in the computer system of this embodiment, the computer is duplicated by a primary computer 30 and a backup computer 40, and these are connected by a network 50. Each of the primary computer 30 and the backup computer 40 includes both the operation system 10 and the standby system 20 described above. When the operation system 10 operates in either one, the standby system 20 is on the other side. Operate. Here, the active system 10 will be described on the primary computer 30 side, and the standby system 20 will be described on the backup computer 40 side.
[0028]
The process 35 is executed on the primary computer 30 and updates a duplicated file of the primary file 39 and the backup file 41. Here, the primary file 39 is arranged on the primary computer 30 and the backup file 41 is arranged on the backup computer 40, and is updated via the file system 36 on the primary computer 30 and the file system 48 on the backup computer 40.
[0029]
The file system 36 on the primary computer 30 includes a primary file operation unit 38 and a primary file restoration unit 37. On the other hand, the file system 48 on the backup computer 40 includes a backup file operation unit 43, an unconfirmed queue 431, a confirmed queue 432, a backup file update unit 44, and a primary file restoration information reading unit 42.
[0030]
When the process 35 updates the duplicated file, it is performed via the primary file operation unit 38 and the backup file operation unit 43. When the process 35 performs a write corresponding to the duplicated file, the primary file 39 is immediately updated as it is, but the backup file 41 is not updated at that time, and the “file write information” is backed up. The file is stored in an indeterminate queue 431 on the backup computer 40 via the file operation unit 43.
[0031]
When the process 35 collects checkpoints, the checkpoint control unit 31 gives an instruction to the checkpoint information storage unit 32 and the primary file operation unit 38. Upon receiving the checkpoint collection instruction, the checkpoint information storage unit 32 stores the checkpoint information (address space and processor context) on the primary computer 30 and the backup computer 40 (checkpoint information 34 on the primary computer 30). And checkpoint information 45 on the backup computer 40).
[0032]
On the other hand, when receiving the checkpoint collection instruction, the primary file operation unit 38 moves the “file write information” stored in the unconfirmed queue 431 to the confirmation queue 432 via the backup file operation unit 43. The “file writing information” moved to the confirmation queue 432 is used for updating the backup file 41 by the backup file updating unit 44 after collecting the checkpoint, and discarded after the backup file 41 is updated. As a result, the same write operation as that performed on the primary file 39 after the checkpoint is also performed on the backup file 41.
[0033]
When the process 35 generates a failure such as an abort and re-executes the process 35 from the last checkpoint collected on the primary computer 30, the address space and the processor context are the checkpoint information restoration unit 37 on the primary computer 30. Restored by.
[0034]
Regarding the file, the backup file 41 is not yet restored since the “file write information” is only stored in the undetermined queue 431 and the update after the check point is not yet updated. However, since the primary file 39 has already been updated after the checkpoint, it needs to be restored. Therefore, based on the “file write information” stored in the indeterminate queue 431, the pre-update data of the primary file 39 is read from the backup file 41, and the read pre-update data is written to the primary file 39 to be restored. . Thereafter, the “file write information” stored in the unconfirmed queue 431 is discarded. If “file write information” is stored in the confirmation queue 432, the restoration process described above is started after the reflection of the “file write information” to the backup file 41 is completed.
[0035]
On the other hand, when the primary computer 30 or the operating system that controls the primary computer 30 causes a failure such as a system failure and the process 35 is re-executed from the last checkpoint collected on the backup computer 40, the address space and the processor The context is restored to the process 47 by the checkpoint information restoration unit 46.
[0036]
Regarding the file, the backup file 41 is not yet restored since the “file write information” is only stored in the undetermined queue 431 and the update after the check point is not yet updated.
[0037]
The transfer of the “file writing information” from the primary computer 30 to the backup computer 40 can be optimized. If the primary computer 30 does not go down when a failure occurs, the primary file 39 is restored and processing from the checkpoint is resumed using the primary file 39. On the other hand, if the primary computer 30 goes down when a failure occurs, the backup file 41 is used to resume processing from the checkpoint.
[0038]
Therefore, the “file write information” does not need to be sent immediately from the primary file operation unit 38 to the backup file operation unit 43. In other words, these “file write information” may be sent until the next check point. Therefore, in consideration of transfer efficiency, the “file write information” is temporarily stored in the primary file operation unit 38, and is stored “fixed capacity”, “fixed capacity”. It is possible to send to the backup file operation unit 43 collectively using the occurrence of events such as “time has passed” and “checkpoint collection requested” as a trigger.
[0039]
FIG. 3 shows a schematic configuration of a computer system to which this embodiment is applied. The computer is duplicated by a primary computer 30 and a backup computer 40. A disk device 60a is connected to the primary computer 30, and a disk device 60b is connected to the backup computer 40, respectively. The process 35 is executed on the primary computer, and the files accessed by the process 35 are duplicated by the primary file 39 and the backup file 41, and are arranged in the disk device 60a and the disk device 60b, respectively. Yes.
[0040]
The checkpoint holds the checkpoint information on both the primary computer 30 side (primary checkpoint information 34) and the backup computer 40 side (backup checkpoint information 45). In this figure, the checkpoint is held on the disk device, but it may be held on the memory.
[0041]
If a failure such as a system failure occurs in the primary computer 30 or the operating system that controls the primary computer 30, the process 47 is re-executed using the checkpoint information 45 on the backup computer 40 side. In this case, the process 47 uses the backup file 41.
[0042]
It is also possible to create a triple or more file system having a plurality of primary files 39 or backup files 41. In this case, for example, if it is a triple file system,
(1) Two primary files and one backup file
(2) One primary file and two backup files
Such a combination is conceivable.
[0043]
FIG. 4 is a diagram showing how a file is updated in this embodiment. In this example, a process 35 running on the primary computer 30 is converted into a duplicated file (a primary file 39 on the primary computer 30 and a backup file 41 on the backup computer 40) having 4-byte data “ABCD”. On the other hand, “X” is written to the first byte at time t1 (1). As a result, the primary file 39 is updated immediately, but the backup file 41 is not updated immediately, and only “file write information” is stored.
[0044]
Thereafter, a checkpoint is taken at time t2, thereby confirming the execution of the previous “file write information” (2). After time t2, the backup file 41 is updated based on the determined “file write information”.
[0045]
FIG. 5 is a diagram showing how the primary file is restored when a failure occurs in this embodiment. In this example, a process 35 running on the primary computer 30 is converted into a duplicated file (a primary file 39 on the primary computer 30 and a backup file 41 on the backup computer 40) having 4-byte data “ABCD”. On the other hand, “X” is written to the first byte at time t1 (1). As a result, the primary file 39 is updated immediately, but the backup file 41 is not updated immediately, and only “file write information” is stored.
[0046]
Thereafter, a failure occurs at time t2 (2). That is, since the primary file 39 is updated with the “file writing information” at time t1, it needs to be restored, but the backup file 41 has not yet been updated, so there is no need for restoration. Here, the updated portion of the primary file 39 is changed by the “file writing information” stored at the time t1. Therefore, in the restoration of the primary file 39, the data at the position indicated in the undetermined “file writing information” is read from the backup file 41, and the read data is written to the primary file 39, whereby the primary file 39 To restore.
[0047]
Then, the process 35 is re-executed on the primary computer 30 using the checkpoint taken on the primary computer 30. This re-executed process 35 uses the restored primary file 39.
[0048]
FIG. 6 is a flowchart showing the flow of processing when the file operation unit is instructed to “write file”. In this case, first, “file write information” is stored and linked to the indeterminate queue 431 (step A1). Next, the primary file 39 is updated according to “file write information” (step A2). At this point, assuming that the “file writing” operation is completed, a notification of completion is sent to the requesting side (step A3).
[0049]
FIG. 7 is a flowchart showing a flow of processing when the file operation unit is instructed to “collect checkpoint”. In this case, the stored “file writing information” is moved from the unconfirmed queue 431 to the confirmed queue 432 (step B1).
[0050]
FIG. 8 is a flowchart showing a processing flow of the backup file update unit. In this case, first, it is checked whether “file write information” is linked to the confirmation queue 432 (step C1). If not linked (N in Step C1), the backup file update unit 44 continues this check. On the other hand, if linked (Y in Step C1), the backup file 41 is updated based on the “file write information” linked to the confirmation queue 432 (Step C2). Then, the executed “file writing information” is removed from the confirmation queue 432 (step C3).
[0051]
FIG. 9 is a flowchart showing a processing flow when a failure such as an abort occurs in the process 35 and the process 35 is re-executed from the last checkpoint collected on the primary computer 30.
[0052]
When a failure occurs in the process 35, first, the checkpoint information restoring unit 33 on the primary computer 30 is instructed to restore the address space and the processor context (step D1). Next, the primary file restoring unit 33 is instructed. An instruction “restore primary file” is issued (step D2).
[0053]
FIG. 10 is a flowchart showing a processing flow when the checkpoint information restoration unit on the primary computer 30 is instructed to “restore address space and processor context”. In this case, first, the address space of the process 35 is restored (step E1). Next, the state of the processor context at the time of checkpoint collection of the process 35 is restored (step E2).
[0054]
FIG. 11 is a flowchart showing the flow of processing when the primary file restoration unit 37 is instructed to “restore primary file”. In this case, first, it is checked whether or not “file write information” is linked to the indeterminate queue 431 (step F1). If the “file write information” is linked (Y in step F1), the updated portion of the data in the primary file 39 is stored in accordance with the “file write information” linked to the indeterminate queue 431. By reading from the backup file 41 and writing the read data to the primary file 39, the data of the updated portion of the primary file 39 is restored (step F2). Then, the “file write information” used for restoration is removed (discarded) from the indeterminate queue 431 (step F3). This process is repeated until there is no “file write information” linked to the indeterminate queue 431.
[0055]
When a failure such as a system failure occurs in the primary computer 30 or the operating system that controls the primary computer 30, the process 35 is re-executed from the last checkpoint collected on the backup computer 40. In this case, the backup file 41 takes over the processing. FIG. 12 is a diagram showing how the backup file 41 takes over processing when a failure occurs.
[0056]
In this example, a process 35 operating on the primary computer 30 is a duplicated file having a 4-byte data “ABCD” (a primary file 39 on the primary computer 30 and a backup file 41 on the backup computer 40). On the other hand, “X” is written to the first byte at time t1 (1). As a result, the primary file 39 is updated immediately, but the backup file 41 is not updated immediately, and only “file write information” is stored.
[0057]
After this, a failure has occurred in the primary computer 30 at time t2 (2). In this case, the process 47 is re-executed on the backup computer 40 using a checkpoint taken on the backup computer 40. At this time, the process 47 continues processing using the backup file 41, but the primary file 39 has been updated at the time t1, but the backup file 41 has not yet been updated. In the re-execution of the process 47, the backup file 42 can be used as it is.
[0058]
If a backup file is disconnected due to a failure, a new backup file can be created after that, so that the initial state shown in FIG. 1 can be reproduced again, and recovery is possible even if a failure occurs again. Processing is possible.
[0059]
If the backup file is taken over due to a failure and the process is re-executed from the checkpoint, a new backup file is created with the backup file as the primary file, and the initial state as shown in FIG. Can be reproduced, and recovery processing can be performed even when a failure occurs again. There are the following two methods for creating the backup file again.
[0060]
(1) Save the update information and data of the primary file after detaching the backup file, and when reconnecting the backup file, reflect the update information and data of the primary file after detachment to the backup file .
[0061]
(2) Copy the primary file to the backup file. However, if the primary file continues to be updated during copying, the update information and data of the file are also reflected in the backup file at the same time as copying is started.
[0062]
Further, the following method combining these two methods is also effective.
[0063]
(3) Assuming that the separated backup file (or the primary file before the failure) is reconnected, the primary file after the backup file is detached so that the method (1) can be taken until a certain period of time elapses. Save the update information and data. When the predetermined time has elapsed, the method (1) is closed, the storage of the update information and data of the primary file after the backup file is cut off is stopped, and the method (2) is adopted. Also, when reconnecting with a file other than the disconnected backup file, saving the update information and data of the primary file after disconnecting the backup file is stopped and the method (2) is adopted.
[0064]
(Second Embodiment)
Next explained is the second embodiment of the invention. In the first embodiment, the duplexed computer system has been described. However, the present invention is also effective when applied to a file system on a computer that is not duplexed. Therefore, in this embodiment, a case where the present invention is applied to a file system on a computer that is not duplexed will be described as an example. FIG. 13 is a configuration diagram when the present invention is applied to a file system on a computer which is not duplicated. In this system, the computer is not duplicated, and only the computer 30 exists. The process 35 is executed on the computer 30 and updates the duplicated file of the primary file 39 and the backup file 41. That is, the primary file 39 and the backup file 41 are both arranged on the computer 30 and updated via the file system 36.
[0065]
The file system 36 on the computer 30 includes a primary file operation unit 38, a primary file restoration unit 37, a backup file operation unit 43, an unconfirmed queue 431, a confirmation queue 432, a backup file update unit 44, and a primary file restoration information reading unit 42. Contains.
[0066]
When the process 35 updates the duplicated file, it is performed via the primary file operation unit 38 and the backup file operation unit 43. When the process 35 performs a write on the duplicated file, the primary file 39 is updated as it is, but the backup file 41 is not updated, and “file write information” is transmitted via the backup file operation unit 43. It is stored in the indeterminate queue 431.
[0067]
When the process 35 collects checkpoints, the checkpoint control unit 31 issues an instruction to the checkpoint information storage unit 32 and the primary file operation unit 43. When receiving the checkpoint collection instruction, the checkpoint information storage unit 32 performs the address space and the processor context on the computer 30 (checkpoint information 34).
[0068]
On the other hand, when the primary file operation unit 38 receives a checkpoint collection instruction, the primary file operation unit 38 moves the “file write information” stored in the unconfirmed queue 431 to the confirmation queue 432 via the backup file operation unit 43. The “file write information” moved to the confirmation queue 432 is used for updating the backup file 41 by the backup file updating unit 44 after collecting the checkpoint, and discarded after the backup file 41 is updated. As a result, the write operation is performed on the backup file 41 in the same manner as performed on the primary file 39 after the checkpoint.
[0069]
When a failure such as an abort occurs in the process 35 and the process 35 is re-executed from the last checkpoint collected on the computer 30, the address space and the processor context are restored by the checkpoint information restoration unit 33 on the computer 30. The
[0070]
Regarding the file, the backup file 41 is not yet restored because the file after the checkpoint has not yet been updated since the “file write information” is only stored in the unconfirmed queue 431. However, since the primary file 39 has already been updated after the checkpoint, it needs to be restored. Therefore, based on the “file write information” stored in the indeterminate queue 431, the pre-update data of the primary file 39 is read from the backup file 41, and the read pre-update data is written to the primary file 39 to be restored. . Thereafter, the “file write information” stored in the unconfirmed queue 431 is discarded. If “file write information” is stored in the confirmation queue 432, the restoration process described above is started after the reflection of the “file write information” to the backup file 41 is completed.
[0071]
FIG. 14 shows a schematic configuration of a computer system to which this embodiment is applied. The system of the present embodiment operates only with the computer 30 and is not duplicated. A disk device 60 a and a disk device 60 b are connected to the computer 30. The process 35 is executed on the computer 30, and the files accessed by the process 35 are duplicated by the primary file 39 and the backup file 41, and are arranged in the disk device 60a and the disk device 60b, respectively. Yes.
[0072]
In this way, by applying the present invention, the state (checkpoint information) such as the address space of the process and the context of the processor is continuously saved while being periodically executed, and when a failure occurs, the last saved checkpoint In a system in which measures are taken against a failure by re-executing the process from the beginning, it is not necessary to once read the pre-update data from the file when updating the file, so that the file update performance is greatly improved.
[0073]
Note that the file management method described in the above embodiment can be stored and distributed in a recording medium such as a floppy disk, an optical disk, and a semiconductor memory as a program that can be executed by a computer.
[0074]
【The invention's effect】
As described above in detail, according to the present invention, when a process requests a file update, the update information indicating the update contents is acquired and stored, and only the primary file is immediately updated. After being collected, the update contents indicated by the saved update information are reflected in the backup file. For example, when a process is aborted, all the pre-update data corresponding to the data updated after the last collected checkpoint is read from the backup file based on the saved update information. The primary file is restored to the checkpoint using the read data before update, and the process is re-executed (the process can be re-executed using the backup file).
[0075]
In other words, in this computer system, when a file is updated as in the prior art, file recovery in the event of failure can be performed without waiting for normal processing to complete processing such as reading and saving data before update. As a result, the file update performance can be dramatically improved without degrading the reliability.
[Brief description of the drawings]
FIG. 1 is a conceptual diagram for explaining the basic principle of the present invention.
FIG. 2 is a diagram showing a system configuration of a computer system according to the first embodiment of the present invention.
FIG. 3 is an exemplary diagram showing a schematic configuration of a computer system to which the embodiment is applied.
FIG. 4 is a view showing a state in which a file is updated in the embodiment.
FIG. 5 is a view showing a state in which a primary file is restored when a failure occurs in the embodiment.
FIG. 6 is an exemplary flowchart illustrating a process flow when the file operation unit according to the embodiment is instructed to write a file.
FIG. 7 is an exemplary flowchart illustrating a processing flow when the file operation unit according to the embodiment is instructed to “collect checkpoints”.
FIG. 8 is an exemplary flowchart showing the flow of processing of a backup file update unit of the embodiment;
FIG. 9 is an exemplary flowchart showing the flow of processing when a failure such as an abort occurs in the process of the embodiment and the process is re-executed from the last checkpoint collected on the primary computer 30;
FIG. 10 is an exemplary flowchart showing a processing flow when the checkpoint information restoring unit on the primary computer of the embodiment is instructed to “restoration of address space and processor context”;
FIG. 11 is an exemplary flowchart illustrating a processing flow when the primary file restoring unit according to the embodiment is instructed to restore the primary file.
FIG. 12 is a view showing a state in which processing is taken over by a backup file when a failure according to the embodiment occurs.
FIG. 13 is a diagram showing a system configuration of a computer system according to a second embodiment of the present invention.
FIG. 14 is a diagram showing a schematic configuration of a computer system to which the embodiment is applied.
FIG. 15 shows that it is difficult to cancel writing to a previous file, so when writing to a file, before writing the data to the file, read and save the data before writing, and then The figure explaining the structure of the conventional system which performs the data writing to a file.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 ... Operation system, 11 ... Application program, 12 ... Jacket routine, 13 ... OS buffer cache, 14 ... Disk apparatus, 20 ... Standby system, 21 daemon, 211 ... Unconfirmed queue, 212 ... Confirm queue, 22 ... OS Buffer cache, 23 ... disk device, 30 ... primary computer, 31 ... checkpoint control unit, 32 ... checkpoint information storage unit, 33 ... checkpoint information restoration unit, 34 ... checkpoint information, 35 ... process, 36 ... file system 37 ... Primary file restoration unit, 38 ... Primary file operation unit, 39 ... Primary file, 40 ... Backup computer, 41 ... Backup file, 42 ... Primary file restoration information reading unit, 43 ... Backup File operation unit, 431 ... indeterminate queue, 432 ... confirmed queue, 44 ... backup file update unit, 45 ... checkpoint information, 46 ... checkpoint information restoration unit, 47 ... process, 50 ... network, 60a, 60b ... disk device .

Claims (16)

運用系および待機系の2つのコンピュータで2重化されたコンピュータシステムであって、中断されたプロセスの処理を再開始するための、アドレス空間とプロセッサコンテクストとを含むチェックポイント情報が保存されるチェックポイントを定期的に採取し、前記運用系および待機系双方のコンピュータ上に前記チェックポイント情報を保存するコンピュータシステムにおいて、
前記運用系のコンピュータ上で実行されるプロセスによって更新されるファイルを前記運用系および待機系双方のコンピュータで2重化して設けておき、
前記プロセスからファイルの更新が指示されたときに、その更新情報を前記待機系のコンピュータ上に保存して運用系のファイルのみを更新し、その更新が完了した時点でその更新の要求元に対し更新完了を通知することにより、前記アドレス空間とプロセッサコンテクストを含むチェックポイント情報に基づき最後に採取されたチェックポイントにおける状態にプロセスが復元された場合に必要となる、最後に採取されたチェックポイントにおける状態に待機系のファイルを維持する第1のファイル管理手段と、
前記チェックポイントが採取される毎に、前記更新情報に示される更新内容を前記待機系のファイルに反映させることにより、待機系のファイルを当該採取されたチェックポイントにおける状態に更新する第2のファイル管理手段と
を具備してなることを特徴とするコンピュータシステム。
Check in which checkpoint information including address space and processor context for restarting processing of an interrupted process is stored in a computer system that is duplicated by two computers of an active system and a standby system In a computer system that periodically collects points and stores the checkpoint information on both the active and standby computers,
A file to be updated by a process executed on the active computer is duplicated on both the active computer and the standby computer,
When an update of a file is instructed from the process, the update information is stored on the standby computer and only the active file is updated. When the update is completed, the update request source is By notifying the completion of the update , in the last collected checkpoint, which is necessary when the process is restored to the state at the last collected checkpoint based on the checkpoint information including the address space and the processor context. First file management means for maintaining a standby file in a state ;
For each of the checkpoint Ru are taken, the by the updates indicated in the update information to reflect the file of the standby system, a second file to update the file of the standby state at checkpoint that is the harvested A computer system comprising: management means.
前記更新情報を前記運用系のコンピュータ上にバッファリングしておき、前記チェックポイントの採取時点までに前記待機系のコンピュータに一括転送する手段をさらに具備してなることを特徴とする請求項1記載のコンピュータシステム。  2. The system according to claim 1, further comprising means for buffering the update information on the active computer and transferring the update information to the standby computer at a time until the checkpoint is collected. Computer system. 前記プロセスがアボートしたときに、最後のチェックポイント以降に実行されたファイルの更新に対する更新前のデータを前記更新情報により前記待機系のファイルから読み出し、前記運用系のファイルを前記チェックポイント時点の状態に復元した後、前記プロセスを前記チェックポイントから再実行する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  When the process aborts, the data before update for the file update executed after the last checkpoint is read from the standby file according to the update information, and the active file is in the state at the time of the checkpoint 3. The computer system according to claim 1, further comprising means for re-execution of the process from the checkpoint after the restoration. 前記プロセスがアボートしたときに、最後のチェックポイント以降に保存された更新情報を削除し、前記チェックポイント以前の更新情報により示される更新を前記待機系のファイルに反映させた後、前記プロセスを前記待機系のコンピュータ上で前記チェックポイントから再実行する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  When the process is aborted, the update information stored after the last checkpoint is deleted, and the update indicated by the update information before the checkpoint is reflected in the standby file, and then the process is 3. The computer system according to claim 1, further comprising means for re-execution from the checkpoint on a standby computer. 前記運用系のコンピュータまたはこの運用系のコンピュータを制御するオペレーティングシステムに障害が発生したときに、最後のチェックポイント以降に保存された更新情報を削除し、前記チェックポイント以前の更新情報により示される更新を前記待機系のファイルに反映させた後、前記プロセスを前記待機系のコンピュータ上で前記チェックポイントから再実行する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  When a failure occurs in the active computer or the operating system that controls the active computer, the update information stored after the last checkpoint is deleted, and the update indicated by the update information before the checkpoint 3. The computer system according to claim 1, further comprising means for re-executing the process from the checkpoint on the standby computer after reflecting the file in the standby file. . 前記待機系のコンピュータまたはこの待機系のコンピュータを制御するオペレーティングシステムに障害が発生したときに、前記チェックポイントおよび更新情報の待機系のコンピュータへの転送を停止する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  And a means for stopping transfer of the checkpoint and update information to the standby computer when a failure occurs in the standby computer or an operating system that controls the standby computer. The computer system according to claim 1 or 2, characterized in that 前記運用系のファイルに障害が発生したときに、最後のチェックポイント以降に保存された更新情報を削除し、前記チェックポイント以前の更新情報により示される更新を前記待機系のファイルに反映させた後、前記プロセスを前記待機系のコンピュータ上で前記チェックポイントから再実行する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  After a failure occurs in the active file, the update information stored after the last checkpoint is deleted, and the update indicated by the update information before the checkpoint is reflected in the standby file 3. The computer system according to claim 1, further comprising means for re-executing the process from the checkpoint on the standby computer. 前記待機系のファイルに障害が発生したときに、前記チェックポイントおよび更新情報の待機系のコンピュータへの転送を停止する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  3. The computer according to claim 1, further comprising means for stopping transfer of the checkpoint and update information to the standby computer when a failure occurs in the standby file. system. 待機系のファイルの切り離しが行なわれたときに、第3のコンピュータ上に新たに待機系のファイルを確保する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  3. The computer system according to claim 1, further comprising means for newly securing a standby file on the third computer when the standby file is disconnected. 待機系のファイルを用いて前記プロセスの前記チェックポイントからの再実行が行なわれたときに、前記待機系のファイルを運用系に切り替えて、前記運用系のコンピュータ上に新たに待機系のファイルを確保する手段をさらに具備してなることを特徴とする請求項1または2記載のコンピュータシステム。  When the process is re-executed from the checkpoint using the standby file, the standby file is switched to the active system, and a new standby file is created on the active computer. 3. The computer system according to claim 1, further comprising means for ensuring. 運用系および待機系の2つのコンピュータで2重化され、中断された処理を再開始するための、アドレス空間とプロセッサコンテクストとを含むチェックポイント情報が保存されるチェックポイントを定期的に採取して前記運用系および待機系双方のコンピュータ上に前記チェックポイント情報を保存し、前記運用系のコンピュータ上で実行されるプロセスによって更新されるファイルを前記運用系および待機系双方のコンピュータ上で2重化して設けたコンピュータシステムのファイル管理方法において、
前記プロセスからファイルの更新が指示されたときに、その更新情報を前記待機系のコンピュータ上に保存して運用系のファイルのみを更新し、その更新が完了した時点でその更新の要求元に対し更新完了を通知することにより、前記アドレス空間とプロセッサコンテクストを含むチェックポイント情報に基づき最後に採取されたチェックポイントにおける状態にプロセスが復元された場合に必要となる、最後に採取されたチェックポイントにおける状態に待機系のファイルを維持する第1のファイル管理ステップと、
前記チェックポイントが採取される毎に、前記更新情報に示される更新内容を前記待機系のファイルに反映させることにより、待機系のファイルを当該採取されたチェックポイントにおける状態に更新する第2のファイル管理ステップと
を具備してなることを特徴とするファイル管理方法。
Periodically collect checkpoints where checkpoint information including address space and processor context is stored in order to restart processing that has been duplicated by two computers, the active system and the standby system. The checkpoint information is stored on both the active and standby computers, and a file updated by a process executed on the active computer is duplicated on both the active and standby computers. In the computer system file management method provided
When an update of a file is instructed from the process, the update information is stored on the standby computer and only the active file is updated. When the update is completed, the update request source is By notifying the completion of the update , in the last collected checkpoint, which is necessary when the process is restored to the state at the last collected checkpoint based on the checkpoint information including the address space and the processor context. A first file management step for maintaining a standby file in a state ;
For each of the checkpoint Ru are taken, the by the updates indicated in the update information to reflect the file of the standby system, a second file to update the file of the standby state at checkpoint that is the harvested A file management method comprising: a management step.
最後のチェックポイント以降に実行されたファイルの更新に対する更新前のデータを前記更新情報により前記待機系のファイルから読み出し、前記運用系のファイルを前記チェックポイント時点の状態に復元した後、前記プロセスを前記チェックポイントから再実行するステップをさらに備えたことを特徴とする請求項11記載のファイル管理方法。  Data before update for a file update executed after the last checkpoint is read from the standby file according to the update information, and the active file is restored to the state at the time of the checkpoint. 12. The file management method according to claim 11, further comprising a step of re-execution from the checkpoint. 最後のチェックポイント以降に保存された更新情報を削除し、前記チェックポイント以前の更新情報により示される更新を前記待機系のファイルに反映させた後、前記プロセスを前記待機系のコンピュータ上で前記チェックポイントから再実行するステップをさらに備えたことを特徴とする請求項11記載のファイル管理方法。  The update information stored after the last checkpoint is deleted, the update indicated by the update information before the checkpoint is reflected in the standby file, and then the process is checked on the standby computer. 12. The file management method according to claim 11, further comprising a step of re-execution from the point. 運用系および待機系の2つのコンピュータで2重化され、中断された処理を再開始するための、アドレス空間とプロセッサコンテクストとを含むチェックポイント情報が保存されるチェックポイントを定期的に採取して前記運用系および待機系双方のコンピュータ上に前記チェックポイント情報を保存し、前記運用系のコンピュータ上で実行されるプロセスによって更新されるファイルを前記運用系および待機系双方のコンピュータ上で多重化して設けたコンピュータシステムのファイルを管理するためのプログラムであって、
前記プロセスからファイルの更新が指示されたときに、その更新情報を前記待機系のコンピュータ上に保存して運用系のファイルのみを更新し、その更新が完了した時点でその更新の要求元に対して更新完了を通知することにより、前記アドレス空間とプロセッサコンテクストを含むチェックポイント情報に基づき最後に採取されたチェックポイントにおける状態にプロセスが復元された場合に必要となる、最後に採取されたチェックポイントにおける状態に待機系のファイルを維持し、
前記チェックポイントが採取される毎に、前記更新情報に示される更新内容を前記待機系のファイルに反映させることにより、待機系のファイルを当該採取されたチェックポイントにおける状態に更新する
ように前記コンピュータを動作させるためのプログラムを格納したコンピュータ読取可能な記憶媒体。
Periodically collect checkpoints where checkpoint information including address space and processor context is stored in order to restart processing that has been duplicated by two computers, the active system and the standby system. The checkpoint information is stored on both the active and standby computers, and a file updated by a process executed on the active computer is multiplexed on both the active and standby computers. A program for managing files of a provided computer system,
When an update of a file is instructed from the process, the update information is stored on the standby computer and only the active file is updated. When the update is completed, the update request source is The last collected checkpoint is required when the process is restored to the state at the last collected checkpoint based on the checkpoint information including the address space and processor context. Keep the standby file in the state
For each of the checkpoint Ru are taken, the by reflecting the updated contents indicated in the update information file of the standby system, the file in the standby system to update the state of the checkpoint which is the sampled computer A computer-readable storage medium storing a program for operating the computer.
前記プログラムは、最後のチェックポイント以降に実行されたファイルの更新に対する更新前のデータを前記更新情報により前記待機系のファイルから読み出し、前記運用系のファイルを前記チェックポイント時点の状態に復元した後、前記プロセスを前記チェックポイントから再実行するように前記コンピュータをさらに動作させる請求項14記載のコンピュータ読取可能な記憶媒体。  The program reads the data before update for the file update executed after the last checkpoint from the standby file using the update information, and restores the active file to the state at the time of the checkpoint. The computer readable storage medium of claim 14, further operating the computer to re-execute the process from the checkpoint. 前記プログラムは、最後のチェックポイント以降に保存された更新情報を削除し、前記チェックポイント以前の更新情報により示される更新を前記待機系のファイルに反映させた後、前記プロセスを前記待機系のコンピュータ上で前記チェックポイントから再実行するように前記コンピュータをさらに動作させる請求項14記載のコンピュータ読取可能な記憶媒体。  The program deletes update information stored after the last checkpoint, reflects the update indicated by the update information before the checkpoint in the standby file, and then transfers the process to the standby computer. The computer readable storage medium of claim 14, further operating the computer to re-execute from the checkpoint above.
JP23293097A 1996-09-03 1997-08-28 Computer system and file management method Expired - Fee Related JP4095139B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23293097A JP4095139B2 (en) 1996-09-03 1997-08-28 Computer system and file management method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-233021 1996-09-03
JP23302196 1996-09-03
JP23293097A JP4095139B2 (en) 1996-09-03 1997-08-28 Computer system and file management method

Publications (2)

Publication Number Publication Date
JPH10133927A JPH10133927A (en) 1998-05-22
JP4095139B2 true JP4095139B2 (en) 2008-06-04

Family

ID=26530741

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23293097A Expired - Fee Related JP4095139B2 (en) 1996-09-03 1997-08-28 Computer system and file management method

Country Status (1)

Country Link
JP (1) JP4095139B2 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6427213B1 (en) * 1998-11-16 2002-07-30 Lucent Technologies Inc. Apparatus, method and system for file synchronization for a fault tolerate network
JP2000163276A (en) * 1998-12-01 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> Network wide spare system
JP4115060B2 (en) 2000-02-02 2008-07-09 株式会社日立製作所 Data recovery method for information processing system and disk subsystem
JP4078039B2 (en) * 2001-03-21 2008-04-23 株式会社東芝 Snapshot image generation management method and generation management device
JP4565860B2 (en) * 2004-02-27 2010-10-20 日立コンピュータ機器株式会社 Data backup system
KR100800044B1 (en) 2006-08-04 2008-01-31 한국과학기술정보연구원 Method for automatic checkpoint file management
US8436735B2 (en) 2007-02-12 2013-05-07 Radio Systems Corporation System for detecting information regarding an animal and communicating the information to a remote location
JP5759203B2 (en) * 2011-02-25 2015-08-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Asynchronous checkpoint acquisition and recovery from iterative parallel computer computations
JP5567069B2 (en) * 2012-06-11 2014-08-06 株式会社三菱東京Ufj銀行 Database server
JP5820902B2 (en) * 2014-04-25 2015-11-24 株式会社三菱東京Ufj銀行 Database server

Also Published As

Publication number Publication date
JPH10133927A (en) 1998-05-22

Similar Documents

Publication Publication Date Title
EP0827079B1 (en) Checkpoint computer system
US7031986B2 (en) Database system with backup and recovery mechanisms
US7925633B2 (en) Disaster recovery system suitable for database system
US7197615B2 (en) Remote copy system maintaining consistency
JP4301849B2 (en) Information processing method and its execution system, its processing program, disaster recovery method and system, storage device for executing the processing, and its control processing method
US20030097611A1 (en) Method for the acceleration and simplification of file system logging techniques using storage device snapshots
US8028192B1 (en) Method and system for rapid failback of a computer system in a disaster recovery environment
US20070180208A1 (en) Preventive measure against data overflow from differential volume in differential remote copy
JPH05210555A (en) Method and device for zero time data-backup-copy
JP4095139B2 (en) Computer system and file management method
EP0881569B1 (en) File system and file management method which realize distributed replication in system having shared type raid
US20090248760A1 (en) Backup method of computer system
US20030088814A1 (en) Method and apparatus for logging file system operations
US6076095A (en) Method of one system of a multisystem environment taking over log entries owned by another system
JPH06139087A (en) Check point restart system
JP4428887B2 (en) Database system
Strom et al. A recoverable object store
JP3919274B2 (en) Computer system having state recording reproduction function and computer-readable recording medium recording state recording reproduction program
KR100365891B1 (en) Backup/recovery Apparatus and method for non-log processing of real-time main memory database system
JPH0991183A (en) Data base recovery device
CN114253765A (en) Data recovery method and related equipment
JPH0833859B2 (en) Multiple subsystem type online system
JPH0827753B2 (en) How to get checkpoint dump of online system
JP2569063B2 (en) Failure recovery method for complex subsystem type online system.
JP2609625B2 (en) Failure recovery method for complex subsystem type distributed database system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071211

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080205

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080307

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110314

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110314

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120314

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees