JPH0773087A - データ処理システムにおけるファイル状態の回復方法 - Google Patents

データ処理システムにおけるファイル状態の回復方法

Info

Publication number
JPH0773087A
JPH0773087A JP3089000A JP8900091A JPH0773087A JP H0773087 A JPH0773087 A JP H0773087A JP 3089000 A JP3089000 A JP 3089000A JP 8900091 A JP8900091 A JP 8900091A JP H0773087 A JPH0773087 A JP H0773087A
Authority
JP
Japan
Prior art keywords
file
transaction
image
volatile memory
data
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.)
Granted
Application number
JP3089000A
Other languages
English (en)
Other versions
JP2505070B2 (ja
Inventor
Jr Alexander H Frey
アレクサンダー・エイチ・フレイ・ジュニア
Richard C Mosteller
リチャード・シー・モステラー
Joel M Gould
ジョエル・エム・ゴールド
Noah R Mendelsohn
ノア・アール・メンデルソン
James Perchik
ジェムス・パーチク
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0773087A publication Critical patent/JPH0773087A/ja
Application granted granted Critical
Publication of JP2505070B2 publication Critical patent/JP2505070B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery

Abstract

(57)【要約】 【目的】この発明の方法の目的は、ファイル・トランザ
クションの間に生じる不具合から復元することにある。 【構成】この発明の方法は:原子ファイル・トランザク
ションのレコードを保持するためにログ・ファイルを準
備するステップ;ファイル・トランザクションの間に得
られる古いデータ・イメージおよび新規なデータ・イメ
ージを揮発性のメモリに記録するステップ;不揮発性の
メモリに含まれているログ・ファイルの一部に先行のイ
メージを書き込むステップ;および不具合が生じたとき
に、不揮発性のメモリ内のログ・ファイルを用いて能動
的なファイル・トランザクションの状態を決定して、そ
の完了に先だって不具合が生じたときには該能動的なト
ランザクションをロールバックするステップ;を含んで
なるものである。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、並列計算ネットワー
クのためのソフトウエア動作システムに関するものであ
り、より詳細にいえば、並列計算ネットワークのための
ユーザには不可視のファイル・ベース式トランザクショ
ンシステムに関するものである。
【0002】
【従来の技術】ある種の大規模なデータ処理システムに
おいては、多くの独立したコンピュータ/ディスク・シ
ステム(”ノード”と呼ばれる)が用いられており、問
題の個別の部分において並列して動作するようにされて
いる。このようなシステムにおいては、ノードでの作業
の負荷のバランスをとるため、および、複数のノードで
の不具合があったときの、重大なデータのロスに対する
保護のために、データ・ファイルがノードを通して分散
されていることがある。全てのノードは互いに連続的に
相互作用をしており、また、データ処理動作が首尾良く
完了する限りでは相互に依存している。
【0003】先行技術ではこのようなシステムが明示さ
れており、また、ノード間でのコントロール、および、
不具合があったときのデータ・ロスに対する保護のため
に、種々の方法が説明されている。米国特許第4,22
8,496号で説明されているマルチ処理システムにお
いては、メモリ・マッピングによって、個別のノードの
メモリ・モジュールに対する保護機能の生成が可能にさ
れている。また、このシステムには、ビット・エラーの
検出および修正のための、複雑なパリティ保護スキーム
も含まれている。
【0004】米国特許第4,412,285号で説明さ
れているマルチ処理システムにおいては、ノード間での
処理状態を更新するために、種々のプロトコルが採用さ
れている。この特許においては、個別のノードでの不具
合についての能力のためには、殆ど考慮がなされていな
い。
【0005】より低いコストとより可能性のあるプロセ
ッサとによる利用可能性を通じて、並列計算システムが
多く用いられてきていることにつれて、ノードでの不具
合の問題がそれだけ大きく注意をひいてきている。この
ことは、全体的なシステムのソフトウエアの完全な再ロ
ードの必要性を回避しながら、システムの処理状態を再
設定することと該システムを再起動することとの困難性
に由来している。このことに関しては、”アトミック
(原子)”としてのある種のシステムのトランザクショ
ンを規定するための注意が与えられて、全てのアクショ
ンが完了するまで、このような全てのアクションについ
てのレコードがトランザクション内に保持されることが
確実にされる。アトミック・トランザクションを含んで
いるアクションは、トランザクション管理システムを通
じてトラッキングされる。このシステムには、トランザ
クションを処理する間に実行される各アクションのレコ
ードまたはログが含まれていて、トランザクションが完
了したか、または完了しなかったかのいずれかの時点
を、システムが知ることができるようにされる。
【0006】米国特許第4,139,336号にはトラ
ンザクション・ベース式のシステムが説明されており、
また、これにはユーザの利用可能なキーボード・エント
リ・デバイスが用いられている。”クローズ(clos
e)”にならない各トランザクションは、中央コンピュ
ータがトランザクションの状態を再初期化することがで
きるような、相互作用状態メッセージを生じさせる。ト
ランザクションの処理の間のシステム要素の失敗に対し
ては、考慮がなされていない。
【0007】米国特許第4,819,159号に示され
ている失敗許容式の並列計算システムでは、トランザク
ション・ベース式の処理が採用されている。この米国特
許第4,819,159号のシステムにおいては、トラ
ンザクションが”ユーザ・プログラムまたはプロセス”
のレベルにおいて扱われており、システムに関する限り
は、トランザクションは巨視的(macroscopi
c)なベースで考慮されている。このトランザクション
・システムにおいては、先行イメージ(pre−ima
ge)のデータおよび後続イメージ(subseque
nt−image)のデータがトランザクション・ログ
に記憶される。トランザクションの間に中止が生じたと
きには、利用可能な先行イメージのデータにより、トラ
ンザクションの失敗に先だって存在した状態に、システ
ムをリセットすることができる。
【0008】これについて、この発明の発明者が知って
いる先行技術のトランザクション管理システムは、主と
して、計算システム内で生起する比較的に巨視的な機能
に対して適用されている。このために、このようなトラ
ンザクション・ログおよびそれらが実行する機能は、主
としてアプリケーション・システム・プログラマのコン
トロールの下にあって、該アプリケーション・システム
・プログラマに対して透過性のある態様で、オペレーシ
ョン・システムによって遂行されるべき、システムの”
巨視的な”アクション内でのトランザクション・ログ操
作をすることはできなかった。このために、先行技術の
巨視的なトランザクションが”ロールバック”されたと
きには、そのロールバック処理の間に、適正に完了して
いた多くの巨視的な機能が廃棄された。このようなロー
ルバックでは処理タイムの不要なロスが生じており、ま
た、並列プロセッサにおいては、並列処理ノードを通し
てリップル効果を生じていた。
【0009】巨視的なデータの完全性を確実にするトラ
ンザクション・システムの使用にも拘わらず、ファイル
・ベース式システムの一部に不具合があったときには、
該ファイル・システムの再構築および再起動のための能
力が極めて複雑なものになり得る。例えば、UNIXオ
ペレーティング・システムを用いているシステムにおい
ては、そのファイル・システムの再構築には、その完了
に時間がかかるような、完全なファイル・システムの一
貫性のチェックを遂行することが含まれている。このよ
うなチェックに含まれていることは、ディスク・ディレ
クトリ、ファイル・テーブル、フリー・データ・ブロッ
ク・リスト、他のファイルに対するファイル内のポイン
タ等についての一貫性を決定することである。それらの
比較には、詳細でありかつ時間を浪費するデータの扱い
が含まれており、システムをその不具合から回復させる
上での著しい妨害になるものである。
【0010】時間を浪費する一貫性のチェックを部分的
に回避するために、IBM社によって販売されているA
IXシステムでは、データベース・システムに共通する
ある種のログ操作技術が用いられている。(Chang
et al., ”Evolution of st
orage Facilities in theAI
X System”, IBM RISC Syste
m/6000 Technology, IBM do
cument SA23−2619, pp. 138
−142, 1990 を参照。)このAIXシステム
においてはログ操作”メタデータ(metadat
a)”に限定されているけれども、ファイルの内容自体
をログすることはなく、また、AIXシステムが分散し
たファイル・システムに関係することもない。
【0011】Mueller et al., ”A
Nested Transaction Mechan
ism for LOCUS”, ACM Opera
ting System Review, Proce
edings of 9th ACM Symposi
um on Operating SystemPri
nciples, pp. 71−89 (198
3)、および、”The Locus Distrib
uted System Architectur
e”, Popek et al., MIT Pre
ss, pp. 46−48, (1985)には、フ
ァイル構造に対する別の技術が説明されている。ここで
説明されている”シャドウ・ページング(shadow
paging)”においては、イメージ・データの2
個のコピーが常に作成されていて、新規なイメージのコ
ピーを用いるトランザクションが首尾良く完了するまで
は、起点データのコピーが破棄されることはない。
【0012】Lindsay et al., ”Co
mputation and Communicati
on in R*: A Distributed D
atabase Manager”, ACM Tra
nsactions onComputer Syst
ems, Vol. 2, No. 1, Feb.
1984, pp. 24−38 には、 誤動作の回復
能力を有する別の分散型データベース管理システムにつ
いて検討されている。このLindsayet al.
のデータベースによれば、トランザクションの結果につ
いて、トランザクションのあらゆる箇所において同じ結
論になることが確実にされるように、分散型のトランザ
クション・システムおよびネストにされた形式の2相コ
ミット・プロトコルが採用されている。Lindsay
et al.によって採用されている特定のログ管理
方策についての論文には、”巨視的な”トランザクショ
ンにどのようにして対処するか、または、対処するかど
うかについて言及していない。
【0013】
【発明が解決しようとする課題】従って、この発明の目
的は、並列計算システムにおける分散型ファイル記憶シ
ステムのための、改良されたトランザクションのログ操
作およびコントロール・システムを提供することにあ
る。
【0014】この発明の別の目的は、分散型ファイル・
システムにおける巨視的なレベルでの動作のための、改
良されたトランザクションのログ操作およびコントロー
ル・システムを提供することにある。
【0015】この発明の更に別の目的は、アプリケーシ
ョン・プログラマには不可視である分散型ファイル・シ
ステムにおける、トランザクションのログ操作およびコ
ントロール・システムを提供することにある。
【0016】この発明の別の目的は、システムに不具合
があったときに分散型ファイル・システムの一貫性 (co
nsistency)を確実にし、これによってファイル・システ
ムの迅速な回復をするようにした、トランザクションの
ログ操作およびコントロール・システムを提供すること
にある。
【0017】
【課題を解決するための手段】揮発性メモリおよび不揮
発性メモリの双方、および、ユーザによるアクセスが不
能なファイル・コントロール・ソフトウエア・システム
を含んでなるデータ処理システムが説明されている。フ
ァイル・トランザクションの間に生じる不具合から回復
するために、このデータ処理システムによって用いられ
る方法には:ファイル・トランザクションのレコードを
保持するためのログ・ファイルを準備するステップ;ロ
グ・ファイルの不揮発性メモリ内に、ファイル・トラン
ザクションの間に得られる古いデータのイメージと新規
なデータのイメージとを記録するステップ;該古いデー
タのイメージと新規なデータのイメージとを、不揮発性
メモリに含まれているログ・ファイルの一部に書き込む
ステップであって、古いデータのイメージが不揮発性メ
モリ内に存在することが確実にされた後で、新規なデー
タのイメージを書き込むようにされる前記のステップ;
および不具合があったときに、不揮発性メモリ内にある
ログ・ファイルを用いて能動的なファイル・トランザク
ションの状態を決定し、そして、その完了に先だって不
具合が生じたときには該能動的なファイル・トランザク
ションのロールバックを行い、更に、完了したものとし
てマークされているトランザクションに対して、全ての
ファイル・システムのアクションが実際に生起したこと
を確実にするステップ;が含まれている。
【0018】
【実施例】図1を参照すると、拘束の通信リンクによっ
て相互に接続された多くの”ノード”10からなる並列
計算システムが示されている。各ノード10は、プロセ
ッサと揮発性メモリおよび不揮発性メモリ(例えば、デ
ィスク・メモリ)の双方とからなっている。これは独立
して動作するものであり、また、通信ネットワークを介
して他のノードと相互作用をするものである。
【0019】図1に示されているものは、3次元のトー
ラスのトポロジであって、各ボックス10はノードを表
しており、また、各ライン12は通信リンクを表してい
る。並列計算システムの第1のプレーン13が示されて
いるが、これは下方のプレーン14および15の上に配
置されている。各ノードには2本の付加的なリンク(図
示されない)が設けられており、その一方は2次元トー
ラス上の対向するノードに向かい、他の一方は2次元ト
ーラス下の対向するノードに向かっている。
【0020】図2において示されているように、各ノー
ドに含まれたマイクロ・プロセッサ16は、バス構造1
8を介してノードの他の要素と相互に接続されている。
バッファ・メモリ20、デバイス・アダプタ22、およ
び、I/Oアダプタおよびリンク・ルータ24もバス1
8に接続されている。ディスク・ファイル26はデバイ
ス・アダプタ22に接続されてコントロールされてお
り、これによってノードに対する主要な不揮発性メモリ
が設けられている。よく知られているように、マイクロ
・プロセッサ16には種々のキャッシュ・メモリを含む
実質的な揮発性メモリ構造のものが含まれており、その
中のあるものはこの発明において用いられている。
【0021】図1および図2の並列計算システムの各ノ
ードにおいては、よく知られた多様をもって、アプリケ
ーション・レベルおよびオペレーティング・システム・
レベルの双方でのソフトウエアが採用されている。図3
に示されているように、ユーザのアクセスは、このソフ
トウエアのアプリケーション部分を通してなされる。そ
のオペレーティング・システム部分は明確なプログラマ
・インタフェースを通じての直接のユーザ・アクセスに
限定されており、また、当該オペレーティング・システ
ムの一部として、ファイル・システムおよびトランザク
ションのログ操作部分が含まれている。各ノードには所
有するソフトウエア・システムが設けられており、ま
た、独立のファイル・システムおよびトランザクション
のログ操作システムが備えられている。ソフトウエアお
よびデータの双方はファイルをベースとして組成されて
おり、各ファイルにはある所定の長さの1個または複数
個のメモリ・ブロックが設けられている。各ブロックは
一般的にはバイト組成のものであって、例えば、1個の
ブロックには1024バイトが含まれている。1個のフ
ァイルを構成するものは、単一のブロックまたは多数の
ブロックである。
【0022】ユーザの視角からすれば、ある1個のファ
イルはいずれのノードからも単一で一様のエンティティ
として見える。各ファイルはシステム・ワイドな所有す
るポインタを通してアクセスされる。当該ポインタの使
用を通すことにより、プロセスまたはアプリケーション
は、ディレクトリを介して、ファイルに対応する更に別
の情報を探索することが可能にされる。
【0023】図1のシステムで用いられている分散型の
ファイル・システムにおいては、複数のファイル・ブロ
ックが複数のノードを通して分散されている。この構成
により、その実行能力の改良および増強された不具合の
回復能力が付与される。図1に示されているようなシス
テムにおいては、幾つかのタイプの不具合が生じる可能
性がある。ここで、該システムは自動的に回復して、そ
のファイル・システムを回復することができねばならな
い。このことは、オペレーティング・システムに内在し
て、アプリケーション・プログラマには利用不能なファ
イル・システムに関して特に重要なことである。局部的
なまた分散されたファイル・システムの一貫性を維持す
るために、この発明においてはトランザクション・ログ
・システムが用いられている。
【0024】トランザクションは一連のアクションから
なる作業の単位として規定される。ここで、そのアクシ
ョンの全てが完了されねばならないか、または、全体の
トランザクションが中止されねばならない。ある1個の
ファイル・システムにおけるトランザクションの例は次
の通りである。即ち、ファイルを生成させること;ファ
イルに対してディスク上でのスペースを割り当てるこ
と;パリティで保護されているデータ・ブロックの更新
をすること;等である。
【0025】それらが遂行されるにつれて、全てのトラ
ンザクションにおける進行の軌跡を保持するために、ト
ランザクションのログ・ファイルが用いられている。ト
ランザクションが完了するまで、ログ・ファイルには、
該トランザクションの開始に先だって、システムの状態
を再構築するのに十分な情報が含まれている。概念的に
いえば、ログ・ファイルは増大を続けるけれども、実際
には、”ログ・スイッチ”と呼ばれるプロセスにおいて
周期的に短くされている。
【0026】ログ・スイッチが生じたときには、古い、
完了したトランザクションについての情報が破棄され
て、ファイルにおいてより多くの空間を作るようにされ
る。ディスク・メモリにおける固定の領域はログ・ファ
イルのために予め割り当てられている。ほぼ通常的に、
ログ・ファイルの一部はマイクロ・プロセッサの揮発性
メモリ内にあり、これに対して、他の部分はディスクに
書き込まれている。ここで留意されるべきことは、ログ
・ファイルが(これもディスク上で保持され、実際のフ
ァイル・データに含まれている)”ベース”データ・フ
ァイルから切り離されていることである。以下で認めら
れるように、システムの動作中の時点においては、これ
も”ベース”データ・ファイル内に存在するファイル・
データのコピーが含まれている。
【0027】上述されたように、ある1個のトランザク
ションは作業のある1個のアトミック・単位である。そ
れに含まれていることは、”トランザクションの開始”
なる動作をもってはじまり;”コミット”または”ロー
ルバック”なる動作で継続し;そして、”トランザクシ
ョンの終了”をもって終るような、特定された順序の動
作を実行することである。そのコミット動作において
は、トランザクションの首尾の良い完了が信号される。
トランザクションの完了が不首尾であった場合にはロー
ルバックが用いられる。この場合においては、(ログに
書き込まれている”トランザクションの終了”に先だっ
て)システムがトランザクションの開始に先だつ初期状
態に戻される。
【0028】実際のトランザクションのトラックを維持
するために、各トランザクションが所有する識別数(T
ID)に割り当てられる。ある1個のノードにおいて
は、現に進行している全てのトランザクションをリスト
にする”トランザクション・テーブル”として、揮発性
メモリの領域が指定される。トランザクション・テーブ
ル内の各エントリはトランザクション・レコードとして
参照されるものであって、そのフォーマットは図4に示
されている。TIDに加えて、このトランザクション・
レコードにふくまれている”タイプ”フィールドでは、
トランザクションで遂行されるべき一連のアクション
(更新パリティ、ファイルのオープン、不具合からの回
復等)が規定されている。”状態(ステート)”フィー
ルドで指示されることは、トランザクションが進行中で
ある、コミットである、または、ロールバックであるの
いずれかである。”オーナー”フィールドで指示される
ことは、トランザクションの助けを求めているノードで
ある。”パーティシパント”フィールドはトランザクシ
ョンにおいて関係のある他のノードのリストであって、
これに含まれていることは、関係のあるノードのノード
数、関係のあるものから予期される応答、関係のあるも
のからの認知を受け入れたかどうかを示すためのフラ
グ、および、次のデータ構造に対するポインタである。
【0029】トランザクションには、局部型および分散
型の2個のタイプがある。局部型のトランザクションに
は単一のノードだけが含まれており、これに対して、分
散型のトランザクションでは幾つの関係のあるノードの
共同動作が必要とされる。
【0030】上述されたように、トランザクション機能
の臨界的なものは、全体的なトランザクションが完了す
るまでに、トランザクション内での個別のアクションの
トラックを保持するログ・ファイルである。各ノードに
維持されている所有する独立したログ・ファイルの識別
子は、ノードのディスク上での指示された領域内に記憶
されており、また、その揮発性メモリにも記憶されてい
る。
【0031】図5に示されたログ・ファイル・エントリ
には、3個の主要なフィールドが含まれている。その”
ヘッダ”フィールドは、図4におけるトランザクション
・レコードのコピーである。その”トランザクション・
データ”は、トランザクションを元に戻す(undo)
ために必要なデータである。例えば、ある1個のデータ
・エントリが修正されているときには、現在のまたは”
古い(old)”データのイメージがトランザクション
・データ・フィールドに記憶されて、”新規な(ne
w)”または”修正された(modified)”デー
タがディスクに書き込まれるのに先だって不具合が生じ
たときに、起点または”古い(old)”状態のデータ
に関して情報が利用可能であるようにされる。新規な
(new)”または”修正された(modifie
d)”データも、ベース・データがディスク上で修正さ
れるのに先だってトランザクションが”コミットされる
(committed)”ことができるように、トラン
ザクション・データ・フィールド内に含まれることがで
きる。最後に、”テール”は小さい非ゼロ値であって、
全体的なログ・エントリが書き込まれたことを検証する
ために用いられる。
【0032】トランザクションに複数のノードが含まれ
ているとき、その処理時間の間に、助けを求めているノ
ードにおいては、トランザクションの該当の部分を達成
するために、関係のあるノードによって用いられるべ
き、関係のあるトランザクション・レコードのアセンブ
ル操作がなされる。当該レコードは図6に示されてお
り、これに含まれているものは、関係のあるノードの指
示、所有するノードの指示、トランザクションのタイプ
の指定、TID、および、関係のあるノードのトランザ
クション部分の遂行に含まれているパラメータである。
例えば、パリティの更新がトランザクションのタイプで
あるときには、そのパラメータ・フィールドに含まれる
データは、パリティの更新をもたらすための古いデータ
と新規なデータとの排他的ORの結果、新規なデータ・
ブロックのコピー、新規なデータ・ブロックの数、およ
び、データ・ブロックのサイズである。
【0033】この発明のトランザクション・システムに
おいては、初期のファイル・システムのデータ状態を再
設定することにより、ノードを不具合のところから回復
させることができる。ノードが不具合になったときに
は、揮発性メモリの内容が失われることが多い。しかし
ながら、(不揮発性の)ディスクに書き込まれたデータ
は保存されており、ノードが再び機能を果たすようにな
ったときには回復することができる。ディスクに書き込
まれているトランザクション・ログの部分によれば、不
具合が生じたときに、いずれのトランザクションが完了
しているか、または、処理中であったかを、ファイル・
システムが知ることができる。
【0034】不具合のあった後でファイル・システムが
データの一貫性を維持することができるために、”現在
の水準(current water level)”
および”ファイル・エンド”(EOF)ポインタと呼ば
れる一対の変数が設けられる。現在の水準なる変数は、
ディスクに書き込まれたトランザクション・ログ・ファ
イルの該当の部分におけるデータのバイト数を示すもの
である。ログ・ファイルの付加的な部分がディスクに書
き込まれると、この現在の水準なる変数はこれに応じて
更新される。EOFポインタなる変数は、全体としての
ログ・ファイル内のバイト数(ディスク上および揮発性
メモリ内の双方にあるもの)を示すものである。
【0035】現在の水準およびEOFポインタなる変数
は以下のようにして用いられる。トランザクションが開
始され、(図5に示されているような)ログ・エントリ
がアセンブルされて揮発性のメモリに記憶されたときに
は、古いデータのイメージが、該エントリのトランザク
ション・データ・フィールドの部分に存在する。揮発性
メモリ内の当該ログ・エントリに関連しているものは、
EOFポインタの値(エントリがアセンブルされたとき
のログ・ファイルにおけるバイトの全体数)である。
【0036】古いデータ・イメージのログ・エントリの
生成に続けて、ノードにおいては、トランザクションの
達成に必要なアクションが実行される。そして、古いデ
ータ・イメージが修正されるべきものであるとすると、
トランザクションのデータに対する新規なデータ・イメ
ージを含む新規なバッファが、揮発性のメモリ内に構築
される。この新規なデータ・バッファに書き込まれるべ
く関連しているものは、古いデータ・イメージを含んだ
トランザクション・ログ・エントリとともに含まれてい
た、EOFポインタ値である。
【0037】システムで用いられる幾つかのルールは、
不具合があったときにデータの回復を確実にするための
ものである。その第1のルールは、あるトランザクショ
ンに対する新規なデータ・イメージがディスク上のベー
ス・データ・ファイル内に書き込まれるのが可能にされ
るのに先だって、当該トランザクションに対する古いデ
ータ・イメージがディスク上のログ・ファイルに書き込
まれねばならないということである。このルールで確実
にされることは、コミット・マークがログ・ファイルに
書き込まれるのに先だって不具合が生じたときには、ベ
ース・データ・ファイルの状態に拘わらず、完全な古い
データ・イメージがログ・ファイル内に存在することで
ある。その第2のルールは、”コミット”マークがログ
に書き込まれるのに先だって、ある所与のトランザクシ
ョンに対する新規なデータ・イメージが、ディスク上
の、ログ・ファイルまたはベース・データのいずれかに
書き込まれねばならないということである。このため
に、ログ・ファイル内でのコミット・マークの存在によ
り、有効で新規なデータ・イメージがディスク内に存在
することが保証される。
【0038】現在の水準およびEOFポインタは、これ
らのルールを実施するときの助けになるものである。そ
の”EOFポインタ”値が現在の水準なる変数の値に等
しいか、または、これよりも小さくない限り、いずれの
トランザクションの新規なデータ・イメージでも、ディ
スク上のベース・データに書き込まれることはできな
い。このために、新規なデータ・イメージに対するEO
Fポインタの値が、現存する水準値に等しいか、また
は、これよりも小さいときにのみ、該新規なデータ・イ
メージがディスク上のベース・データに書き込まれるこ
とになる。これで確実にされることは、新規なデータ・
イメージがディスクに書き込まれるのに先だって、古い
データ・イメージが既にディスクに書き込まれて保持さ
れていることである。
【0039】上述されたプロトコルで確実にされること
は、トランザクションの開始の後では、ディスク上で既
存の古いデータのコピーが既に存在しない限り、新規な
データがディスクに書き込まれることはないということ
である。更に、不具合があった後で、トランザクション
のログが調べられるときには、知ることが必要なこと
は、トランザクションに対する”コミット”インディケ
ータがあるかどうかということだけである。それがない
ときには、古いデータ・イメージをログ内で利用するこ
とが可能にされて、トランザクションの開始以前に存在
したファイル・システムの状態を再設定するようにされ
る。
【0040】ここで図7に移行すると、”所有する”ノ
ードにおけるトランザクションの動作についてのフロー
図が示されている。前述されたように、”所有する”ノ
ードとは、トランザクションに始めに助けを求めたもの
である。まず、トランザクション識別子(TID)が指
定され(ボックス50)、トランザクション・レコード
・エントリが生成されてメモリ内に配置される(ボック
ス52)。これに次いで、十分な情報をもってトランザ
クション・ログ・エントリが生成されて、後続の不具合
があったときには、該トランザクションを元に戻すこと
ができるようにされる(ボックス54)。前述されたよ
うに、当該ログ・エントリは古いデータ・イメージを含
むことが多く、Xに等しいレコード・ナンバ値が割り当
てられており、また、この値Xはログ・ファイルに対す
るEOP変数の値に等しい。
【0041】これに次いで、トランザクションによって
要求されたアクションが実行されて、新規なデータを含
む新規なトランザクション・データ・エントリが、揮発
性のメモリに書き込まれる(ボックス58)。当該新規
なデータ・エントリは、Xに等しい水準値と関連するよ
うにされている(ボックス60)。この状態において、
要求されたアクションが完了したかどうかが、システム
によって決定される(ボックス62)。そして、そうで
ないときにはロールバックの手順(ボックス64)が開
始されて、トランザクションを元に戻すようにされる
(これについては、図10に関して後述される)。
【0042】アクションが完了したとき、または、新規
のデータ・ファイルのコピーが、アクションを後で完了
することができるログ・ファイル内にあるときには、シ
ステム・コマンドが与えられて、ディスクに対するトラ
ンザクション・ログ・エントリの書き込み準備がなされ
る(ボックス66)。関係のあるノードがない(ボック
ス69)ときには、即座に図8のボックス76までプロ
セスがジャンプする。指示されるように、変数Xが現在
の水準値に等しいかこれよりも小さいときには、新規の
イメージ・データをディスク上のベース・データ・ファ
イルに書き込むことができる。これを換言すれば、付加
されたEOF変数がディスク上のログ・ファイルのバイ
ト・カウントに等しいかこれよりも小さいときには、新
規のイメージ・データがディスクに書き込まれる。新規
なデータ・イメージのXの値が現在の水準よりも大きい
ときには、ディスクへの書き込みのために必要な条件が
満たされるまで、システムが待機する。
【0043】この点において、更に別のアクションが生
じるかどうか(ボックス78)が、および、そうである
とき、それらのアクションを実行すること(ボックス8
0)が、システムによって決定される。更に別のアクシ
ョンがないときには、ボックス82がスキップされて、
コミット機能が開始される(ボックス84)。当該機能
には、”トランザクションの完了”を指示するログ・エ
ントリの生成が含まれている。次いで、このエントリが
ディスクに書き込まれて、トランザクション・レコード
の揮発性メモリからの削除ができるようにされる。
【0044】図7に戻って、関係のあるノードがトラン
ザクションに含まれているときには、関係のあるものの
リストが指定されて(ボックス68)、関係のあるノー
ドによって実行されるべきトランザクションが、それが
実行されるところの関係のあるものに提起される(ボッ
クス70)。そして、図8に示されているように、”ア
クション完了”の肯定応答がある所定の期間内に全ての
関係のあるものから受け取らなければ(ボックス7
2)、トランザクションのロールバックが生じる(ボッ
クス74)。これに対して、アクションの完了および認
知が全ての関係のあるものから受け入れられたときに
は、ボックス76において示されているように、ログ・
エントリがディスクに書き込まれる。
【0045】この点において、実行されるべき更に別の
アクションがないとすれば、”完了”メッセージが関係
のあるものに対して伝送される。実際には、これは2相
の”コミット”操作によってなされる。各関係のあるノ
ードにおいて、そのアクションの完了またはロールバッ
クが可能であることが指示されたときには、第1相のコ
ミットが生じる。起点ノードがその関係のあるノードの
各々から”コミット”の指示を受け入れて、全ての関係
のあるノードにおける全ての要求されたアクションが完
了できることが知られているときには、その第2相が生
じる。次いで、起点ノードからはそのコミット・マーク
が不揮発性のメモリに書き込まれ、その後で”完了”メ
ッセージが関係のあるものの各々に伝送されて、それら
によるトランザクション・アクションの実行が可能にさ
れる(ボックス82)。この”完了”メッセージが関係
のあるノードによって一旦認知されると、起点ノードは
そのトランザクション完了をマークすることができる
(ボックス84)。
【0046】ここで図9に移行すると、ある1個の関係
のあるノードにおけるトランザクション操作について、
より詳細な説明が示されている。この例においては、関
係のあるノードが起点ノードからトランザクションを実
行するための要求を受け入れており、また、可能性のあ
るロールバックをすることができるように所有するトラ
ンザクション・ログ・レコードを生成しているものとす
る。この段階において、要求されたアクションが関係の
あるノードで実行されて(ボックス100)、このアク
ションからもたらされる任意の修正されたデータ・ブロ
ックが、Xに等しいEOF値をもってマークされる。こ
の場合において、Xは関係のあるノードに現存するEO
F変数値に等しいものであり(ブロック102)、各関
係のあるノードには所有する独立したログ・ファイルが
保持されていることが想起される。
【0047】関係のあるノードにおいてアクションがま
だ完了していないときには(ボックス104)、システ
ムでは要求されたアクションの実行が再循環されて、ト
ランザクション完了の準備がなされる。全てのアクショ
ンの完了(またはロールバック)をすることが可能であ
れば、ログ・エントリがディスクに書き込まれ(ブロッ
ク106)、そして、”OK”メッセージが起点ノード
に伝送される(ボックス108)。そして、”完了”メ
ッセージが所有するノードから戻らないときには(ブロ
ック110)、関係のあるノードにおいてロールバック
が生じる(ボックス112)。しかしながら、”完了”
メッセージを起点ノードから受け取ったときには、いず
れかの更に別のアクションが要求されているかどうかの
決定がなされ(ボックス114)、そうであるときに
は、該当のアクションが実行される(ボックス11
6)。そうでないときには、コミットの手順が実行され
て(118)、トランザクションは終了する。
【0048】起点ノードにおいてはディスク上のそのロ
グ内にコミット・マークが書き込まれる以前であるが、
関係のあるノードにおいてはそれらのログにコミット・
マークが書き込まれた後で、システムに破損が生じたと
する。システムの回復操作の間に、関係のあるノードに
おいては、それらのコミット・マーク(ただし、トラン
ザクション完了マークではない)を認めることにより、
そのコミット・マークの状態について起点ノードに質問
を発する。トランザクションに対するコミット・マーク
は存在しないことから、起点ノードでは、関係のあるも
のに対して、古いデータ・イメージに状態にロールバッ
クするための信号を発する。コミットの手順の間に、起
点ノードでは、関係のあるノードに対して、コミットさ
れている旨のメッッセージを伝送する。ここで、関係の
あるノードでは、新規なデータ・イメージが使用される
ことを知ることになり、このために、該関係のあるノー
ドのそれぞれのベース・データ・ファイルの更新が確実
にされて、それらのログにトランザクション完了マーク
を書き込むようにされる。全てのこのようなトランザク
ション完了マークの書き込みは起点ノードに伝送され
て、そのログ内にトランザクション完了マークを付ける
ようにされる。
【0049】ここで図10に移行すると、ロールバック
の手順について概略的に説明されている。ロールバック
の動作が生じ得るためには2個の理由がある。即ち、
(1)ある所定の時間的な制限内にトランザクションが
完了しなかったことを信号するタイムアウトの指示が生
じること、または、(2)トランザクションの完了の妨
げになる不具合が生じることである。ボックス130で
指示されているようなタイムアウトが生じなかったとき
には、係わりあいによる不具合が生じて、トランザクシ
ョンの一部を形成する全てのアクションを反転させるこ
とにより、トランザクションが取り消される(ボックス
132)。
【0050】タイムアウトが生じたときには、その次
に、所有するノードまたは関係のあるノードのいずれに
タイムアウトが生じたかの返答をするような質問がなさ
れる。タイムアウトが所有するノードにおいて生じたと
きには、全ての関係のあるものに対して中止のメッセー
ジが伝送されて(ボックス136)、肯定応答が受け取
られる(ボックス138)。トランザクションの”中
止”エントリが生成されてディスクに書き込まれ(ボッ
クス140)、そして、トランザクションがメモリから
削除される(ボックス142)。ボックス146、14
8および150に示されているアクションをするため
に、所有するノードからの中止メッセージを受け入れる
まで待機する(ボックス144)ことを除いて、関係の
あるノードにおいて同様なアクションが生じる。
【0051】ここで図11に移行すると、ある1個のノ
ードにおける不具合から回復するために採用される方法
が例示されている。この例においては、ノードは全ての
揮発性メモリの内容を失っており、また、残っているメ
モリの内容は不揮発性メモリ(例えば、ディスク)内の
ものだけとされている。
【0052】その回復の手順には、ログ・ファイルにつ
いての2個の連続的な読み取りが含まれている。その第
1の読み取り(ボックス160)では、全ての完全なト
ランザクションの識別、および、完全という指示が添え
られていないトランザクションの識別がなされる。ログ
の読み取りがなされて(ボックス166)、不完全なト
ランザクションの識別がなされたときには、その再読み
取りがなされる(ボックス168)。このフェーズの間
に、全ての識別された不完全なトランザクションのロー
ルバックがなされる(ボックス170)。これに加え
て、完了したトランザクション・レコード内のいずれの
新規なデータ・イメージがログから書き出されて、その
それぞれのデータ・ファイルに書き込まれたかを知るす
べがないことから、各々の完全なトランザクションにお
ける全ての新規なデータ・イメージが、ディスク上のそ
のそれぞれのファイルに書き込まれる(ボックス17
2)。そして、ログ・エントリを含んでいる全ての揮発
性メモリの内容が、ディスクおよびログ・ファイルに書
き込まれて、ログ・スイッチの動作が生じる(ボックス
176)。この段階において、システムは再び動作の開
始に備えることになる。
【0053】”ログ・スイッチ”なる動作は、ファイル
・システムの動作の間の種々の時点において生じること
ができる。現在のログ・ファイルがある程度のサイズに
到達したときには、ログ・ファイルに対して過大なメモ
リを割り当てる必要性を回避するために、その短縮をす
ることが必要になる。ログ・スイッチにおける第1のス
テップは、新規なログ・ファイルを生成させて、そのメ
モリ領域を指定することである。このことは、古いログ
・ファイルに記録されているトランザクションとして達
成される。次に、新規なログ・ファイルに対するポイン
タが生成されて、メモリ内に配置される。この点におい
て、古いログ・ファイルにおいて開始されたトランザク
ションに対応するいずれのエントリも古いログに入力さ
れるけれども、新規なトランザクションは新規なログに
入力される。このために、処理中の全てのトランザクシ
ョンは古いログ内で完全なものであって、新規なログに
関係するものではない。システムの不具合がログ・スイ
ッチの間に生じたときには、その回復の手順において、
古いログ・ファイルが現在のログ・ファイルとして設定
されるが、新規なログ・ファイルを見出す箇所を告知す
る”新規ファイル生成”トランザクションを、古いログ
内で見出すようにされる。
【0054】新規なログ・ファイルが一旦使用されるよ
うになると、古いログ・ファイルを破棄することができ
るように、該古いログ・ファイルにおける全てのトラン
ザクションについての対処をせねばならない。これは幾
つかの段階で生じるものである。まず、新規なデータを
含んでおり、また、古いログ・ファイルと関連している
揮発性メモリ内の任意のエントリが、ディスクに書き込
まれる。次に、システムにおいては、古いログ・ファイ
ルで開始されてはいるが、まだ終了していない任意のト
ランザクションに対して、そのトランザクション・レコ
ードをくまなく調べるようにされる。このシステムにお
いては、トランザクションの仕上げに対する待機を選択
することが可能であり、または、当該トランザクション
を含む全てのエントリを新規なログにコピーすることが
可能である。
【0055】古いログ内の全てのトランザクションが一
旦処理されると、現在のログ・ファイルのポインタが新
規なログ・ファイルに更新されて、ディスクにおいてデ
ィレクトリの指示のために保留されている領域(例え
ば、”スーパーブロック”と呼ばれる)に書き込まれ
る。この動作はトランザクションとしてもなされる。こ
のトランザクションが一旦終了すると、古いログ・ファ
イルを削除し、使用された全てのディスク・スペースを
解放するための、最後のトランザクションが遂行され
る。このトランザクションは新規なログに記録され、そ
して、ログ・スイッチが完了することになる。
【0056】ここで理解されるべきことは、これまでの
説明はこの発明の単なる例示にすぎないということであ
る。当業者であれば、この発明から逸脱することなく、
種々の変更および修正を案出することができる。従っ
て、この発明は、添記された特許請求の範囲に入るよう
に、このような全ての代替、修正および変形を包含すべ
く意図されているものである。
【0057】
【発明の効果】本発明によれば、不具合が生じても、分
散型ファイル・システムの一貫性を確実にし、ファイル
・システムの迅速な回復を可能にする。
【図面の簡単な説明】
【図1】多重ノード式の並列計算システムのブロック図
である。
【図2】図1におけるノードの構成を例示するブロック
図である。
【図3】図1のシステムを動作させるプログラミング・
システムの例示図である。
【図4】トランザクション・レコードのデータ内容の例
示図である。
【図5】ログ・エントリのデータ内容の例示図である。
【図6】関係のあるトランザクション・エントリのデー
タ内容の例示図である。
【図7】トランザクションが開始するノードにおいてこ
の発明の動作を例示する、高レベルのフロー・チャート
である。
【図8】トランザクションが開始するノードにおいてこ
の発明の動作を例示する、高レベルのフロー・チャート
である。
【図9】関係のあるノードにおけるトランザクションの
動作を例示する、高レベルのフロー・チャートである。
【図10】トランザクションのロールバックが生じると
きのこの発明の動作を例示する、高レベルのフロー・チ
ャートである。
【図11】不具合の発生に対するシステムの回復を例示
する、高レベルのフロー・チャートである。
【符号の説明】
10 ノード 12 通信リンク 13 第1のプレーン 14 下方プレーン 15 下方プレーン
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アレクサンダー・エイチ・フレイ・ジュニ ア アメリカ合衆国カリフォルニア州パサディ ナ、 ローズ・ビラ・ストリート 1570番 地 (72)発明者 リチャード・シー・モステラー アメリカ合衆国カリフォルニア州シェラ・ マドリ、 リマ・ストリート 420番地 (72)発明者 ジョエル・エム・ゴールド アメリカ合衆国マサチューセッツ州ノーウ ッド、 プレスコット・ロード 24番地 (72)発明者 ノア・アール・メンデルソン アメリカ合衆国マサチューセッツ州アーリ ントン、 ソーンダイク・ストリート 136番地 (72)発明者 ジェムス・パーチク アメリカ合衆国マサチューセッチ州ケンブ リッジ、 ハーバード・ストリート 295 番地

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】ファイル・ベース式のソフトウエア・シス
    テムを含んでなるデータ処理システムにおけるファイル
    状態の回復方法であって:前記データ処理システム内の
    揮発性メモリおよび不揮発性メモリの双方に、アトミッ
    ク・ファイル・トランザクションのログ・ファイルを準
    備するステップ;不揮発性メモリ内にある前記ログ・フ
    ァイルの一部に、データ・セグメントの数を表す第1の
    変数を準備するステップ;揮発性メモリ内の前記ログ・
    ファイルのデータ・セグメントを含めて、前記ログ・フ
    ァイル内の全てのデータ・セグメントを表す第2の変数
    を準備するステップ;古いデータに関連するファイル・
    トランザクションを開始して、揮発性メモリ内の前記ロ
    グ・ファイルにおいて前記古いデータのイメージを記録
    し、そして、前記第2の変数の値を前記古いデータのイ
    メージに割り当てるステップ;新規なデータを生成する
    ために前記ファイル・トランザクションを実行して、揮
    発性メモリ内の前記ログ・ファイルにおいて前記新規な
    データのイメージを記録し、そして、前記古いデータの
    イメージに割り当てられた前記第2の変数の値を前記新
    規なデータのイメージに割り当てるステップ;および前
    記新規なデータのイメージに対して割り当てられた前記
    第2の変数の値が、前記第1の変数の値に等しいか、ま
    たは、これよりも小さく、前記古いデータのイメージが
    既に前記不揮発性メモリに記録されていることを表すと
    きにのみ、前記新規なデータのイメージを不揮発性メモ
    リに書き込むステップ;を含んでなる前記の方法。
  2. 【請求項2】前記不揮発性メモリはディスク・メモリを
    含んでおり、前記第1の変数は前記ディスク上に記録さ
    れた前記ログ・ファイルのバイト数を表している、請求
    項1に記載の方法。
  3. 【請求項3】前記第2の変数は前記ログ・ファイルにお
    けるバイトの総数を表している、請求項2に記載の方
    法。
  4. 【請求項4】前記トランザクションの古いイメージがデ
    ィスク・メモリに書き込まれるまでは、トランザクショ
    ンの新規なデータのイメージが前記ディスク・メモリ上
    のベース・データ・ファイルに対して書き込まれること
    がない、請求項3に記載の方法。
  5. 【請求項5】前記データ処理システムは複数のノードを
    含み、各ノードは揮発性メモリおよび不揮発性メモリを
    有する計算手段を含んでおり、アトミック・ファイル・
    トランザクションは複数のノードにおいてファイル・ア
    クションを含んでいて:関係のあるノードにおいて、起
    点ノードにより要求されたファイル・アクションを実行
    するステップであって、前記関係のあるノードにおいて
    は、前記起点ノードと同様な態様をもって、局部的に発
    生された第1および第2の変数を用いるようにされてい
    る前記のステップ;前記関係のあるノードにおいて、前
    記要求されたファイル・アクションの完了またはロール
    バックのための、前記起点ノードの能力を告知するステ
    ップ;および前記起点ノードからの後続のコミット命令
    の受け入れに応じて、前記関係のあるノードが、その不
    揮発性メモリにおいて、前記関係のあるノードにおいて
    前記要求されたファイル・アクションの結果として導出
    された新規なデータのイメージを始めに書き込み、これ
    に次いで、完了したマークをそのログ・ファイルに書き
    込むステップ;が付加されている、請求項1に記載の方
    法。
  6. 【請求項6】揮発性と不揮発性との双方のメモリ、およ
    び、ユーザのアクセス不能なファイル・コントロール・
    ソフトウエアを含んでなるデータ処理システムにおける
    不具合からの回復方法であって:アトミック・ファイル
    ・トランザクションのレコードを保持するためのトラン
    ザクション・ログ・ファイルを準備するステップ;トラ
    ンザクションの間に生じる古いデータのイメージおよび
    新規なデータのイメージを前記揮発性メモリに記録する
    ステップ;前記古いデータのイメージおよび新規なデー
    タのイメージを前記不揮発性メモリに含まれているログ
    ・ファイルの一部に記録するステップ;および不具合が
    あったときには、不揮発性メモリ内の前記ログ・ファイ
    ルを採用して、トランザクションの完了に先だって前記
    不具合が生じたときに、前記古いデータのイメージの状
    態にトランザクションをロールバックするステップ;を
    含んでなる前記の方法。
  7. 【請求項7】前記古いデータのイメージが不揮発性メモ
    リに書き込まれるまでは、前記新規なデータのイメージ
    が不揮発性メモリに対して書き込まれることがない、請
    求項6に記載の方法。
  8. 【請求項8】前記採用のステップには:不揮発性メモリ
    内の前記ログ・ファイルを読み取るステップ;いずれの
    ファイル・トランザクションが不完全であるかを前記ロ
    グ・ファイルから決定して、このようなトランザクショ
    ンをそれらの古いデータのイメージの状態にロールバッ
    クするステップ;および、前記ログ・ファイル内で完了
    したトランザクションにに含まれている新規なデータの
    任意のイメージを、前記不揮発性メモリに含まれている
    それぞれのベース・ファイルに書き込むステップ;が更
    に含まれている、請求項7に記載の方法。
  9. 【請求項9】複数のコンピュータを含んでなり、前記コ
    ンピュータの各々は揮発性メモリおよび不揮発性メモリ
    を備えていて、前記コンピュータを通して分散されたフ
    ァイル・ベース式のソフトウエア・システムを含んでい
    るデータ処理システムにおけるファイルの回復方法であ
    って:前記コンピュータの各々において、アトミック・
    ファイル・トランザクションに対するログ・ファイルを
    準備するステップ;古いデータに関連して前記コンピュ
    ータの1個におけるファイル・トランザクションを開始
    して、揮発性メモリ内の前記コンピュータのログ・ファ
    イルにおいて前記古いデータのイメージを記録するステ
    ップ;新規なデータを生成させるために前記ファイル・
    トランザクションを実行して、揮発性メモリ内の前記コ
    ンピュータのログ・ファイルにおいて前記新規なデータ
    のイメージを記録するステップ;および前記古いデータ
    のイメージが前記不揮発性メモリにおける前記コンピュ
    ータのログ・ファイルに書き込まれた後でのみ、前記新
    規なデータのイメージを前記コンピュータの不揮発性メ
    モリに書き込み、これによって、前記新規なデータのイ
    メージが不揮発性メモリに書き込まれるのに先だってシ
    ステムに不具合が生じたときに、前記古いデータのイメ
    ージが不揮発性メモリに保存されるステップ;を含んで
    なる前記の方法。
  10. 【請求項10】前記古いデータのイメージが前記コンピ
    ュータの不揮発性メモリ内のログ・ファイルに書き込ま
    れた後で、前記新規なデータのイメージがベース・デー
    タ・ファイルに書き込まれる、請求項9に記載の方法。
  11. 【請求項11】アトミック・ファイル・トランザクショ
    ンには複数のコンピュータにおけるファイル・アクショ
    ンが含まれており:関係のあるコンピュータにおいて、
    起点コンピュータによって要求されたファイル・アクシ
    ョンを実行するステップ;前記関係のあるコンピュータ
    において、前記要求されたファイル・アクションの完了
    またはロールバックのための、前記起点コンピュータの
    能力を告知するステップ;および前記起点コンピュータ
    からの後続の命令の受け入れに応じて、前記関係のある
    コンピュータが、前記関係のあるコンピュータにおいて
    前記要求されたファイル・アクションの結果として導出
    された新規なデータのイメージおよび完了したマークを
    そのログ・ファイルに書き込むステップ;が付加されて
    いる、請求項10に記載の方法。
JP3089000A 1990-04-16 1991-03-29 デ―タ処理システムにおけるファイル状態の回復方法 Expired - Lifetime JP2505070B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US509853 1990-04-16
US07/509,853 US5201044A (en) 1990-04-16 1990-04-16 Data processing method for file status recovery includes providing a log file of atomic transactions that may span both volatile and non volatile memory

Publications (2)

Publication Number Publication Date
JPH0773087A true JPH0773087A (ja) 1995-03-17
JP2505070B2 JP2505070B2 (ja) 1996-06-05

Family

ID=24028353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3089000A Expired - Lifetime JP2505070B2 (ja) 1990-04-16 1991-03-29 デ―タ処理システムにおけるファイル状態の回復方法

Country Status (3)

Country Link
US (1) US5201044A (ja)
EP (1) EP0454340A3 (ja)
JP (1) JP2505070B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315987B2 (en) 2010-03-26 2012-11-20 Fujitsu Limited Database management apparatus and recording medium with database management program recorded thereon
JP2017027382A (ja) * 2015-07-23 2017-02-02 日本電気株式会社 データベース管理装置、データベース管理システム、データベース管理方法及びプログラム

Families Citing this family (231)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0540682A (ja) * 1990-06-08 1993-02-19 Internatl Business Mach Corp <Ibm> アトミシテイを有する記憶装置の高可用性耐故障再配置
US5390302A (en) * 1991-02-21 1995-02-14 Digital Equipment Corporation Transaction control
US5269019A (en) * 1991-04-08 1993-12-07 Storage Technology Corporation Non-volatile memory storage and bilevel index structure for fast retrieval of modified records of a disk track
US5369757A (en) * 1991-06-18 1994-11-29 Digital Equipment Corporation Recovery logging in the presence of snapshot files by ordering of buffer pool flushing
US5764877A (en) * 1991-06-25 1998-06-09 Digital Equipment Corporation Media recovery with time-split B-trees
GB9116268D0 (en) * 1991-07-27 1991-09-11 Int Computers Ltd Data processing system
US5491819A (en) * 1991-09-05 1996-02-13 International Business Machines Corporation System and method for merging and separating attributes of consoles
US5628006A (en) * 1991-09-05 1997-05-06 International Business Machines Corporation Computer program product and program storage device for merging and separating attributes of consoles
US5499367A (en) * 1991-11-15 1996-03-12 Oracle Corporation System for database integrity with multiple logs assigned to client subsets
US5271014A (en) * 1992-05-04 1993-12-14 International Business Machines Corporation Method and apparatus for a fault-tolerant mesh with spare nodes
US5469562A (en) * 1992-06-26 1995-11-21 Digital Equipment Corporation Durable atomic storage update manager
US5335343A (en) * 1992-07-06 1994-08-02 Digital Equipment Corporation Distributed transaction processing using two-phase commit protocol with presumed-commit without log force
US5815656A (en) * 1992-09-23 1998-09-29 International Business Machines Corporation Method of validating memory structures in data processing systems
SE500599C2 (sv) * 1992-12-08 1994-07-25 Ellemtel Utvecklings Ab Sätt att optimera minnesutrymme i en databas
SE500656C2 (sv) * 1992-12-08 1994-08-01 Ellemtel Utvecklings Ab System för backuptagning i en distribuerad databas
SE508828C2 (sv) * 1992-12-08 1998-11-09 Ericsson Telefon Ab L M System för relationsåterhämtning av databas i händelse av fel
US5513313A (en) * 1993-01-19 1996-04-30 International Business Machines Corporation Method for generating hierarchical fault-tolerant mesh architectures
JPH06266597A (ja) * 1993-03-11 1994-09-22 Fujitsu Ltd ログ取得方式
US5544359A (en) * 1993-03-30 1996-08-06 Fujitsu Limited Apparatus and method for classifying and acquiring log data by updating and storing log data
US5455946A (en) * 1993-05-21 1995-10-03 International Business Machines Corporation Method and means for archiving modifiable pages in a log based transaction management system
GB2281644A (en) * 1993-09-02 1995-03-08 Ibm Fault tolerant transaction-oriented data processing.
US5604863A (en) * 1993-11-01 1997-02-18 International Business Machines Corporation Method for coordinating executing programs in a data processing system
US5630124A (en) * 1993-12-06 1997-05-13 International Business Machines Corporation System and method for assuring atomicity of distributed update requests in a parallel database
US5583990A (en) * 1993-12-10 1996-12-10 Cray Research, Inc. System for allocating messages between virtual channels to avoid deadlock and to optimize the amount of message traffic on each type of virtual channel
US5450577A (en) * 1993-12-14 1995-09-12 At&T Corp. Zero-defect data integrity in high-capacity transaction systems
US5544325A (en) * 1994-03-21 1996-08-06 International Business Machines Corporation System and method for generating messages for use in transaction networks
US5497487A (en) * 1994-04-28 1996-03-05 The United States Of America As Represented By The Secretary Of The Navy Merge, commit recovery protocol for real-time database management systems
US5778167A (en) * 1994-06-14 1998-07-07 Emc Corporation System and method for reassigning a storage location for reconstructed data on a persistent medium storage system
US5659682A (en) * 1994-06-16 1997-08-19 International Business Machines Corporation Scheme to determine completion of directory operations for server recovery
US5596710A (en) * 1994-10-25 1997-01-21 Hewlett-Packard Company Method for managing roll forward and roll back logs of a transaction object
CA2206302A1 (en) * 1995-01-23 1996-08-01 Tandem Computers Incorporated Tracking the state of transactions
US5778387A (en) * 1995-05-19 1998-07-07 Sprint Communications Co., L.P. Database automated recovery system
SE506534C2 (sv) * 1995-06-15 1998-01-12 Ericsson Telefon Ab L M Sätt att bestämma innehåll i restaureringslogg
JPH11508069A (ja) * 1995-06-16 1999-07-13 ルーセント テクノロジーズ 持続性状態のチェックポイントおよび復旧システム
WO1997000477A1 (en) * 1995-06-16 1997-01-03 Lucent Technologies Checkpoint and restoration systems for execution control
US6105148A (en) * 1995-06-16 2000-08-15 Lucent Technologies Inc. Persistent state checkpoint and restoration systems
US6044475A (en) * 1995-06-16 2000-03-28 Lucent Technologies, Inc. Checkpoint and restoration systems for execution control
US5684944A (en) * 1995-08-14 1997-11-04 Lubbers; Clark E. Atomic update of EDC protected data
US5778168A (en) * 1995-09-11 1998-07-07 Sun Microsystems, Inc. Transaction device driver technique for a journaling file system to ensure atomicity of write operations to a computer mass storage device
US5799305A (en) * 1995-11-02 1998-08-25 Informix Software, Inc. Method of commitment in a distributed database transaction
US5745750A (en) * 1995-12-15 1998-04-28 International Business Machines Corporation Process and article of manufacture for constructing and optimizing transaction logs for mobile file systems
US5791790A (en) * 1996-03-13 1998-08-11 Lexmark International, Inc. Method and apparatus for providing print job buffering for a printer on a fast data path
US7415466B2 (en) * 1996-03-19 2008-08-19 Oracle International Corporation Parallel transaction recovery
US6647510B1 (en) * 1996-03-19 2003-11-11 Oracle International Corporation Method and apparatus for making available data that was locked by a dead transaction before rolling back the entire dead transaction
US5850507A (en) 1996-03-19 1998-12-15 Oracle Corporation Method and apparatus for improved transaction recovery
US5857204A (en) * 1996-07-02 1999-01-05 Ab Initio Software Corporation Restoring the state of a set of files
US6035379A (en) * 1997-01-09 2000-03-07 Microsoft Corporation Transaction processing for user data employing both logging and shadow copying
US5825748A (en) * 1997-04-08 1998-10-20 International Business Machines Corporation Credit-based flow control checking and correction system
US6044406A (en) * 1997-04-08 2000-03-28 International Business Machines Corporation Credit-based flow control checking and correction method
US6105071A (en) * 1997-04-08 2000-08-15 International Business Machines Corporation Source and destination initiated interrupt system for message arrival notification
US6098105A (en) * 1997-04-08 2000-08-01 International Business Machines Corporation Source and destination initiated interrupt method for message arrival notification
US6098104A (en) * 1997-04-08 2000-08-01 International Business Machines Corporation Source and destination initiated interrupts for message arrival notification, and related data structures
US6230252B1 (en) 1997-11-17 2001-05-08 Silicon Graphics, Inc. Hybrid hypercube/torus architecture
US6085303A (en) * 1997-11-17 2000-07-04 Cray Research, Inc. Seralized race-free virtual barrier network
US5970232A (en) * 1997-11-17 1999-10-19 Cray Research, Inc. Router table lookup mechanism
US6101181A (en) * 1997-11-17 2000-08-08 Cray Research Inc. Virtual channel assignment in large torus systems
US6101504A (en) * 1998-04-24 2000-08-08 Unisys Corp. Method for reducing semaphore contention during a wait to transfer log buffers to persistent storage when performing asynchronous writes to database logs using multiple insertion points
US6131094A (en) * 1998-04-24 2000-10-10 Unisys Corp. Method for performing asynchronous writes to database logs using multiple insertion points
US6219677B1 (en) 1998-05-01 2001-04-17 Emware, Inc. Split file system
US6163856A (en) * 1998-05-29 2000-12-19 Sun Microsystems, Inc. Method and apparatus for file system disaster recovery
US6247023B1 (en) * 1998-07-21 2001-06-12 Internationl Business Machines Corp. Method for providing database recovery across multiple nodes
US7013305B2 (en) 2001-10-01 2006-03-14 International Business Machines Corporation Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange
US6295610B1 (en) 1998-09-17 2001-09-25 Oracle Corporation Recovering resources in parallel
US6216174B1 (en) 1998-09-29 2001-04-10 Silicon Graphics, Inc. System and method for fast barrier synchronization
US6360231B1 (en) * 1999-02-26 2002-03-19 Hewlett-Packard Company Transactional memory for distributed shared memory multi-processor computer systems
US6952741B1 (en) * 1999-06-30 2005-10-04 Computer Sciences Corporation System and method for synchronizing copies of data in a computer system
US6446086B1 (en) * 1999-06-30 2002-09-03 Computer Sciences Corporation System and method for logging transaction records in a computer system
US7340426B1 (en) 1999-07-30 2008-03-04 Computer Sciences Corporation Event-triggered transaction processing for electronic data interchange
US6970844B1 (en) 1999-08-27 2005-11-29 Computer Sciences Corporation Flow designer for establishing and maintaining assignment and strategy process maps
US6961708B1 (en) 1999-08-27 2005-11-01 Computer Sciences Corporation External interface for requesting data from remote systems in a generic fashion
US6674720B1 (en) 1999-09-29 2004-01-06 Silicon Graphics, Inc. Age-based network arbitration system and method
US6751698B1 (en) 1999-09-29 2004-06-15 Silicon Graphics, Inc. Multiprocessor node controller circuit and method
JP4237354B2 (ja) * 1999-09-29 2009-03-11 株式会社東芝 トランザクション処理方法及びトランザクション処理システム
US7693731B1 (en) 1999-09-30 2010-04-06 Computer Sciences Corporation Business process framework for reinsurance
US7359863B1 (en) 1999-09-30 2008-04-15 Computer Sciences Corporation Condition component framework for reinsurance
US6587962B1 (en) * 1999-10-20 2003-07-01 Hewlett-Packard Development Company, L.P. Write request protection upon failure in a multi-computer system
US7571171B1 (en) 1999-10-29 2009-08-04 Computer Sciences Corporation Smart trigger for use in processing business transactions
US7353196B1 (en) 1999-10-29 2008-04-01 Computer Sciences Corporation Configuring dynamic database packageset switching for use in processing business transactions
US7356541B1 (en) 1999-10-29 2008-04-08 Computer Sciences Corporation Processing business data using user-configured keys
US7693844B1 (en) 1999-10-29 2010-04-06 Computer Sciences Corporation Configuring processing relationships among entities of an organization
US7546304B1 (en) 1999-10-29 2009-06-09 Computer Sciences Corporation Configuring keys for use in processing business data
US7363264B1 (en) 1999-10-29 2008-04-22 Computer Sciences Corporation Processing business transactions using dynamic database packageset switching
US7526487B1 (en) 1999-10-29 2009-04-28 Computer Sciences Corporation Business transaction processing systems and methods
US6925468B1 (en) 1999-10-29 2005-08-02 Computer Sciences Corporation Configuring systems for generating business transaction reports using processing relationships among entities of an organization
US6856993B1 (en) * 2000-03-30 2005-02-15 Microsoft Corporation Transactional file system
US7398219B1 (en) 2000-06-23 2008-07-08 Computer Sciences Corporation System and method for displaying messages using a messages table
US7343307B1 (en) 2000-06-23 2008-03-11 Computer Sciences Corporation Dynamic help method and system for an insurance claims processing system
US7430515B1 (en) 2000-06-23 2008-09-30 Computer Sciences Corporation System and method for externalization of formulas for assessing damages
US7430514B1 (en) 2000-06-23 2008-09-30 Computer Sciences Corporation System and method for processing insurance claims using a table of contents
US7571107B1 (en) 2000-06-23 2009-08-04 Computer Sciences Corporation System and method for externalization of rules for assessing damages
US7418400B1 (en) 2000-06-23 2008-08-26 Computer Sciences Corporation Internet-enabled system and method for assessing damages
US7095426B1 (en) 2000-06-23 2006-08-22 Computer Sciences Corporation Graphical user interface with a hide/show feature for a reference system in an insurance claims processing system
US20020059085A1 (en) * 2000-10-02 2002-05-16 Steven Wahlbin Computerized method and system of determining a credible real set of characteristics for an accident
US6785695B1 (en) * 2000-10-19 2004-08-31 International Business Machines Corporation System and method for operational assistance during system restoration
FI20002377A (fi) * 2000-10-27 2002-04-28 Ssh Comm Security Corp Menetelmä käännetyn suodatinkoodin hallitsemiseksi
US6871271B2 (en) * 2000-12-21 2005-03-22 Emc Corporation Incrementally restoring a mass storage device to a prior state
US6847983B2 (en) 2001-02-28 2005-01-25 Kiran Somalwar Application independent write monitoring method for fast backup and synchronization of open files
US6985915B2 (en) 2001-02-28 2006-01-10 Kiran Somalwar Application independent write monitoring method for fast backup and synchronization of files
US7963899B2 (en) * 2001-07-13 2011-06-21 The Proctor & Gamble Company Continuous in-line pleating apparatus and process
US20030055809A1 (en) * 2001-09-18 2003-03-20 Sun Microsystems, Inc. Methods, systems, and articles of manufacture for efficient log record access
US6811490B2 (en) * 2001-10-10 2004-11-02 Sony Computer Entertainment America Inc. System and method for saving game data
US20030088814A1 (en) * 2001-11-07 2003-05-08 Campbell Ralph B. Method and apparatus for logging file system operations
AU2002364036A1 (en) 2001-12-24 2003-07-15 Digimarc Id Systems, Llc Laser etched security features for identification documents and methods of making same
US7694887B2 (en) 2001-12-24 2010-04-13 L-1 Secure Credentialing, Inc. Optically variable personalized indicia for identification documents
AU2002364255A1 (en) 2001-12-24 2003-07-15 Digimarc Id Systems, Llc Covert variable information on id documents and methods of making same
WO2003088144A2 (en) 2002-04-09 2003-10-23 Digimarc Id Systems, Llc Image processing techniques for printing identification cards and documents
US7430740B1 (en) * 2002-04-12 2008-09-30 724 Solutions Software, Inc Process group resource manager
US6931405B2 (en) * 2002-04-15 2005-08-16 Microsoft Corporation Flexible subscription-based event notification
US20040153746A1 (en) * 2002-04-24 2004-08-05 Talagala Nisha D. Mechanisms for embedding and using integrity metadata
US7824029B2 (en) 2002-05-10 2010-11-02 L-1 Secure Credentialing, Inc. Identification card printer-assembler for over the counter card issuing
US6857001B2 (en) * 2002-06-07 2005-02-15 Network Appliance, Inc. Multiple concurrent active file systems
US7051155B2 (en) * 2002-08-05 2006-05-23 Sun Microsystems, Inc. Method and system for striping data to accommodate integrity metadata
US7020805B2 (en) * 2002-08-15 2006-03-28 Sun Microsystems, Inc. Efficient mechanisms for detecting phantom write errors
US7702528B2 (en) * 2002-09-09 2010-04-20 Computer Sciences Corporation Computerized method and system for determining breach of duty in premises liability for an accident
US20040054556A1 (en) * 2002-09-09 2004-03-18 Stephan Wahlbin Computerized method and system for determining causation in premises liability for an accident
US7672860B2 (en) * 2002-09-09 2010-03-02 Computer Sciences Corporation Computerized method and system for determining the contribution of defenses to premises liability for an accident
US20040054557A1 (en) * 2002-09-09 2004-03-18 Stefan Wahlbin Computerized method and system for estimating premises liability for an accident
US20040054558A1 (en) * 2002-09-09 2004-03-18 Stefan Wahlbin Computerized method and system for determining claimant status in premises liability for an accident
US7907729B2 (en) * 2002-09-13 2011-03-15 Bally Gaming, Inc. Rollback attack prevention system and method
US7174420B2 (en) 2002-10-22 2007-02-06 Microsoft Corporation Transaction-safe FAT file system
US7363540B2 (en) 2002-10-22 2008-04-22 Microsoft Corporation Transaction-safe FAT file system improvements
US20040088199A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of forming a business rule
US20040085357A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of generating a graphical display of a business rule and associated business rule elements
US7451148B2 (en) * 2002-10-31 2008-11-11 Computer Sciences Corporation Method of modifying a business rule while tracking the modifications
US20040088195A1 (en) * 2002-10-31 2004-05-06 Childress Allen B. Method of modifying a business rule
US7689442B2 (en) * 2002-10-31 2010-03-30 Computer Science Corporation Method of generating a graphical display of a business rule with a translation
US7676387B2 (en) * 2002-10-31 2010-03-09 Computer Sciences Corporation Graphical display of business rules
US7804982B2 (en) 2002-11-26 2010-09-28 L-1 Secure Credentialing, Inc. Systems and methods for managing and detecting fraud in image databases used with identification documents
US7895063B2 (en) * 2002-11-27 2011-02-22 Computer Sciences Corporation Computerized method and system for creating pre-configured claim reports including liability in an accident estimated using a computer system
US7660725B2 (en) * 2002-11-27 2010-02-09 Computer Sciences Corporation Computerized method and system for estimating an effect on liability based on the stopping distance of vehicles
US7792690B2 (en) * 2002-11-27 2010-09-07 Computer Sciences Corporation Computerized method and system for estimating an effect on liability of the speed of vehicles in an accident and time and distance traveled by the vehicles
US7818187B2 (en) * 2002-11-27 2010-10-19 Computer Sciences Corporation Computerized method and system for estimating liability
US7805321B2 (en) * 2002-11-27 2010-09-28 Computer Sciences Corporation Computerized method and system for estimating liability for an accident from an investigation of the accident
US7702529B2 (en) * 2002-11-27 2010-04-20 Computer Sciences Corporation Computerized method and system for estimating an effect on liability using claim data accessed from claim reporting software
US7725334B2 (en) * 2002-11-27 2010-05-25 Computer Sciences Corporation Computerized method and system for estimating liability for an accident using dynamic generation of questions
US20040102984A1 (en) * 2002-11-27 2004-05-27 Stefan Wahlbin Computerized method and system for estimating liability using recorded vehicle data
US20040103005A1 (en) * 2002-11-27 2004-05-27 Stefan Wahlbin Computerized method and system for estimating monetary damages due to injuries in an accident from liability estimated using a computer system
US7809586B2 (en) * 2002-11-27 2010-10-05 Computer Sciences Corporation Computerized method and system for estimating an effect on liability using a comparison of the actual speed of a vehicle in an accident and time and distance traveled by the vehicles in a merging vehicle accident
JP3862652B2 (ja) * 2002-12-10 2006-12-27 キヤノン株式会社 印刷制御方法及び情報処理装置
US7133883B2 (en) * 2002-12-23 2006-11-07 Sun Microsystems, Inc. General techniques for diagnosing data corruptions
US7103811B2 (en) * 2002-12-23 2006-09-05 Sun Microsystems, Inc Mechanisms for detecting silent errors in streaming media devices
US8726075B1 (en) * 2003-02-14 2014-05-13 At&T Intellectual Property Ii, L.P. Method and apparatus for screenshot archiving to digital video disk (DVD)
US7340741B2 (en) * 2003-02-28 2008-03-04 International Business Machines Corporation Auto-restart processing in an IMS batch application
EP1614064B1 (en) 2003-04-16 2010-12-08 L-1 Secure Credentialing, Inc. Three dimensional data storage
US20040215494A1 (en) * 2003-04-24 2004-10-28 Wahlbin Stefan L. Method and system for determining monetary amounts in an insurance processing system
US7379424B1 (en) 2003-08-18 2008-05-27 Cray Inc. Systems and methods for routing packets in multiprocessor computer systems
US7895064B2 (en) * 2003-09-02 2011-02-22 Computer Sciences Corporation Graphical input display in an insurance processing system
US20050060205A1 (en) * 2003-09-02 2005-03-17 Woods Randall K. Systems and methods for a graphical input display in an insurance processing system
US7577807B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7904428B2 (en) * 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7730222B2 (en) * 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7991748B2 (en) * 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7296008B2 (en) * 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US7631120B2 (en) * 2004-08-24 2009-12-08 Symantec Operating Corporation Methods and apparatus for optimally selecting a storage buffer for the storage of data
US7287133B2 (en) * 2004-08-24 2007-10-23 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7409587B2 (en) * 2004-08-24 2008-08-05 Symantec Operating Corporation Recovering from storage transaction failures using checkpoints
US7577806B2 (en) 2003-09-23 2009-08-18 Symantec Operating Corporation Systems and methods for time dependent data storage and recovery
US7827362B2 (en) * 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7725760B2 (en) * 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7239581B2 (en) * 2004-08-24 2007-07-03 Symantec Operating Corporation Systems and methods for synchronizing the internal clocks of a plurality of processor modules
US7412581B2 (en) * 2003-10-28 2008-08-12 Renesas Technology America, Inc. Processor for virtual machines and method therefor
US20050108063A1 (en) * 2003-11-05 2005-05-19 Madill Robert P.Jr. Systems and methods for assessing the potential for fraud in business transactions
US7353432B1 (en) 2003-11-25 2008-04-01 Sun Microsystems, Inc. Maintaining high data integrity
US7822826B1 (en) 2003-12-30 2010-10-26 Sap Ag Deployment of a web service
US7941521B1 (en) 2003-12-30 2011-05-10 Sap Ag Multi-service management architecture employed within a clustered node configuration
US7756968B1 (en) 2003-12-30 2010-07-13 Sap Ag Method and system for employing a hierarchical monitor tree for monitoring system resources in a data processing environment
US7475401B1 (en) 2003-12-30 2009-01-06 Sap Ag Filtered unified logging service
US7739374B1 (en) 2003-12-30 2010-06-15 Sap Ag System and method for configuring tracing and logging functions
US7725572B1 (en) 2003-12-30 2010-05-25 Sap Ag Notification architecture and method employed within a clustered node configuration
US7313720B1 (en) 2004-02-12 2007-12-25 Network Appliance, Inc. Technique for increasing the number of persistent consistency point images in a file system
US20050192850A1 (en) * 2004-03-01 2005-09-01 Lorenz Scott K. Systems and methods for using data structure language in web services
US7526550B2 (en) * 2004-03-26 2009-04-28 Sap Ag Unified logging service with a log viewer
US7721266B2 (en) * 2004-03-26 2010-05-18 Sap Ag Unified logging service with a logging formatter
US7213103B2 (en) * 2004-04-22 2007-05-01 Apple Inc. Accessing data storage systems without waiting for read errors
US8726129B1 (en) * 2004-07-23 2014-05-13 Hewlett-Packard Development Company, L.P. Methods of writing and recovering erasure coded data
US7266571B2 (en) * 2004-07-27 2007-09-04 International Business Machines Corporation Method and system for scheduling a partial ordered transactions for event correlation
US20060059021A1 (en) * 2004-09-15 2006-03-16 Jim Yulman Independent adjuster advisor
US8321439B2 (en) 2004-12-17 2012-11-27 Microsoft Corporation Quick filename lookup using name hash
US8606830B2 (en) 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US7873596B2 (en) * 2006-05-23 2011-01-18 Microsoft Corporation Extending cluster allocations in an extensible file system
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
US8271448B2 (en) * 2005-01-28 2012-09-18 Oracle International Corporation Method for strategizing protocol presumptions in two phase commit coordinator
US7810075B2 (en) * 2005-04-29 2010-10-05 Sap Ag Common trace files
US20060253768A1 (en) * 2005-05-03 2006-11-09 Intel Corporation Techniques to speculatively determine network protocol unit integrity
US7523146B2 (en) * 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US8495015B2 (en) 2005-06-21 2013-07-23 Apple Inc. Peer-to-peer syncing in a decentralized environment
US7809777B2 (en) * 2005-07-01 2010-10-05 Qnx Software Systems Gmbh & Co. Kg File system having deferred verification of data integrity
US7970803B2 (en) 2005-07-01 2011-06-28 Qnx Software Systems Gmbh & Co. Kg Optimized startup verification of file system integrity
US20070005874A1 (en) * 2005-07-01 2007-01-04 Dan Dodge File system storing transaction records in flash-like media
US7873683B2 (en) * 2005-07-01 2011-01-18 Qnx Software Systems Gmbh & Co. Kg File system having transaction record coalescing
US8959125B2 (en) * 2005-07-01 2015-02-17 226008 Ontario Inc. File system having inverted hierarchical structure
WO2007047346A2 (en) * 2005-10-14 2007-04-26 Symantec Operating Corporation Technique for timeline compression in a data store
EP1946179B1 (en) * 2005-11-10 2012-12-05 BAE Systems PLC Method of modifying a display apparatus
US20070226519A1 (en) * 2006-03-22 2007-09-27 Lower Level Software Llc System, method, and computer-readable medium for controlling data flow in a network
US7797670B2 (en) * 2006-04-14 2010-09-14 Apple Inc. Mirrored file system
CA2652115C (en) * 2006-05-12 2015-11-17 Goldengate Software, Inc. Apparatus and method for read consistency in a log mining system
US7860826B2 (en) 2006-08-04 2010-12-28 Apple Inc. Method and system for using global equivalency sets to identify data during peer-to-peer synchronization
US20080059510A1 (en) * 2006-08-31 2008-03-06 Daniel Cardamore Multimedia system framework having layer consolidating access to multiple media devices
US7908276B2 (en) 2006-08-25 2011-03-15 Qnx Software Systems Gmbh & Co. Kg Filesystem having a filename cache
US8566503B2 (en) * 2006-08-25 2013-10-22 Qnx Software Systems Limited Multimedia filesystem having unified representation of content on diverse multimedia devices
US20080147747A1 (en) * 2006-12-14 2008-06-19 Dan Cardamore Media system having synchronization with preemptive prioritization of synchronization order
US7657769B2 (en) 2007-01-08 2010-02-02 Marcy M Scott N-way synchronization of data
US7613738B2 (en) * 2007-01-16 2009-11-03 Microsoft Corporation FAT directory structure for use in transaction safe file system
US7747664B2 (en) * 2007-01-16 2010-06-29 Microsoft Corporation Storage system format for transaction safe file system
US8010391B2 (en) 2007-06-29 2011-08-30 Computer Sciences Corporation Claims processing hierarchy for insured
US8010389B2 (en) * 2007-06-04 2011-08-30 Computer Sciences Corporation Multiple policy claims processing
US8010390B2 (en) * 2007-06-04 2011-08-30 Computer Sciences Corporation Claims processing of information requirements
US8000986B2 (en) 2007-06-04 2011-08-16 Computer Sciences Corporation Claims processing hierarchy for designee
US8996409B2 (en) 2007-06-06 2015-03-31 Sony Computer Entertainment Inc. Management of online trading services using mediated communications
US8266391B2 (en) 2007-06-19 2012-09-11 SanDisk Technologies, Inc. Method for writing data of an atomic transaction to a memory device
WO2008156682A1 (en) * 2007-06-19 2008-12-24 Sandisk Corporation Memory device and method for writing data of an atomic transaction
US8775758B2 (en) 2007-12-28 2014-07-08 Sandisk Technologies Inc. Memory device and method for performing a write-abort-safe firmware update
US20090187431A1 (en) * 2008-01-18 2009-07-23 Frank Scalet Adjusting general damages values using equalization values
US8266114B2 (en) * 2008-09-22 2012-09-11 Riverbed Technology, Inc. Log structured content addressable deduplicating storage
US8290604B2 (en) 2008-08-19 2012-10-16 Sony Computer Entertainment America Llc Audience-condition based media selection
US8447421B2 (en) 2008-08-19 2013-05-21 Sony Computer Entertainment Inc. Traffic-based media selection
US20110167049A1 (en) * 2010-01-05 2011-07-07 Apple Inc. File system management techniques for computing environments and systems
US8504487B2 (en) 2010-09-21 2013-08-06 Sony Computer Entertainment America Llc Evolution of a user interface based on learned idiosyncrasies and collected data of a user
US8484219B2 (en) 2010-09-21 2013-07-09 Sony Computer Entertainment America Llc Developing a knowledge base associated with a user that facilitates evolution of an intelligent user interface
US20120331471A1 (en) * 2011-06-27 2012-12-27 Microsoft Corporation Executing molecular transactions
US8799873B2 (en) * 2012-05-10 2014-08-05 International Business Machines Corporation Collecting tracepoint data
US9105178B2 (en) 2012-12-03 2015-08-11 Sony Computer Entertainment Inc. Remote dynamic configuration of telemetry reporting through regular expressions
US9372743B1 (en) * 2013-09-30 2016-06-21 Emc Corporation System and method for storage management
US9418100B1 (en) 2013-09-30 2016-08-16 Emc Corporation System and method for storage management
US10496611B1 (en) * 2015-03-20 2019-12-03 EMC IP Holding Company LLC Method and system for file name based command execution in a storage system
US10089320B2 (en) * 2015-07-31 2018-10-02 Hiveio Inc. Method and apparatus for maintaining data consistency in an in-place-update file system with data deduplication
CN107562567A (zh) * 2016-06-30 2018-01-09 华为技术有限公司 一种数据处理方法以及数据处理设备
US10831509B2 (en) 2017-02-23 2020-11-10 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams
US11947978B2 (en) 2017-02-23 2024-04-02 Ab Initio Technology Llc Dynamic execution of parameterized applications for the processing of keyed network data streams
US10896168B2 (en) * 2017-04-28 2021-01-19 Hewlett Packard Enterprise Development Lp Application-defined object logging through a file system journal
US10642826B1 (en) 2018-08-30 2020-05-05 Gravic, Inc. Mixed-mode method for combining active/active and validation architectures utilizing a check integrity module

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58163052A (ja) * 1982-03-20 1983-09-27 Nippon Telegr & Teleph Corp <Ntt> 分散形デ−タベ−スシステムの障害処理方式
JPH01281543A (ja) * 1988-05-09 1989-11-13 Nippon Telegr & Teleph Corp <Ntt> 情報処理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4319336A (en) * 1979-02-02 1982-03-09 International Business Machines Corporation Transaction execution system with improved key function versatility
US4412285A (en) * 1981-04-01 1983-10-25 Teradata Corporation Multiprocessor intercommunication system and method
US4752910A (en) * 1984-10-30 1988-06-21 Prime Computer, Inc. Method and apparatus for continuous after-imaging
JPH0682336B2 (ja) * 1986-04-28 1994-10-19 日本電気株式会社 ブロック閉塞を用いたロールバックリカバリシステム
US4878167A (en) * 1986-06-30 1989-10-31 International Business Machines Corporation Method for managing reuse of hard log space by mapping log data during state changes and discarding the log data
US4819159A (en) * 1986-08-29 1989-04-04 Tolerant Systems, Inc. Distributed multiprocess transaction processing system and method
US4945474A (en) * 1988-04-08 1990-07-31 Internatinal Business Machines Corporation Method for restoring a database after I/O error employing write-ahead logging protocols
US5095421A (en) * 1989-08-17 1992-03-10 International Business Machines Corporation Transaction processing facility within an operating system environment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58163052A (ja) * 1982-03-20 1983-09-27 Nippon Telegr & Teleph Corp <Ntt> 分散形デ−タベ−スシステムの障害処理方式
JPH01281543A (ja) * 1988-05-09 1989-11-13 Nippon Telegr & Teleph Corp <Ntt> 情報処理装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315987B2 (en) 2010-03-26 2012-11-20 Fujitsu Limited Database management apparatus and recording medium with database management program recorded thereon
JP2017027382A (ja) * 2015-07-23 2017-02-02 日本電気株式会社 データベース管理装置、データベース管理システム、データベース管理方法及びプログラム

Also Published As

Publication number Publication date
JP2505070B2 (ja) 1996-06-05
US5201044A (en) 1993-04-06
EP0454340A3 (en) 1993-09-08
EP0454340A2 (en) 1991-10-30

Similar Documents

Publication Publication Date Title
JP2505070B2 (ja) デ―タ処理システムにおけるファイル状態の回復方法
US5333314A (en) Distributed data base system of composite subsystem type, and method of fault recovery for the system
JP3675802B2 (ja) 計算の状態を再構成する方法ならびにシステム
JP2505112B2 (ja) トランザクション管理方法
US7349927B2 (en) Transactional file system for realizing atomic update of plural files by transactions
US4945474A (en) Method for restoring a database after I/O error employing write-ahead logging protocols
WO2019239328A1 (en) System and method for persistence and replication of changes to a data store
US6247023B1 (en) Method for providing database recovery across multiple nodes
US6061769A (en) Data set backup in a shared environment
US7996363B2 (en) Real-time apply mechanism in standby database environments
US6018746A (en) System and method for managing recovery information in a transaction processing system
US5724581A (en) Data base management system for recovering from an abnormal condition
Mueller et al. A nested transaction mechanism for LOCUS
US7107294B2 (en) Method and apparatus for interrupting updates to a database to provide read-only access
JPH0628043B2 (ja) データ・ベース・システムの動作を回復する方法
JP2010102738A (ja) ハードウェアベースのファイルシステムのための装置および方法
JPH0212460A (ja) 索引木への並列アクセスのためのデータ・アクセス方法およびデータ処理システム
JPH08110895A (ja) 分散システムに使用されるノード装置及び記憶装置並びに分散システムにおける資源管理用サーバの復旧方法
JP3809858B2 (ja) 分散トランザクションの効率的同期点処理を実現する方法、システム、及びプログラム・プロダクト
US7051051B1 (en) Recovering from failed operations in a database system
Weinstein et al. Transactions and synchronization in a distributed operating system
JP2939414B2 (ja) 二重系計算機のデータベース等価処理装置
JPH033046A (ja) ログ記録管理方式
JPH0816881B2 (ja) データベース更新方法
JP3290182B2 (ja) 共用環境におけるデータ・セットのバックアップ方法及び装置