JPH06195250A - データベースを更新するための方法、システム及び装置 - Google Patents
データベースを更新するための方法、システム及び装置Info
- Publication number
- JPH06195250A JPH06195250A JP5255526A JP25552693A JPH06195250A JP H06195250 A JPH06195250 A JP H06195250A JP 5255526 A JP5255526 A JP 5255526A JP 25552693 A JP25552693 A JP 25552693A JP H06195250 A JPH06195250 A JP H06195250A
- Authority
- JP
- Japan
- Prior art keywords
- database
- records
- redo
- transaction
- record
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2071—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99937—Sorting
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 障害時の回復のため、活動データベースの複
製をバックアップ・システムに連続的に維持するための
方法及びシステムを提供する。 【構成】 活動システムから伝送されたredoレコー
ドをバックアップ・システム・メモリのデータスペース
作業域に受け取る。コミットされていないトランザクシ
ョンに対する作業域内のredoレコードはグループ化
されるが、トランザクションがコミットされると、その
トランザクションに対するredoレコードが、データ
ベース名、データベース内のブロック番号、ブロック内
のオフセット位置、及びその発生順にしたがって分類さ
れる。分類されたredoレコードは、バックアップ・
データベースからの更新ブロック内の対応するデータ・
ブロックに順次適用される。更新ブロックはデータベー
スに直ちに書き戻される。
製をバックアップ・システムに連続的に維持するための
方法及びシステムを提供する。 【構成】 活動システムから伝送されたredoレコー
ドをバックアップ・システム・メモリのデータスペース
作業域に受け取る。コミットされていないトランザクシ
ョンに対する作業域内のredoレコードはグループ化
されるが、トランザクションがコミットされると、その
トランザクションに対するredoレコードが、データ
ベース名、データベース内のブロック番号、ブロック内
のオフセット位置、及びその発生順にしたがって分類さ
れる。分類されたredoレコードは、バックアップ・
データベースからの更新ブロック内の対応するデータ・
ブロックに順次適用される。更新ブロックはデータベー
スに直ちに書き戻される。
Description
【0001】
【産業上の利用分野】本発明はコンピュータ化トランザ
クション処理に関し、詳細にいえば、データベース・ト
ランザクションのログ・レコードを使用したデータベー
スの更新に関する。
クション処理に関し、詳細にいえば、データベース・ト
ランザクションのログ・レコードを使用したデータベー
スの更新に関する。
【0002】
【従来の技術】正確で一貫性のあるデータを維持すると
ともに、このデータの検索及び修正を容易に行えるよう
にするために、コンピュータ化されたデータベースが多
くの企業で使用されている。データはコンピュータ・シ
ステムに接続されたディスクやその他の直接アクセス記
憶装置(DASD)などのデータ記憶装置のレコードに
電子的に記憶される。コンピュータ・システムはメモ
リ、及びデータベース管理システム(DBMS)ソフト
ウェアが稼働する中央演算処理装置(CPU)を有して
いる。
ともに、このデータの検索及び修正を容易に行えるよう
にするために、コンピュータ化されたデータベースが多
くの企業で使用されている。データはコンピュータ・シ
ステムに接続されたディスクやその他の直接アクセス記
憶装置(DASD)などのデータ記憶装置のレコードに
電子的に記憶される。コンピュータ・システムはメモ
リ、及びデータベース管理システム(DBMS)ソフト
ウェアが稼働する中央演算処理装置(CPU)を有して
いる。
【0003】DBMSはデータベースへのアクセス及び
データベースの処理を管理する。データベースにデータ
ベースのユーザが出した一連のコマンドによってアクセ
スして、データを検索したり、あるいはデータを更新す
ることができる。DBMSはユーザが入力した各コマン
ドを、個別の「トランザクション」として処理する。単
一の更新トランザクションは通常、一連のデータベース
のレコードに対して行われる多数の変更からなっている
(たとえば、ある管理職の各従業員に対する新しい管理
職情報の更新)。データベースのレコードに対して変更
がすべて正常に行われると、トランザクションは「コミ
ット」されたとみなされる。データベースのレコードに
対して行われる各変更の記録はログに記録され、このロ
グを使用してシステムまたは媒体が障害を起こした場合
に、データベースを複製または回復することができる。
ログをDASDや磁気テープなどの補助記憶装置に格納
することもできる。
データベースの処理を管理する。データベースにデータ
ベースのユーザが出した一連のコマンドによってアクセ
スして、データを検索したり、あるいはデータを更新す
ることができる。DBMSはユーザが入力した各コマン
ドを、個別の「トランザクション」として処理する。単
一の更新トランザクションは通常、一連のデータベース
のレコードに対して行われる多数の変更からなっている
(たとえば、ある管理職の各従業員に対する新しい管理
職情報の更新)。データベースのレコードに対して変更
がすべて正常に行われると、トランザクションは「コミ
ット」されたとみなされる。データベースのレコードに
対して行われる各変更の記録はログに記録され、このロ
グを使用してシステムまたは媒体が障害を起こした場合
に、データベースを複製または回復することができる。
ログをDASDや磁気テープなどの補助記憶装置に格納
することもできる。
【0004】コンピュータ化されたデータベースに依存
している企業では、システム障害の場合にも業務を継続
することが必要である。コンピュータ・システムがデー
タへのアクセスを損なうハードウェア及びソフトウェア
の障害を受けやすいものであるため、障害の発生時に処
理中であった更新トランザクションを正確に記録してお
くことが必要となっている。
している企業では、システム障害の場合にも業務を継続
することが必要である。コンピュータ・システムがデー
タへのアクセスを損なうハードウェア及びソフトウェア
の障害を受けやすいものであるため、障害の発生時に処
理中であった更新トランザクションを正確に記録してお
くことが必要となっている。
【0005】データベース媒体回復処理には周知の順方
向回復処理(forward recovery process)があるが、こ
の処理においては、ログに記録されている回復データを
使用して以前のバージョンを更新することによって、デ
ータベース単位が再構築される。データベース単位のオ
リジナル・バージョンのコピーは継続(stable)記憶域
に保管されている。障害によってデータベースの現行コ
ピーが破壊された場合、保管されているバージョンを復
元し、保管されていたバージョンにログの変更点を失わ
れたバージョンに対してこれらが行われたのと同じ順序
で適用することによって、データベース・ユニットの最
新現行コピーが再構築される。
向回復処理(forward recovery process)があるが、こ
の処理においては、ログに記録されている回復データを
使用して以前のバージョンを更新することによって、デ
ータベース単位が再構築される。データベース単位のオ
リジナル・バージョンのコピーは継続(stable)記憶域
に保管されている。障害によってデータベースの現行コ
ピーが破壊された場合、保管されているバージョンを復
元し、保管されていたバージョンにログの変更点を失わ
れたバージョンに対してこれらが行われたのと同じ順序
で適用することによって、データベース・ユニットの最
新現行コピーが再構築される。
【0006】データベースの複製を遠隔地に格納してお
き、サイトの1個所で発生した災害によってシステムが
両方とも使えなくなるようなことを少なくすることがで
きる。分散データベースに非同期の順方向回復処理を行
なうと、元のトランザクション処理が2重化される。主
データベースに対する変更はこれらが発生したのと同じ
順序でログに記録され、適用される。
き、サイトの1個所で発生した災害によってシステムが
両方とも使えなくなるようなことを少なくすることがで
きる。分散データベースに非同期の順方向回復処理を行
なうと、元のトランザクション処理が2重化される。主
データベースに対する変更はこれらが発生したのと同じ
順序でログに記録され、適用される。
【0007】多くのDBMSはデータベース管理に対す
る階層的手法に基づいたものである。このようなシステ
ムの1つはIBMのIMSソフトウェア・プロダクトで
ある。IMSの高速機能は銀行の出納係などのエンド・
ユーザが直接入力したコマンドによって駆動される「オ
ンライン・システム」に特に適したものである。これら
のシステムはデータベースに入力され、迅速に処理する
必要のある大量のコマンドを伴っている。高速パス(fa
st path)・データベースは、そのデータベースが格納
されているディスクの区域(area)に対応した240個
の独立した区域に分割することができる。1枚のディス
クが1個の区域に対応していることもある。
る階層的手法に基づいたものである。このようなシステ
ムの1つはIBMのIMSソフトウェア・プロダクトで
ある。IMSの高速機能は銀行の出納係などのエンド・
ユーザが直接入力したコマンドによって駆動される「オ
ンライン・システム」に特に適したものである。これら
のシステムはデータベースに入力され、迅速に処理する
必要のある大量のコマンドを伴っている。高速パス(fa
st path)・データベースは、そのデータベースが格納
されているディスクの区域(area)に対応した240個
の独立した区域に分割することができる。1枚のディス
クが1個の区域に対応していることもある。
【0008】メモリの必要量を節約するために、高速パ
ス・システムは多くの他のIMSデータベースで使用さ
れているいわゆるルックアサイド・データベース・バッ
ファ・プールを持っていない。ルックアサイド・バッフ
ァ(look-aside buffer)は、外部記憶装置から転送さ
れたデータを一時的に保持し、データベースの探索中に
より迅速にデータ・アクセスできるようにした、コンピ
ュータのメモリ区域である。メモリの1ページまたは複
数ページが長時間にわたってバッファ内にとどまり、こ
れらのページ内のレコードに対する以降の変更は、変更
を継続記憶域に書き込むことなく、バッファに対して直
接行われる。最終的には、メモリのページは継続記憶域
内の対応する記憶セクタに戻される。ルックアサイド機
構を使用するバッファ・ハンドラは入出力の要件を軽減
する。しかしながら、共用バッファ・プールは、特に更
新部分がデータベースのブロックに比較してきわめて短
い場合に、スペース使用効率の面で不利である。
ス・システムは多くの他のIMSデータベースで使用さ
れているいわゆるルックアサイド・データベース・バッ
ファ・プールを持っていない。ルックアサイド・バッフ
ァ(look-aside buffer)は、外部記憶装置から転送さ
れたデータを一時的に保持し、データベースの探索中に
より迅速にデータ・アクセスできるようにした、コンピ
ュータのメモリ区域である。メモリの1ページまたは複
数ページが長時間にわたってバッファ内にとどまり、こ
れらのページ内のレコードに対する以降の変更は、変更
を継続記憶域に書き込むことなく、バッファに対して直
接行われる。最終的には、メモリのページは継続記憶域
内の対応する記憶セクタに戻される。ルックアサイド機
構を使用するバッファ・ハンドラは入出力の要件を軽減
する。しかしながら、共用バッファ・プールは、特に更
新部分がデータベースのブロックに比較してきわめて短
い場合に、スペース使用効率の面で不利である。
【0009】高速パス・データベースの他のIMSデー
タベースとの他の相違点は、更新されるデータベース・
レコードの事前イメージ(「undo」レコードと呼
ぶ)及びトランザクションの結果としてデータベースに
対して行われる変更の事後イメージ(「redo」レコ
ードと呼ぶ)の両方をログしないことである。これはユ
ーザ・コマンドを処理するときの効率を上げるために行
われる。undoレコードを使用する場合、DBMSは
受け取ったものとしてredoレコードを書き込む。ト
ランザクションがコミットされない場合、DBMSはu
ndoレコードを使用して、レコードをその変更前の通
りに書き直す(undoレコードに保管されているとお
りに)。高速パス・システムはコミット時にredoレ
コードだけを書き込み、その後すべての変更をディスク
に書き込むので、undoレコードを保管する必要がな
い。
タベースとの他の相違点は、更新されるデータベース・
レコードの事前イメージ(「undo」レコードと呼
ぶ)及びトランザクションの結果としてデータベースに
対して行われる変更の事後イメージ(「redo」レコ
ードと呼ぶ)の両方をログしないことである。これはユ
ーザ・コマンドを処理するときの効率を上げるために行
われる。undoレコードを使用する場合、DBMSは
受け取ったものとしてredoレコードを書き込む。ト
ランザクションがコミットされない場合、DBMSはu
ndoレコードを使用して、レコードをその変更前の通
りに書き直す(undoレコードに保管されているとお
りに)。高速パス・システムはコミット時にredoレ
コードだけを書き込み、その後すべての変更をディスク
に書き込むので、undoレコードを保管する必要がな
い。
【0010】高速パス・データベースの再始動処理はr
edoログ・レコードを使用して、障害が発生したため
行われていなかったデータベースのディスク書込みを完
了することからなっている。
edoログ・レコードを使用して、障害が発生したため
行われていなかったデータベースのディスク書込みを完
了することからなっている。
【0011】高速パス・データベースとその複製データ
ベースの間に一貫性を確保するためには、主データベー
スの処理を複製データベースに反映させる必要がある。
複製データベースにレコード処理を適用するためのスル
ープットは、主データベースに対してトランザクション
処理システムが達成するものと少なくとも同程度でなけ
ればならない。複製の処理時の資源の消費は、トランザ
クション処理システム全体の消費と比較して低くなけれ
ばならない。データベースが主データベースとトランザ
クションの点で一貫し、かつ同一であるようにするに
は、逐次化が必要である。主データベースの可用性が複
製に対するトランザクション処理を追加することによっ
て低下してはならない。したがって、変更点をバックア
ップ・データベースへ書き込むための入出力操作を効率
のよいものとしなければならない。
ベースの間に一貫性を確保するためには、主データベー
スの処理を複製データベースに反映させる必要がある。
複製データベースにレコード処理を適用するためのスル
ープットは、主データベースに対してトランザクション
処理システムが達成するものと少なくとも同程度でなけ
ればならない。複製の処理時の資源の消費は、トランザ
クション処理システム全体の消費と比較して低くなけれ
ばならない。データベースが主データベースとトランザ
クションの点で一貫し、かつ同一であるようにするに
は、逐次化が必要である。主データベースの可用性が複
製に対するトランザクション処理を追加することによっ
て低下してはならない。したがって、変更点をバックア
ップ・データベースへ書き込むための入出力操作を効率
のよいものとしなければならない。
【0012】
【発明が解決しようとする課題】活動サイト、すなわち
活動データベース側からの可用性をもたらす必要がある
ため複製データベースには問題があり、また各トランザ
クションに関してかなりの数のメッセージを交換する必
要があるという点で性能にも問題がある。活動データベ
ースを複製するのに使用されるレコードの処理の取扱い
のロックなどのデータベース逐次化技法に関連して必要
とされるメモリ及び時間の点で大きな負担がかかる。し
たがって、逐次化技法の使用を回避するとともに、デー
タベースの保全性を維持することが有利である。さら
に、ルックアサイド・バッファを使用しないバックアッ
プ・システムには、入出力操作の効率が特に重要であ
る。
活動データベース側からの可用性をもたらす必要がある
ため複製データベースには問題があり、また各トランザ
クションに関してかなりの数のメッセージを交換する必
要があるという点で性能にも問題がある。活動データベ
ースを複製するのに使用されるレコードの処理の取扱い
のロックなどのデータベース逐次化技法に関連して必要
とされるメモリ及び時間の点で大きな負担がかかる。し
たがって、逐次化技法の使用を回避するとともに、デー
タベースの保全性を維持することが有利である。さら
に、ルックアサイド・バッファを使用しないバックアッ
プ・システムには、入出力操作の効率が特に重要であ
る。
【0013】特願平2−235953号において、複製
データベースの変更処理は主データベースのトランザク
ション・ログから得られる複数のredoレコードをそ
れぞれの待ち行列に分離することによって達成される。
主データベースの転送単位に関するすべてのトランザク
ション・レコードがログ・シーケンスの同一の待ち行列
におかれるように、これらのredoレコードが分離さ
れる。redoレコードを待ち行列にランダムに割り当
てるハッシング機能に基づいて、redoレコードが分
散される。
データベースの変更処理は主データベースのトランザク
ション・ログから得られる複数のredoレコードをそ
れぞれの待ち行列に分離することによって達成される。
主データベースの転送単位に関するすべてのトランザク
ション・レコードがログ・シーケンスの同一の待ち行列
におかれるように、これらのredoレコードが分離さ
れる。redoレコードを待ち行列にランダムに割り当
てるハッシング機能に基づいて、redoレコードが分
散される。
【0014】データベース複製法は、ディスク記憶装置
からのデータがかなりの時間の間保持され、変更をディ
スクに書き込むことなく、バッファ内のデータに変更が
反復して行われる「ルックアサイド・バッファ」を使用
するデータベース・システムに特に適するものである。
高速パス・データベース・システムにルックアサイド・
バッファがないため、データベースを更新する場合に
は、このシステムの入出力効率がよいことが特に重要で
ある。
からのデータがかなりの時間の間保持され、変更をディ
スクに書き込むことなく、バッファ内のデータに変更が
反復して行われる「ルックアサイド・バッファ」を使用
するデータベース・システムに特に適するものである。
高速パス・データベース・システムにルックアサイド・
バッファがないため、データベースを更新する場合に
は、このシステムの入出力効率がよいことが特に重要で
ある。
【0015】
【課題を解決するための手段】本発明はバックアップ・
コンピュータ・システムと通信する少なくとも1つの活
動コンピュータ・システムを含んでおり、各コンピュー
タ・システムがプロセッサ(CPU)、メモリ及び少な
くとも1つのデータ記憶装置を有しているトランザクシ
ョン処理システムに関する。データベースは記憶装置の
ブロック内のオフセット位置によって編成された複数個
のデータ・レコードとして格納される。redoログ・
レコードはデータベース・トランザクションがコミット
された場合に、データベース・トランザクションの一部
としてデータベースに行われる変更を表す。
コンピュータ・システムと通信する少なくとも1つの活
動コンピュータ・システムを含んでおり、各コンピュー
タ・システムがプロセッサ(CPU)、メモリ及び少な
くとも1つのデータ記憶装置を有しているトランザクシ
ョン処理システムに関する。データベースは記憶装置の
ブロック内のオフセット位置によって編成された複数個
のデータ・レコードとして格納される。redoログ・
レコードはデータベース・トランザクションがコミット
された場合に、データベース・トランザクションの一部
としてデータベースに行われる変更を表す。
【0016】本発明の1形態において、コンピュータで
実現されたトラッキング方法がバックアップ・データベ
ースを更新し、これをトランザクション処理システムの
活動データベースと一貫したものにする。活動システム
から伝送されるredoレコードはバックアップ・シス
テム・メモリのデータスペース作業域に受け取られる。
コミットされていないデータベース・トランザクション
に対するredoレコードは、他のコミットされていな
いトランザクションからのredoレコード及びコミッ
トされたトランザクションからのredoレコードとは
別にグループ化される。
実現されたトラッキング方法がバックアップ・データベ
ースを更新し、これをトランザクション処理システムの
活動データベースと一貫したものにする。活動システム
から伝送されるredoレコードはバックアップ・シス
テム・メモリのデータスペース作業域に受け取られる。
コミットされていないデータベース・トランザクション
に対するredoレコードは、他のコミットされていな
いトランザクションからのredoレコード及びコミッ
トされたトランザクションからのredoレコードとは
別にグループ化される。
【0017】トランザクションがコミットされると、こ
のコミットされたトランザクションに対するredoレ
コードは、データベース名、データベース内のブロック
番号、ブロック内のオフセット位置、及びその発生順
(sequence of occurence)にしたがい、他のコミット
されていないトランザクションからのredoレコード
で分類される。バックアップ・データベースからの複数
個の更新ブロックが、バックアップ・システム・メモリ
内のバッファに読み込まれる。分類されたコミットre
doレコードは更新ブロック内の対応するデータ・レコ
ードに順次適用される。
のコミットされたトランザクションに対するredoレ
コードは、データベース名、データベース内のブロック
番号、ブロック内のオフセット位置、及びその発生順
(sequence of occurence)にしたがい、他のコミット
されていないトランザクションからのredoレコード
で分類される。バックアップ・データベースからの複数
個の更新ブロックが、バックアップ・システム・メモリ
内のバッファに読み込まれる。分類されたコミットre
doレコードは更新ブロック内の対応するデータ・レコ
ードに順次適用される。
【0018】本発明の他の形態において、コンピュータ
・システムがバックアップ・データベースを更新し、こ
れを活動データベースと一貫したものにする。ログ・レ
コード処理手段がトランザクションがコミットされるま
で、その発生順に単一のトランザクションに対するre
doレコードをバックアップ・コンピュータのメモリ内
で個別にグループ化するために設けられている。データ
ベース名、データベース内のブロック番号、及びブロッ
ク内のオフセット値にしたがって、その発生順にコミッ
トされたredoレコードを分類するために、分類手段
が設けられている。複数個の更新ブロックをデータベー
スからバックアップ・システムのメモリのバッファに読
み込み、更新ブロックを記憶装置に書き戻すための入出
力ハンドラ手段が設けられている。コミットされたre
doレコードを更新ブロックに適用するための手段も設
けられている。
・システムがバックアップ・データベースを更新し、こ
れを活動データベースと一貫したものにする。ログ・レ
コード処理手段がトランザクションがコミットされるま
で、その発生順に単一のトランザクションに対するre
doレコードをバックアップ・コンピュータのメモリ内
で個別にグループ化するために設けられている。データ
ベース名、データベース内のブロック番号、及びブロッ
ク内のオフセット値にしたがって、その発生順にコミッ
トされたredoレコードを分類するために、分類手段
が設けられている。複数個の更新ブロックをデータベー
スからバックアップ・システムのメモリのバッファに読
み込み、更新ブロックを記憶装置に書き戻すための入出
力ハンドラ手段が設けられている。コミットされたre
doレコードを更新ブロックに適用するための手段も設
けられている。
【0019】本発明の他の形態において、トランザクシ
ョン処理システムはデータ記憶装置に格納されたデータ
ベース、ならびにトランザクションの一部としてデータ
ベースに対して行われる変更を表すredoレコード及
びトランザクションがコミットされたことを示すコミッ
ト・レコードを含む一連のレコードを含んだ、補助記憶
装置に格納されたデータベースに対するログを含んでい
る。トラッキング・システムはredoレコードを使用
してデータベースを更新する。トラッキング・システム
はコミット・レコードがトランザクションのために受け
取られるまで、その発生順に、コミットされたredo
レコードを分類するためのレコード処理手段と、コミッ
トされたトランザクションに対する複数個の分類済みr
edoレコードを分類するためのログ・アキュムレータ
手段と、複数個のブロックをデータベースからバッファ
へ定期的に順次読み込むための手段と、分類されたre
doレコードをバッファのブロックへ順次適用するため
の手段と、ブロックを記憶装置へ書き戻すための手段と
からなっている。分類されたredoレコードは、デー
タベース名、データベースのブロック番号、ブロック内
のオフセット位置及びその発生順にしたがって分類され
たものである。
ョン処理システムはデータ記憶装置に格納されたデータ
ベース、ならびにトランザクションの一部としてデータ
ベースに対して行われる変更を表すredoレコード及
びトランザクションがコミットされたことを示すコミッ
ト・レコードを含む一連のレコードを含んだ、補助記憶
装置に格納されたデータベースに対するログを含んでい
る。トラッキング・システムはredoレコードを使用
してデータベースを更新する。トラッキング・システム
はコミット・レコードがトランザクションのために受け
取られるまで、その発生順に、コミットされたredo
レコードを分類するためのレコード処理手段と、コミッ
トされたトランザクションに対する複数個の分類済みr
edoレコードを分類するためのログ・アキュムレータ
手段と、複数個のブロックをデータベースからバッファ
へ定期的に順次読み込むための手段と、分類されたre
doレコードをバッファのブロックへ順次適用するため
の手段と、ブロックを記憶装置へ書き戻すための手段と
からなっている。分類されたredoレコードは、デー
タベース名、データベースのブロック番号、ブロック内
のオフセット位置及びその発生順にしたがって分類され
たものである。
【0020】
【実施例】図1を参照すると、活動コンピュータ・シス
テム12及びバックアップ・コンピュータ・システム
(トラッキング・システムまたはシャドウ・システムと
も呼ぶ)13は各々プロセッサ(CPU)14、15、
メモリ16、17、直接アクセス記憶装置(DASD)
などの1台または複数台のデータ記憶装置18、19、
及びDASDまたは磁気テープなどの1台または複数台
の補助記憶装置20、21を有している。
テム12及びバックアップ・コンピュータ・システム
(トラッキング・システムまたはシャドウ・システムと
も呼ぶ)13は各々プロセッサ(CPU)14、15、
メモリ16、17、直接アクセス記憶装置(DASD)
などの1台または複数台のデータ記憶装置18、19、
及びDASDまたは磁気テープなどの1台または複数台
の補助記憶装置20、21を有している。
【0021】1つまたは複数のデータベースが記憶装置
18に格納されている。データベースにアクセスするた
びに、このアクセスの記録がログ・レコードとして記録
される。データベースに対するすべてのトランザクショ
ンの記録が補助記憶装置20に格納された1つまたは複
数のログに保持されている。データベース管理システム
(DBMS)ソフトウェアが活動コンピュータ・システ
ム12によって稼動され、データベースへのアクセスを
管理する。
18に格納されている。データベースにアクセスするた
びに、このアクセスの記録がログ・レコードとして記録
される。データベースに対するすべてのトランザクショ
ンの記録が補助記憶装置20に格納された1つまたは複
数のログに保持されている。データベース管理システム
(DBMS)ソフトウェアが活動コンピュータ・システ
ム12によって稼動され、データベースへのアクセスを
管理する。
【0022】システムが障害を起こした場合、データ・
ディスクの書込みが妨害され、適切に記録されないこと
がある。回復処理には継続(stable)記憶域のトランザ
クション・ログの保守が必要である。トランザクション
・ログはすべてのトランザクションを一連のログ・レコ
ードの形で記録する。
ディスクの書込みが妨害され、適切に記録されないこと
がある。回復処理には継続(stable)記憶域のトランザ
クション・ログの保守が必要である。トランザクション
・ログはすべてのトランザクションを一連のログ・レコ
ードの形で記録する。
【0023】IBMのVTAM通信プロダクトなどのネ
ットワーク機構22によって、活動システム12が遠隔
地におかれたバックアップ・システム13と通信するこ
とが可能となる。活動DBMSは、レコードがトランザ
クション処理中に作成されると、ログ・レコードをバッ
クアップ・システム13が作動させているバックアップ
DBMSへ送る。ログ・レコードはバックアップ補助記
憶装置21に格納される。これらのログ・レコードはバ
ックアップ・システムの記憶装置19に格納されている
バックアップ・データベースないしシャドウ・データベ
ースを更新するために使用される。トラッキング・バッ
クアップ・システムは活動システムの2倍の速度で作動
する。
ットワーク機構22によって、活動システム12が遠隔
地におかれたバックアップ・システム13と通信するこ
とが可能となる。活動DBMSは、レコードがトランザ
クション処理中に作成されると、ログ・レコードをバッ
クアップ・システム13が作動させているバックアップ
DBMSへ送る。ログ・レコードはバックアップ補助記
憶装置21に格納される。これらのログ・レコードはバ
ックアップ・システムの記憶装置19に格納されている
バックアップ・データベースないしシャドウ・データベ
ースを更新するために使用される。トラッキング・バッ
クアップ・システムは活動システムの2倍の速度で作動
する。
【0024】IBMのIMS高速機能データベースを使
用して、データベースを複製するためにログ・レコード
を効率的に処理する本発明の好ましい実施例を説明す
る。高速パス(fast path)・システムを好ましい実施
例の説明の基礎として使用するが、本発明はこのシステ
ムとともに使用することに限定されるものではない。本
発明の方法及びシステムを当分野の技術者に周知の他の
システムとともに使用することができる。さらに、本発
明のシステム及び方法は、バックアップ・システムが活
動データベースとの一貫性を維持するためにredoレ
コードを処理することに限定されるものでもない。たと
えば、本発明のシステム及び方法を、redoログ・レ
コードを使用して、データベースをシステム障害から回
復させるために使用することもできる。
用して、データベースを複製するためにログ・レコード
を効率的に処理する本発明の好ましい実施例を説明す
る。高速パス(fast path)・システムを好ましい実施
例の説明の基礎として使用するが、本発明はこのシステ
ムとともに使用することに限定されるものではない。本
発明の方法及びシステムを当分野の技術者に周知の他の
システムとともに使用することができる。さらに、本発
明のシステム及び方法は、バックアップ・システムが活
動データベースとの一貫性を維持するためにredoレ
コードを処理することに限定されるものでもない。たと
えば、本発明のシステム及び方法を、redoログ・レ
コードを使用して、データベースをシステム障害から回
復させるために使用することもできる。
【0025】高速パスDBMSはredoログ・レコー
ドを使用して、更新トランザクションの結果としてデー
タベース・レコードに行われる変更のコピーをもたら
す。トランザクションの正常な完了は、ログのコミット
・レコードによって記録されるコミット操作によって示
される。レコードの変更後、トランザクションが異常終
了した場合、打ち切り(abort)レコードがログに入力
される。DBMSはコミット時にredoログ・レコー
ドを書き込み、その後、すべての変更をデータベース・
ディスクに書き込む。システム障害後の再起動処理に
は、redoログ・レコードを使用してデータベース・
ディスクの書込みを完了することが含まれる。回復処理
はトランザクション境界及び付随するredoレコード
を追跡する。
ドを使用して、更新トランザクションの結果としてデー
タベース・レコードに行われる変更のコピーをもたら
す。トランザクションの正常な完了は、ログのコミット
・レコードによって記録されるコミット操作によって示
される。レコードの変更後、トランザクションが異常終
了した場合、打ち切り(abort)レコードがログに入力
される。DBMSはコミット時にredoログ・レコー
ドを書き込み、その後、すべての変更をデータベース・
ディスクに書き込む。システム障害後の再起動処理に
は、redoログ・レコードを使用してデータベース・
ディスクの書込みを完了することが含まれる。回復処理
はトランザクション境界及び付随するredoレコード
を追跡する。
【0026】バックアップ高速パスDBMSは、活動シ
ステムから受け取ったログ・データからのredoレコ
ードを使用して、活動システムのデータベースのバック
アップまたはシャドウのコピーを維持する。管理対象の
データベースは転送単位で継続記憶域19に格納され
る。転送単位は管理プログラムが入出力処理のために継
続記憶域から取り出す基本単位である。
ステムから受け取ったログ・データからのredoレコ
ードを使用して、活動システムのデータベースのバック
アップまたはシャドウのコピーを維持する。管理対象の
データベースは転送単位で継続記憶域19に格納され
る。転送単位は管理プログラムが入出力処理のために継
続記憶域から取り出す基本単位である。
【0027】IMSが稼働しているMVSオペレーティ
ング・システムは複数のデータ・ブロックをディスク記
憶装置に書き込む。アクセス方式が複数のレコード(各
レコードはデータ・バイトからなっている)をブロック
にグループ化する。各レコードはレコードが格納される
ブロック内のオフセット値を有している。これらのレコ
ードをLRECLまたはCIと呼ぶ。CIとはVSAM
(仮想記憶アクセス方式)の制御インターバルである。
DASDに格納されているデータにアクセスするにはさ
まざまな方法がある。相対バイト・アドレス(RBA)
及び相対ブロック番号(RBN、CI番号)がIMS
DBMS及びVSAMで使用されている。
ング・システムは複数のデータ・ブロックをディスク記
憶装置に書き込む。アクセス方式が複数のレコード(各
レコードはデータ・バイトからなっている)をブロック
にグループ化する。各レコードはレコードが格納される
ブロック内のオフセット値を有している。これらのレコ
ードをLRECLまたはCIと呼ぶ。CIとはVSAM
(仮想記憶アクセス方式)の制御インターバルである。
DASDに格納されているデータにアクセスするにはさ
まざまな方法がある。相対バイト・アドレス(RBA)
及び相対ブロック番号(RBN、CI番号)がIMS
DBMS及びVSAMで使用されている。
【0028】図2を参照すると、redoレコードはデ
ータベースを示すフィールド30、ブロック番号を示す
フィールド32、ブロック内のオフセット位置を示すフ
ィールド34、及び従業員データベースに対する新しい
管理職の名前などの実際の更新データが入っているフィ
ールド36を有している。
ータベースを示すフィールド30、ブロック番号を示す
フィールド32、ブロック内のオフセット位置を示すフ
ィールド34、及び従業員データベースに対する新しい
管理職の名前などの実際の更新データが入っているフィ
ールド36を有している。
【0029】図3にログ・レコードを使用して活動デー
タベースのバックアップ・データベースを維持するため
のシステムの実施形態の概要を示す。redoログ・レ
コード(図3では5950で示す)42とコミット・ロ
グ・レコード及び異常終了ログ・レコード(図3では5
937/38で示す)44を含んでいるログ・レコード
40を、バックアップ・システム46のDBMS制御域
が活動システムから受け取る。データベース・トラッカ
要素48は一連の操作コマンド・ルーチンで、ログ・ル
ータ50からログ・レコードを受け取り、DBMS制御
域の外部にあり、データスペース(52)と呼ばれるバ
ックアップ・システムのメモリ区域内の待ち行列にre
doログ・レコードを入れる。データベース・トラッカ
48は格納されているredoログ・レコードをバック
アップ・データベースに適用し、データベースのシャド
ウ化をサポートすることも行う。
タベースのバックアップ・データベースを維持するため
のシステムの実施形態の概要を示す。redoログ・レ
コード(図3では5950で示す)42とコミット・ロ
グ・レコード及び異常終了ログ・レコード(図3では5
937/38で示す)44を含んでいるログ・レコード
40を、バックアップ・システム46のDBMS制御域
が活動システムから受け取る。データベース・トラッカ
要素48は一連の操作コマンド・ルーチンで、ログ・ル
ータ50からログ・レコードを受け取り、DBMS制御
域の外部にあり、データスペース(52)と呼ばれるバ
ックアップ・システムのメモリ区域内の待ち行列にre
doログ・レコードを入れる。データベース・トラッカ
48は格納されているredoログ・レコードをバック
アップ・データベースに適用し、データベースのシャド
ウ化をサポートすることも行う。
【0030】redoレコードをシングル・スレッドで
作動しているログ・ルータ50によってコピーし、MV
Sオペレーティング・システムの制御ブロックTCBを
使用してログ・レコードの順序を維持する。redoレ
コードはログ・ルータ要素から時間順に転送される。ロ
グ・ルータ50は非同期で作動し、ログ・レコードの処
理を待たない。
作動しているログ・ルータ50によってコピーし、MV
Sオペレーティング・システムの制御ブロックTCBを
使用してログ・レコードの順序を維持する。redoレ
コードはログ・ルータ要素から時間順に転送される。ロ
グ・ルータ50は非同期で作動し、ログ・レコードの処
理を待たない。
【0031】redoレコードは、充分な数のレコード
が蓄積されて、ディスクへの変更の書込みが確実になる
まで、データスペース(52)に格納されている。一時
入出力バッファ54を使用して、更新データをバックア
ップ・データベース(シャドウ・データベース)56に
書き込む。redoレコードがデータスペースに格納さ
れている間に、データベース・トラッカ48はredo
レコードを分類し(sort)、入出力操作を効率化する。
トラッカ48は異常終了したトランザクションのred
oレコードがディスクに記録されないようにもする。
が蓄積されて、ディスクへの変更の書込みが確実になる
まで、データスペース(52)に格納されている。一時
入出力バッファ54を使用して、更新データをバックア
ップ・データベース(シャドウ・データベース)56に
書き込む。redoレコードがデータスペースに格納さ
れている間に、データベース・トラッカ48はredo
レコードを分類し(sort)、入出力操作を効率化する。
トラッカ48は異常終了したトランザクションのred
oレコードがディスクに記録されないようにもする。
【0032】データベース・トラッカ48によって行わ
れるredoレコードの処理には基本的に、2つの段階
がある。第1に、redoレコードをデータスペースの
待ち行列にいれ、ログ・ルータが待機しないようにす
る。コミット・ログ・レコードまたは異常終了ログ・レ
コードが出現するまで、redoレコードを一時待ち行
列に保管する。コミット・レコードを受け取り、トラッ
カがこれを識別したら、関連するredoレコードを蓄
積処理のため区域ごとに待ち行列に入れる。入出力処理
がマイルストーン(milestone)によってトリガされる
まで、redoレコードは蓄積される。蓄積処理中に、
redoレコードを相対ディスク・スペース順に分類
し、同一のブロックを変更するレコードのログ順序を保
持する。redoレコード処理の第2段階は、更新デー
タをバックアップ・データベースに適用(apply)する
ことである。トラッカ48によってredoレコードを
蓄積し、分類することで、バックアップ・データベース
に対する入出力操作の数が少なくなり、バックアップ・
データベースを維持しながらデータベースのパフォーマ
ンス全体を改善することができる。
れるredoレコードの処理には基本的に、2つの段階
がある。第1に、redoレコードをデータスペースの
待ち行列にいれ、ログ・ルータが待機しないようにす
る。コミット・ログ・レコードまたは異常終了ログ・レ
コードが出現するまで、redoレコードを一時待ち行
列に保管する。コミット・レコードを受け取り、トラッ
カがこれを識別したら、関連するredoレコードを蓄
積処理のため区域ごとに待ち行列に入れる。入出力処理
がマイルストーン(milestone)によってトリガされる
まで、redoレコードは蓄積される。蓄積処理中に、
redoレコードを相対ディスク・スペース順に分類
し、同一のブロックを変更するレコードのログ順序を保
持する。redoレコード処理の第2段階は、更新デー
タをバックアップ・データベースに適用(apply)する
ことである。トラッカ48によってredoレコードを
蓄積し、分類することで、バックアップ・データベース
に対する入出力操作の数が少なくなり、バックアップ・
データベースを維持しながらデータベースのパフォーマ
ンス全体を改善することができる。
【0033】トラッカ48には、レコード・プロセッ
サ、ログ・アキュムレータ、入出力ハンドラ、待ち行列
サーバ、初期設定プロセス、入出力操作のトリガ用マイ
ルストーン制御プロセスなどの多数の構成サブルーチン
がある。
サ、ログ・アキュムレータ、入出力ハンドラ、待ち行列
サーバ、初期設定プロセス、入出力操作のトリガ用マイ
ルストーン制御プロセスなどの多数の構成サブルーチン
がある。
【0034】初期設定プロセス時に、制御ブロックが作
成され、データ・トラッカ・モジュールがロードされ、
redoレコードの格納に使用されるデータスペースが
作成され、多数のその他の初期設定プロセスが実施され
る。
成され、データ・トラッカ・モジュールがロードされ、
redoレコードの格納に使用されるデータスペースが
作成され、多数のその他の初期設定プロセスが実施され
る。
【0035】初期設定には3つのモジュールが使用され
る。最初のモジュールはログ・ルータの初期設定が直接
使用して、制御ブロックを作成し、初期化し、E−私用
域と呼ばれる拡張私用記憶域(MVS/ESAオペレー
ティング・システムが制御する31ビットのアドレス可
能私用記憶域)にトラッカ・モジュールをロードするも
のである。また、初期設定時に、待ち行列サーバの内部
タスク(ITASK)制御ブロックの非同期作業要素
(AWE)が作成され、データスペース記憶管理プログ
ラムがロードされる。ITASKはIMSの内部作業単
位である。AWEは要求を記述する非同期作業単位であ
る。コマンドDPSERV及びALESERVE(これ
らはデータスペース管理用のMVSオペレーティング・
システム・サービスである)を入力し、プログラミング
・モジュールを呼び出すことによって、データスペース
が作成され、初期化される。また、初期設定時に、入出
力操作をトリガするために使用されるマイルストーン・
インデックスが初期化され、トラッキング・ログ経路指
定テーブル・アドレスが戻される。
る。最初のモジュールはログ・ルータの初期設定が直接
使用して、制御ブロックを作成し、初期化し、E−私用
域と呼ばれる拡張私用記憶域(MVS/ESAオペレー
ティング・システムが制御する31ビットのアドレス可
能私用記憶域)にトラッカ・モジュールをロードするも
のである。また、初期設定時に、待ち行列サーバの内部
タスク(ITASK)制御ブロックの非同期作業要素
(AWE)が作成され、データスペース記憶管理プログ
ラムがロードされる。ITASKはIMSの内部作業単
位である。AWEは要求を記述する非同期作業単位であ
る。コマンドDPSERV及びALESERVE(これ
らはデータスペース管理用のMVSオペレーティング・
システム・サービスである)を入力し、プログラミング
・モジュールを呼び出すことによって、データスペース
が作成され、初期化される。また、初期設定時に、入出
力操作をトリガするために使用されるマイルストーン・
インデックスが初期化され、トラッキング・ログ経路指
定テーブル・アドレスが戻される。
【0036】第2の初期設定モジュールは高速パス初期
設定によって呼び出される。第2モジュールは入出力バ
ッファ及びデータ管理ヘッダ・レコード制御ブロック
(DMHR)を割り振り、制御ブロックAWE待ち行列
サーバITASK、トラッキングITASK、入出力ス
レッドITASK、及び入出力スレッドITASK用の
SRB(MVSオペレーティング・システムが使用す
る)を作成する。
設定によって呼び出される。第2モジュールは入出力バ
ッファ及びデータ管理ヘッダ・レコード制御ブロック
(DMHR)を割り振り、制御ブロックAWE待ち行列
サーバITASK、トラッキングITASK、入出力ス
レッドITASK、及び入出力スレッドITASK用の
SRB(MVSオペレーティング・システムが使用す
る)を作成する。
【0037】第3のモジュールも高速パス初期設定によ
って呼び出され、EMAC、EMAC及びTUR用ハッ
シュ・テーブルを作成し、メッセージを出す。EMAC
は状態情報を報告するトラッキング域制御ブロックであ
る。TURは制御ブロック構造で、同じ回復トークンの
ログ・レコードに対する回復単位を表す(詳細は以下で
説明する)。
って呼び出され、EMAC、EMAC及びTUR用ハッ
シュ・テーブルを作成し、メッセージを出す。EMAC
は状態情報を報告するトラッキング域制御ブロックであ
る。TURは制御ブロック構造で、同じ回復トークンの
ログ・レコードに対する回復単位を表す(詳細は以下で
説明する)。
【0038】トラッカが使用する2つの待ち行列サーバ
がある。最初のサーバはログ経路指定TCB制御ブロッ
クの下で作動し、入力ログ・レコードの処理順序を逐次
化する。これは終了AWEを受け取るまで、指定の待ち
行列ヘッダからのAWEを与える。第2の待ち行列サー
バは終了AWEを受け取るまで、第2の待ち行列ヘッダ
からのAWEを与え、ログ・ルータが待機しないように
するために使用される。終了AWEは要求が入出力操作
を必要としている場合に、ログ・レコード・プロセッサ
によってスケジューリングされる。
がある。最初のサーバはログ経路指定TCB制御ブロッ
クの下で作動し、入力ログ・レコードの処理順序を逐次
化する。これは終了AWEを受け取るまで、指定の待ち
行列ヘッダからのAWEを与える。第2の待ち行列サー
バは終了AWEを受け取るまで、第2の待ち行列ヘッダ
からのAWEを与え、ログ・ルータが待機しないように
するために使用される。終了AWEは要求が入出力操作
を必要としている場合に、ログ・レコード・プロセッサ
によってスケジューリングされる。
【0039】入出力操作をトリガするためのマイルスト
ーン制御プロセス要素は入出力操作を行う時期を決定す
る。マイルストーンは定期的にかつボリュームごとに状
態を経路指定し、追跡するスナップショットである。
ーン制御プロセス要素は入出力操作を行う時期を決定す
る。マイルストーンは定期的にかつボリュームごとに状
態を経路指定し、追跡するスナップショットである。
【0040】トラッカ・システム48が実行して、レコ
ードの更新をデータベースに効率よく書き込むためにr
edoログ・レコードを編成する3組のサブルーチンが
ある。トラッカが実行する第1のルーチンはログ・レコ
ード・プロセッサで、ログ・ルータによって呼び出さ
れ、シングル・スレッドで作動するものである。ログ・
レコード・プロセッサはredoレコード、コミット・
レコード及び異常終了レコードを処理する。コミットさ
れていないトランザクションの各々についてログ・ルー
タから受け取ったredoレコードは、そのトランザク
ションに対してコミットまたは異常終了レコードを受け
取るまで、データスペースに別々に保管される。第2の
ルーチンはログ・アキュムレータで、コミットされたr
edoレコードを分類し、データスペースに蓄積するも
のである。第3のルーチンは入出力ハンドラで、各デー
タベースごとに利用可能であり、マイルストーンによっ
て呼び出されるものである。入出力ハンドラはデータベ
ースのブロックをディスクから一時入出力バッファに読
み込み、redoレコードからの更新データをバッファ
更新ブロックの対応するレコードに適用し、次いで、ブ
ロックをバックアップ・データベースに書き戻す。
ードの更新をデータベースに効率よく書き込むためにr
edoログ・レコードを編成する3組のサブルーチンが
ある。トラッカが実行する第1のルーチンはログ・レコ
ード・プロセッサで、ログ・ルータによって呼び出さ
れ、シングル・スレッドで作動するものである。ログ・
レコード・プロセッサはredoレコード、コミット・
レコード及び異常終了レコードを処理する。コミットさ
れていないトランザクションの各々についてログ・ルー
タから受け取ったredoレコードは、そのトランザク
ションに対してコミットまたは異常終了レコードを受け
取るまで、データスペースに別々に保管される。第2の
ルーチンはログ・アキュムレータで、コミットされたr
edoレコードを分類し、データスペースに蓄積するも
のである。第3のルーチンは入出力ハンドラで、各デー
タベースごとに利用可能であり、マイルストーンによっ
て呼び出されるものである。入出力ハンドラはデータベ
ースのブロックをディスクから一時入出力バッファに読
み込み、redoレコードからの更新データをバッファ
更新ブロックの対応するレコードに適用し、次いで、ブ
ロックをバックアップ・データベースに書き戻す。
【0041】トラッカによって使用されるバックアップ
・ディスクへ書き込むために(レコード・プロセッサ、
アキュムレータ、及び入出力ハンドラを使用して)re
doレコードを編成するプロセスを、図4−図11を参
照して詳細に説明する。
・ディスクへ書き込むために(レコード・プロセッサ、
アキュムレータ、及び入出力ハンドラを使用して)re
doレコードを編成するプロセスを、図4−図11を参
照して詳細に説明する。
【0042】図4−図6に、ログ・ルータ50から受け
取ったログ・レコードを処理するためのログ・レコード
・プロセッサ58の詳細な説明を示す。
取ったログ・レコードを処理するためのログ・レコード
・プロセッサ58の詳細な説明を示す。
【0043】図4において、ログ・レコード・プロセッ
サ58がログ・レコード及び事象通知を処理する。ログ
・レコードは、ログ・ルータによって、ログ・レコード
経路指定テーブルを使用してレコード・タイプに基づき
該当するトラッキング・ルーチンに与えられる(6
2)。
サ58がログ・レコード及び事象通知を処理する。ログ
・レコードは、ログ・ルータによって、ログ・レコード
経路指定テーブルを使用してレコード・タイプに基づき
該当するトラッキング・ルーチンに与えられる(6
2)。
【0044】redoレコード・プロセッサ64はコミ
ットされていないレコードを処理するログ・レコード・
プロセッサのルーチンで、このレコードは「未完了」r
edoレコードと呼ばれる。redoレコードはトラン
ザクションの一部としてデータベース・レコードに書き
込まれるデータの事後イメージである。高速パス・デー
タベースにおいては、トランザクションがコミットされ
るまで、redoレコードはディスクに書き込まれな
い。異常終了したトランザクションのredoレコード
は、活動データベースに書き込まれることはなく、した
がって、バックアップ・データベースに書き込まれるこ
とはない。
ットされていないレコードを処理するログ・レコード・
プロセッサのルーチンで、このレコードは「未完了」r
edoレコードと呼ばれる。redoレコードはトラン
ザクションの一部としてデータベース・レコードに書き
込まれるデータの事後イメージである。高速パス・デー
タベースにおいては、トランザクションがコミットされ
るまで、redoレコードはディスクに書き込まれな
い。異常終了したトランザクションのredoレコード
は、活動データベースに書き込まれることはなく、した
がって、バックアップ・データベースに書き込まれるこ
とはない。
【0045】redoレコード・プロセッサ64は、ト
ランザクションに対する回復トラッキング単位(TU
R)(図5の66参照)を見つけだそうとする(6
8)。TURはトランザクションのためのredoレコ
ード・リストのヘッダである。前述したように、TUR
は同じ回復トークンのログ・レコードに対する回復単位
を表す制御ブロックである。TURがトランザクション
について見つかった場合、redoレコードはその発生
順を維持したまま、同じトランザクションに対するre
doレコード・リストにグループ化される(69)。受
け取ったredoレコードが回復単位の最初のredo
レコードであった場合、そのトランザクションに対する
TURは見つからず、そのトランザクションに対する新
しいTURがデータベースに動的に作成される(7
0)。
ランザクションに対する回復トラッキング単位(TU
R)(図5の66参照)を見つけだそうとする(6
8)。TURはトランザクションのためのredoレコ
ード・リストのヘッダである。前述したように、TUR
は同じ回復トークンのログ・レコードに対する回復単位
を表す制御ブロックである。TURがトランザクション
について見つかった場合、redoレコードはその発生
順を維持したまま、同じトランザクションに対するre
doレコード・リストにグループ化される(69)。受
け取ったredoレコードが回復単位の最初のredo
レコードであった場合、そのトランザクションに対する
TURは見つからず、そのトランザクションに対する新
しいTURがデータベースに動的に作成される(7
0)。
【0046】図5を参照すると、redoレコード・プ
ロセッサがデータベースredo待ち行列要素(ERQ
E)72という制御ブロックを、各redoレコード7
4に対してデータベースに作成する。ERQE72はそ
のトランザクションに対するそれぞれのTUR66と連
鎖され、redoレコード74はERQE72と連鎖さ
れる。このようにして、1つの回復単位のすべてのre
doレコードがTUR66に連鎖され、固定される。デ
ータスペースにおいて、5950というredoログ・
レコード74はERQE72で表されている。
ロセッサがデータベースredo待ち行列要素(ERQ
E)72という制御ブロックを、各redoレコード7
4に対してデータベースに作成する。ERQE72はそ
のトランザクションに対するそれぞれのTUR66と連
鎖され、redoレコード74はERQE72と連鎖さ
れる。このようにして、1つの回復単位のすべてのre
doレコードがTUR66に連鎖され、固定される。デ
ータスペースにおいて、5950というredoログ・
レコード74はERQE72で表されている。
【0047】1トランザクション期間内の同じデータベ
ース・レコードについての複数のERQEは、ERQE
ERQE_INTRA78という制御ブロック・ポイン
タによって連鎖される。制御ブロック・ポインタERQ
EERQE_INTRA78はリスト内の次のERQE
をポイントするERQENEXT79という制御ブロッ
ク・ポインタを含んでいる。TURに連鎖されたred
oログ・レコードはコミットまたは異常終了レコード・
プロセッサの動作を待っている未完了redoログ・レ
コード、すなわちまだコミットあるいは異常終了してい
ないものとして取り扱われる。
ース・レコードについての複数のERQEは、ERQE
ERQE_INTRA78という制御ブロック・ポイン
タによって連鎖される。制御ブロック・ポインタERQ
EERQE_INTRA78はリスト内の次のERQE
をポイントするERQENEXT79という制御ブロッ
ク・ポインタを含んでいる。TURに連鎖されたred
oログ・レコードはコミットまたは異常終了レコード・
プロセッサの動作を待っている未完了redoログ・レ
コード、すなわちまだコミットあるいは異常終了してい
ないものとして取り扱われる。
【0048】同じレコードに対する複数のredoレコ
ードは入出力ハンドラによる1入出力操作によって処理
される。それ故、いくつかのredoレコードが同一の
データベース名、データベース内のブロック、及びブロ
ック内のオフセット位置に対するものである場合には、
入出力操作の数を減らすことができる。したがって、こ
のようなredoレコードの編成は、1つのセグメント
に対する1つの更新呼出しであっても、活動DBMSに
よって複数のredoレコードをしばしば作成するもの
であるから、いくつかのredoレコードが同一のデー
タベース・レコードに適用されるという事実を利用して
いる。
ードは入出力ハンドラによる1入出力操作によって処理
される。それ故、いくつかのredoレコードが同一の
データベース名、データベース内のブロック、及びブロ
ック内のオフセット位置に対するものである場合には、
入出力操作の数を減らすことができる。したがって、こ
のようなredoレコードの編成は、1つのセグメント
に対する1つの更新呼出しであっても、活動DBMSに
よって複数のredoレコードをしばしば作成するもの
であるから、いくつかのredoレコードが同一のデー
タベース・レコードに適用されるという事実を利用して
いる。
【0049】図4を再び参照すると、ログ・レコード・
プロセッサの他の構成要素はコミット/異常終了レコー
ド・プロセッサ80である。コミット/異常終了レコー
ド・プロセッサはコミット・ログ・レコード及び異常終
了ログ・レコードを処理する。あるトランザクションに
対する異常終了ログ・レコードはそのトランザクション
が異常終了したことを示す。このトランザクションにつ
いて受け取ったredoレコードが活動データベースに
書き込まれることはなく、またバックアップ・データベ
ースに書き込まれてはならない。したがって、異常終了
ログ・レコードを受け取った場合には、このトランザク
ションに対するTURが探し出され、このTURに対す
るredoログ・レコード及びERQEならびにTUR
が削除される(82)。
プロセッサの他の構成要素はコミット/異常終了レコー
ド・プロセッサ80である。コミット/異常終了レコー
ド・プロセッサはコミット・ログ・レコード及び異常終
了ログ・レコードを処理する。あるトランザクションに
対する異常終了ログ・レコードはそのトランザクション
が異常終了したことを示す。このトランザクションにつ
いて受け取ったredoレコードが活動データベースに
書き込まれることはなく、またバックアップ・データベ
ースに書き込まれてはならない。したがって、異常終了
ログ・レコードを受け取った場合には、このトランザク
ションに対するTURが探し出され、このTURに対す
るredoログ・レコード及びERQEならびにTUR
が削除される(82)。
【0050】コミット・ログ・レコードを受け取った場
合(84)、このトランザクションに対するTURが見
つけだされ、このTURに接続された対応するredo
レコードがコミットされたものと指定され、さらに処理
するためアキュムレータの制御部へ転送される(8
6)。
合(84)、このトランザクションに対するTURが見
つけだされ、このTURに接続された対応するredo
レコードがコミットされたものと指定され、さらに処理
するためアキュムレータの制御部へ転送される(8
6)。
【0051】コミットされたredoレコードをレコー
ド・プロセッサからアキュムレータへ転送するプロセス
を図6を参照して説明するが、この図はコミット・ログ
・レコードを受け取った場合のレコード・プロセッサに
あるredoレコードを示している。ERQENEXT
79によって連鎖された各ERQE72は、これを適用
するのかどうかについて検査される。バックアップ・シ
ステムによる検査プロセスが正常に完了した場合、re
doレコード72はコミットされたものとされる。検査
プロセスが失敗した場合、ERQEが削除されるか、あ
るいはERQE72がTUR66から、後入れ先出し
(LIFO)構成のログ・アキュムレータに対する待機
EMAC待ち行列92のEMACERQE_WAQとい
う制御ブロック・ポインタ90に再連鎖される。EMA
CERQE_WAQ90はログ・アキュムレータによる
他の処理(分類や格納)を待っているERQE72に対
するアンカ・ポイントの働きをする。トラッキング域制
御ブロックEMAC92はログ・アキュムレータに対す
る待機EMAC待ち行列としてEDBTWAQ制御ブロ
ックに連鎖される。ERQEが処理された後、TUR6
6が削除される。
ド・プロセッサからアキュムレータへ転送するプロセス
を図6を参照して説明するが、この図はコミット・ログ
・レコードを受け取った場合のレコード・プロセッサに
あるredoレコードを示している。ERQENEXT
79によって連鎖された各ERQE72は、これを適用
するのかどうかについて検査される。バックアップ・シ
ステムによる検査プロセスが正常に完了した場合、re
doレコード72はコミットされたものとされる。検査
プロセスが失敗した場合、ERQEが削除されるか、あ
るいはERQE72がTUR66から、後入れ先出し
(LIFO)構成のログ・アキュムレータに対する待機
EMAC待ち行列92のEMACERQE_WAQとい
う制御ブロック・ポインタ90に再連鎖される。EMA
CERQE_WAQ90はログ・アキュムレータによる
他の処理(分類や格納)を待っているERQE72に対
するアンカ・ポイントの働きをする。トラッキング域制
御ブロックEMAC92はログ・アキュムレータに対す
る待機EMAC待ち行列としてEDBTWAQ制御ブロ
ックに連鎖される。ERQEが処理された後、TUR6
6が削除される。
【0052】ログ・アキュムレータが他のredoレコ
ードの処理中で、レコード・プロセッサからのredo
レコードを処理できない場合、アキュムレータはIWA
IT状況という待機モードとなる。アキュムレータがI
WAIT状況である場合、新規にコミットされたred
oレコードがIPOSTという内部通知を出すことによ
って処理が必要であることを通知し、これによって非同
期リクエスタに作業項目が完了したことを知らせる。
ードの処理中で、レコード・プロセッサからのredo
レコードを処理できない場合、アキュムレータはIWA
IT状況という待機モードとなる。アキュムレータがI
WAIT状況である場合、新規にコミットされたred
oレコードがIPOSTという内部通知を出すことによ
って処理が必要であることを通知し、これによって非同
期リクエスタに作業項目が完了したことを知らせる。
【0053】コミット−redoレコード、init/
termレコード、更新終了レコード、及び活動ストリ
ーム終了レコードなどのその他のログ・レコードも、ロ
グ・レコード・プロセッサによって処理される(9
4)。
termレコード、更新終了レコード、及び活動ストリ
ーム終了レコードなどのその他のログ・レコードも、ロ
グ・レコード・プロセッサによって処理される(9
4)。
【0054】アキュムレータ98の好ましい実施例を図
7ないし図9を参照して説明する。ログ・アキュムレー
タはログ・プロセッサと入出力ハンドラの間に配置され
た中間機能である。これは各データベースごとにすべて
のredoレコードをまとめ、redoレコードを当該
データベースのブロック内の相対オフセットにしたがっ
て昇順(ascending order)に並べることによって、入
出力プロセッサの性能を改善する。
7ないし図9を参照して説明する。ログ・アキュムレー
タはログ・プロセッサと入出力ハンドラの間に配置され
た中間機能である。これは各データベースごとにすべて
のredoレコードをまとめ、redoレコードを当該
データベースのブロック内の相対オフセットにしたがっ
て昇順(ascending order)に並べることによって、入
出力プロセッサの性能を改善する。
【0055】図8を参照すると、ERQE72に対する
EDBTWAQ100という制御ブロック・アンカ・ポ
イントがアキュムレータに対する入力待ち行列に作用し
て、ログ・アキュムレータに対する「要活動」EMAC
制御ブロック94を見つけだす。処理対象の各ERQE
72はEMAC92のEMACERQUE_WAQ90
という制御ブロックに連鎖される。ログ・アキュムレー
タはERQEをブロック内のオフセット(レコード・ブ
ロック・アドレスRBAと呼ぶ)にしたがって昇順で分
類し、入出力操作の効率を改善する。
EDBTWAQ100という制御ブロック・アンカ・ポ
イントがアキュムレータに対する入力待ち行列に作用し
て、ログ・アキュムレータに対する「要活動」EMAC
制御ブロック94を見つけだす。処理対象の各ERQE
72はEMAC92のEMACERQUE_WAQ90
という制御ブロックに連鎖される。ログ・アキュムレー
タはERQEをブロック内のオフセット(レコード・ブ
ロック・アドレスRBAと呼ぶ)にしたがって昇順で分
類し、入出力操作の効率を改善する。
【0056】ERQEを分類するパス長を節約するため
に、各EMAC92はEMACERQE_WIOQ10
3というヘッダ制御ブロックからの連続記憶域にERQ
E挿入リスト(EIL)102を維持している。リスト
102の項目106は、データベースのブロック内のE
RQEの相対オフセット(CIのRBA)及び実際のE
RQE72がデータスペース作業域に格納される場所へ
の対応アドレスである。EIL102を使用することに
よって、redoレコードを探し出して、対応するレコ
ードの相対アドレスを決定する必要がなくなる。これに
よって、redoレコードを分類するときの探索が容易
となる。
に、各EMAC92はEMACERQE_WIOQ10
3というヘッダ制御ブロックからの連続記憶域にERQ
E挿入リスト(EIL)102を維持している。リスト
102の項目106は、データベースのブロック内のE
RQEの相対オフセット(CIのRBA)及び実際のE
RQE72がデータスペース作業域に格納される場所へ
の対応アドレスである。EIL102を使用することに
よって、redoレコードを探し出して、対応するレコ
ードの相対アドレスを決定する必要がなくなる。これに
よって、redoレコードを分類するときの探索が容易
となる。
【0057】図7を参照すると、ログ・アキュムレータ
はERQEをコミットされたトランザクション・リスト
(ヘッダEMACERQE_WAQで示されている)か
ら待ち行列解除し(110)、EILを探索して、分類
された順序でリストに挿入されるERQEと同じオフセ
ットを有する項目を見つけ出す(112)。対応する項
目が見つかったら(114)、挿入されるERQEが後
入れ先出し(LIFO)順で項目116に連鎖される。
ERQEと同じオフセットを有する項目がない場合(1
18)、新しい項目がERQEに対してEIL120の
適切な場所に作成されるので、すべての項目がRBA昇
順で配置される。
はERQEをコミットされたトランザクション・リスト
(ヘッダEMACERQE_WAQで示されている)か
ら待ち行列解除し(110)、EILを探索して、分類
された順序でリストに挿入されるERQEと同じオフセ
ットを有する項目を見つけ出す(112)。対応する項
目が見つかったら(114)、挿入されるERQEが後
入れ先出し(LIFO)順で項目116に連鎖される。
ERQEと同じオフセットを有する項目がない場合(1
18)、新しい項目がERQEに対してEIL120の
適切な場所に作成されるので、すべての項目がRBA昇
順で配置される。
【0058】EIL102内の項目の配列によって、項
目の一部を項目の長さ(8バイト)によって移動しなけ
ればならないことが必要となる。このリストに対する連
続記憶域は必要に応じて、データベース内に動的に作成
される。EILのサイズが16Kバイトであるから、1
つのEILは2000の項目を有することができる。E
ILが項目で一杯になった場合、他のEILがログ・ア
キュムレータによって作成され、アキュムレータはこの
EILをLIFO構成でEILヘッダ(EMACERQ
E_WIOQ103で示される)に連鎖する。当分野の
技術者に周知の2等分探索アルゴリズムを使用して、該
当するredoレコードに付いてEILを探索し、性能
を改善することができる。
目の一部を項目の長さ(8バイト)によって移動しなけ
ればならないことが必要となる。このリストに対する連
続記憶域は必要に応じて、データベース内に動的に作成
される。EILのサイズが16Kバイトであるから、1
つのEILは2000の項目を有することができる。E
ILが項目で一杯になった場合、他のEILがログ・ア
キュムレータによって作成され、アキュムレータはこの
EILをLIFO構成でEILヘッダ(EMACERQ
E_WIOQ103で示される)に連鎖する。当分野の
技術者に周知の2等分探索アルゴリズムを使用して、該
当するredoレコードに付いてEILを探索し、性能
を改善することができる。
【0059】同じデータベースに対するredoレコー
ドのERQE(CI)がERQENEXTというポイン
タによって連鎖される。これらのredoレコードを入
出力ハンドラによる1回の入出力操作によって処理する
ことができる。それ故、トランザクション間隔外のいく
つかのredoレコードが同じオフセット(同じ区域名
及びRBAを有する)にある同じデータベースの同じブ
ロックに格納されたレコードに対するものであれば、入
出力回数を少なくすることができる。さらに、CIの完
全な内容を含んでいるredoレコードを処理する場
合、CIが入出力ハンドラに必要ないものであるため、
CIが削除される。
ドのERQE(CI)がERQENEXTというポイン
タによって連鎖される。これらのredoレコードを入
出力ハンドラによる1回の入出力操作によって処理する
ことができる。それ故、トランザクション間隔外のいく
つかのredoレコードが同じオフセット(同じ区域名
及びRBAを有する)にある同じデータベースの同じブ
ロックに格納されたレコードに対するものであれば、入
出力回数を少なくすることができる。さらに、CIの完
全な内容を含んでいるredoレコードを処理する場
合、CIが入出力ハンドラに必要ないものであるため、
CIが削除される。
【0060】アキュムレータ98はあるトランザクショ
ン及び以降のトランザクションに対するコミットされた
redoレコードの処理を継続する(122)。マイル
ストーン要素が示すように、データベースに対する入出
力マイルストーンに到達した場合、そのデータベースに
対するredoレコードが入出力操作を処理することに
よってディスク124に書き込まれる。ログ・アキュム
レータが作業域を終了し、クリーンアップするTRMの
通知コードというメッセージを受け取ると、ログ・アキ
ュムレータは制御ブロック・ポインタEMACERQE
_WAQに連鎖されているすべてのredoデータに対
するサービスを完了した後、制御をデータベースに戻
す。
ン及び以降のトランザクションに対するコミットされた
redoレコードの処理を継続する(122)。マイル
ストーン要素が示すように、データベースに対する入出
力マイルストーンに到達した場合、そのデータベースに
対するredoレコードが入出力操作を処理することに
よってディスク124に書き込まれる。ログ・アキュム
レータが作業域を終了し、クリーンアップするTRMの
通知コードというメッセージを受け取ると、ログ・アキ
ュムレータは制御ブロック・ポインタEMACERQE
_WAQに連鎖されているすべてのredoデータに対
するサービスを完了した後、制御をデータベースに戻
す。
【0061】図9はマイルストーン・トリガ入出力プロ
セスの先頭にあるデータベースのバッファリングされた
データを示す。ブロック内のオフセットに対するERQ
E72はすべてEIL102のデータベースに対するト
ラッキング域回復ブロック(EMACで示す)100に
対してRBAの昇順で配列される。
セスの先頭にあるデータベースのバッファリングされた
データを示す。ブロック内のオフセットに対するERQ
E72はすべてEIL102のデータベースに対するト
ラッキング域回復ブロック(EMACで示す)100に
対してRBAの昇順で配列される。
【0062】図10及び図11に、トラッカの入出力ハ
ンドラ・ルーチン118の好ましい実施例を示す。各バ
ックアップ・データベースは間欠的に呼び出される、関
連した入出力ハンドラを有している。入出力ハンドラは
シングル入出力スレッドITASK(IOTI ITA
SKとする)の下で作動し、いくつかのタスクが同時に
作動することができる。非同期要求に作業項目が完了し
たことを知らせるために内部で通知される(「IPOS
Tされる」)IOTI ITASKの数が、「BEGI
N MILESTONE(マイルストーン開始)」論理
によって(マイルストーン・ルーチンによって)計算さ
れ、負荷バランス技法を使用して時間間隔の終了を示
す。負荷バランス論理を使用することによって、入出力
処理の周期的な影響が最小限となる。
ンドラ・ルーチン118の好ましい実施例を示す。各バ
ックアップ・データベースは間欠的に呼び出される、関
連した入出力ハンドラを有している。入出力ハンドラは
シングル入出力スレッドITASK(IOTI ITA
SKとする)の下で作動し、いくつかのタスクが同時に
作動することができる。非同期要求に作業項目が完了し
たことを知らせるために内部で通知される(「IPOS
Tされる」)IOTI ITASKの数が、「BEGI
N MILESTONE(マイルストーン開始)」論理
によって(マイルストーン・ルーチンによって)計算さ
れ、負荷バランス技法を使用して時間間隔の終了を示
す。負荷バランス論理を使用することによって、入出力
処理の周期的な影響が最小限となる。
【0063】入出力ハンドラがマイルストーン制御ルー
チンからの「マイルストーン開始」信号によって呼び出
される。入出力プロセスは次のマイルストーン(指定さ
れた間隔の終わり)までに完了しなければならない。マ
イルストーンの期間が始まった場合、多くのredoレ
コードがデータベースにあると考えられるので、入出力
操作を最適な効率で実施できる。
チンからの「マイルストーン開始」信号によって呼び出
される。入出力プロセスは次のマイルストーン(指定さ
れた間隔の終わり)までに完了しなければならない。マ
イルストーンの期間が始まった場合、多くのredoレ
コードがデータベースにあると考えられるので、入出力
操作を最適な効率で実施できる。
【0064】IPOSTされた場合、入出力ハンドラは
EILがEMACERQE_WIOQという制御ブロッ
クに連鎖しているEMAC100を探す。EILは後入
れ先出し(LIFO)から先入れ先出し(FIFO)に
並べ変えられるので、ERQEはRBAの降順で配列さ
れる。EILの各項目が処理され、データベース・ブロ
ック(CI)を入出力バッファに読み出す。データベー
ス名(DBD名)、ブロック番号(DSID)及びオフ
セット(RBA)が各ERQEに読み出される。これは
DMHR120という制御ブロックにセットされるが、
この制御ブロックは入出力バッファ122に読み出され
るブロックのリストである。次いで、DMHR120が
読取り要求に合わせて設定される。読取り要求はバック
アップ・データベースによってこの位置から行われる。
EILがEMACERQE_WIOQという制御ブロッ
クに連鎖しているEMAC100を探す。EILは後入
れ先出し(LIFO)から先入れ先出し(FIFO)に
並べ変えられるので、ERQEはRBAの降順で配列さ
れる。EILの各項目が処理され、データベース・ブロ
ック(CI)を入出力バッファに読み出す。データベー
ス名(DBD名)、ブロック番号(DSID)及びオフ
セット(RBA)が各ERQEに読み出される。これは
DMHR120という制御ブロックにセットされるが、
この制御ブロックは入出力バッファ122に読み出され
るブロックのリストである。次いで、DMHR120が
読取り要求に合わせて設定される。読取り要求はバック
アップ・データベースによってこの位置から行われる。
【0065】データベース124からのデータのいくつ
かのブロック(バッファで可能なだけの数)をバッファ
に読み込ませるSRBというMVSオペレーティング・
システムのスケジューリング機能によって呼出しを行う
ためのモジュールが呼び出される(図10の130)。
使用される入出力バッファの数は次のように計算され
る。N=DBBF/OTHR。ただし、Nは各IOTI
に割り当てられる入出力バッファの数、DBBFは入出
力バッファの総数(ルーチンに対する呼出しに関するE
XECパラメータのDBBF=parmによって指定さ
れる)、OTHRはIOTI TASKの数(EXEC
パラメータのOTHR=parmによって指定される)
である。
かのブロック(バッファで可能なだけの数)をバッファ
に読み込ませるSRBというMVSオペレーティング・
システムのスケジューリング機能によって呼出しを行う
ためのモジュールが呼び出される(図10の130)。
使用される入出力バッファの数は次のように計算され
る。N=DBBF/OTHR。ただし、Nは各IOTI
に割り当てられる入出力バッファの数、DBBFは入出
力バッファの総数(ルーチンに対する呼出しに関するE
XECパラメータのDBBF=parmによって指定さ
れる)、OTHRはIOTI TASKの数(EXEC
パラメータのOTHR=parmによって指定される)
である。
【0066】redoレコードはERQEの連鎖をLI
FOからFIFOに並べ変えてから、入出力バッファに
適用される(132)。
FOからFIFOに並べ変えてから、入出力バッファに
適用される(132)。
【0067】redoレコードがバッファの更新ブロッ
クに適用された後、更新バッファがデータベースに書き
戻される(134)。すべてのERQEが処理された
後、入出力の完了を待っていたデータベースに対するA
WE要求が処理される。入出力ハンドラはすべてのAW
Eが各々に対して要求されたサービスを実行したことを
チェックする。
クに適用された後、更新バッファがデータベースに書き
戻される(134)。すべてのERQEが処理された
後、入出力の完了を待っていたデータベースに対するA
WE要求が処理される。入出力ハンドラはすべてのAW
Eが各々に対して要求されたサービスを実行したことを
チェックする。
【0068】入出力ハンドラは次いで、処理を必要とす
る他のEMACを探す。1つのEMACが1つのITA
SK(IOTIで示す)によって処理されるので、ロッ
ク機構は必要ない。トラッキング域制御ブロックEMA
Cが処理された後、このEMACに対するすべてのEI
L及びERQEが削除される。
る他のEMACを探す。1つのEMACが1つのITA
SK(IOTIで示す)によって処理されるので、ロッ
ク機構は必要ない。トラッキング域制御ブロックEMA
Cが処理された後、このEMACに対するすべてのEI
L及びERQEが削除される。
【0069】すべてのEMACが処理されると、入出力
バッファはIWAITという待機状況になる。これが最
後のIOTI ITASKである場合、IPOST終了
マイルストーンを出すことによって、マイルストーンを
終了することができる。
バッファはIWAITという待機状況になる。これが最
後のIOTI ITASKである場合、IPOST終了
マイルストーンを出すことによって、マイルストーンを
終了することができる。
【0070】入出力処理がトリガされると、多数の入出
力プロセスが再開される。各入出力プロセスは処理のた
めの区域を選択し、redoレコードのその分類された
リストを取り入れ、これらをすべて処理する。入出力プ
ロセッサは多重ブロックの読取りを行い、redoレコ
ードが存在しているブロックの最初のシリーズを取得す
る。次いで、redoの変更点がこれらのブロックに適
用される。その後、多重ブロック書込みが行われ、ディ
スク・ブロックを継続記憶域に書き戻す。多重ブロック
読み書きを使用することによって、CPUの消費量が最
小限となる。今日のディスクの場合、redoレコード
の分類順序はディスク当たり1つの区域しかない場合、
効率のよいスイープをもたらす。
力プロセスが再開される。各入出力プロセスは処理のた
めの区域を選択し、redoレコードのその分類された
リストを取り入れ、これらをすべて処理する。入出力プ
ロセッサは多重ブロックの読取りを行い、redoレコ
ードが存在しているブロックの最初のシリーズを取得す
る。次いで、redoの変更点がこれらのブロックに適
用される。その後、多重ブロック書込みが行われ、ディ
スク・ブロックを継続記憶域に書き戻す。多重ブロック
読み書きを使用することによって、CPUの消費量が最
小限となる。今日のディスクの場合、redoレコード
の分類順序はディスク当たり1つの区域しかない場合、
効率のよいスイープをもたらす。
【0071】
【発明の効果】入出力前に多数のレコードを蓄積する
と、同じディスク・ブロックに対するトランザクション
間変更が1回の操作で処理されるようになる。しかしな
がら、ディスクへの書込み間の時間を最短のものとしな
いと、障害時の回復時間に悪影響が及ぼされる。ディス
ク・ブロックを記憶するよりもredoレコードを記憶
する方が使用されるスペースが少ないので、これによっ
てスペース効率のよいバッファ・プールがもたらされ
る。さらに、トラッカ・システムはログ・ルータを待機
させず、活動データベースよりも少なくとも2倍の速度
で作動するので、バックアップ・システムに対するスル
ープットが改善される。
と、同じディスク・ブロックに対するトランザクション
間変更が1回の操作で処理されるようになる。しかしな
がら、ディスクへの書込み間の時間を最短のものとしな
いと、障害時の回復時間に悪影響が及ぼされる。ディス
ク・ブロックを記憶するよりもredoレコードを記憶
する方が使用されるスペースが少ないので、これによっ
てスペース効率のよいバッファ・プールがもたらされ
る。さらに、トラッカ・システムはログ・ルータを待機
させず、活動データベースよりも少なくとも2倍の速度
で作動するので、バックアップ・システムに対するスル
ープットが改善される。
【図1】活動及びバックアップ・データベース・システ
ムの概要図である。
ムの概要図である。
【図2】redoログ・レコードの図である。
【図3】ログ・レコードを遠隔データベースに適用する
ためのシステムのブロック図である。
ためのシステムのブロック図である。
【図4】コミットされたものと示されていないトランザ
クションのredoログ・レコードの処理に関する流れ
図である。
クションのredoログ・レコードの処理に関する流れ
図である。
【図5】コミットされたものと示されていないトランザ
クションのredoログ・レコードの処理に関するブロ
ック図である。
クションのredoログ・レコードの処理に関するブロ
ック図である。
【図6】コミットされたトランザクションのredoロ
グ・レコードのブロック図である。
グ・レコードのブロック図である。
【図7】アキュムレータによるredoログ・レコード
の処理に関する流れ図である。
の処理に関する流れ図である。
【図8】アキュムレータ内のredoログ・レコードの
ブロック図である。
ブロック図である。
【図9】アキュムレータに格納されている分類されたr
edoログ・レコードのブロック図である。
edoログ・レコードのブロック図である。
【図10】redoログ・レコードをディスク記憶装置
に書き込むためのプロセスの流れ図である。
に書き込むためのプロセスの流れ図である。
【図11】redoログ・レコードをディスク記憶装置
に書き込むためのプロセスのブロック図である。
に書き込むためのプロセスのブロック図である。
12 活動コンピュータ・システム 13 バックアップ・コンピュータ・システム 14、15 プロセッサ 16、17 メモリ 18、19 データ記憶装置 20、21 補助記憶装置 22 ネットワーク機構
Claims (8)
- 【請求項1】バックアップ・コンピュータ・システムと
通信する少なくとも1つの活動コンピュータ・システム
を含んでおり、各コンピュータ・システムがプロセッサ
(CPU)、メモリ、ならびに複数個のデータ・レコー
ドが格納されたデータベースを有する少なくとも1つの
データ記憶装置を具備し、データベース・トランザクシ
ョンがコミットされたときに、該データベース・トラン
ザクションの一部として、redoログ・レコードを用
いてデータベースを変更するトランザクション処理シス
テムにおいて、バックアップ・データベースを活動デー
タベースと一貫したものにするために該バックアップ・
データベースを更新する方法であって(a)活動システ
ムから伝送されたredoレコードをバックアップ・シ
ステム・メモリのデータスペース作業域で受け取り、
(b)コミットされていないデータベース・トランザク
ションから作業域のredoレコードをグループ化し、
(c)トランザクションがコミットされたときに、該コ
ミットされたトランザクションのredoレコードを、
データベース名、データベース内のブロック番号、該ブ
ロック内のオフセット位置、及びレコードの発生順にし
たがって、他のコミットされたトランザクションのre
doレコードとともに分類し、(d)バックアップ・デ
ータベースからの複数個の更新ブロックをバックアップ
・システム・メモリのバッファに読み出し、(e)分類
済みのコミットされたredoレコードを、前記更新ブ
ロックの対応するデータ・レコードに順次適用し、
(f)更新ブロックに対する前記分類済みのコミットさ
れたredoレコードを該更新ブロック内の対応するデ
ータ・レコードに適用した後、該更新ブロックをデータ
ベースに直ちに書き込むステップからなる、データベー
スの更新方法。 - 【請求項2】データベースのすべてのブロックが分類済
みのコミットされたredoレコードによって更新され
るまで、前記ステップ(d)ないし(f)を複数回反復
する、請求項1記載の方法。 - 【請求項3】前記のredoレコードが、識別されたデ
ータベース名と、識別されたブロック番号と、該ブロッ
ク内の識別されたオフセット値と、更新データとを含む
フィールドからなり、 前記redoレコードを更新ブロックに適用するステッ
プが、識別されたデータベース・ブロック内の識別され
たオフセット位置に格納されているデータを、対応する
redoレコードからの更新データに変更する、請求項
1記載の方法。 - 【請求項4】活動システムからのredoレコードを発
生順に伝送することを含む、請求項1記載の方法。 - 【請求項5】コミット・ログ・レコードをバックアップ
・システムが受け取ったことに応答して、トランザクシ
ョンがコミットされたものとされる、請求項1記載の方
法。 - 【請求項6】バックアップ・コンピュータ・システムと
通信する少なくとも1つの活動コンピュータ・システム
を含んでおり、各コンピュータ・システムがプロセッサ
(CPU)、メモリ、ならびに複数個のデータ・レコー
ドが格納されたデータベースを有する少なくとも1つの
データ記憶装置を具備し、データベース・トランザクシ
ョンがコミットされたときに、該データベース・トラン
ザクションの一部として、redoログ・レコードを用
いてデータベースを変更するトランザクション処理シス
テムにおいて、バックアップ・データベースを活動デー
タベースと一貫したものとするために該バックアップ・
データベースを更新するためのシステムであって、 トランザクションがコミットされるまで、発生順に、各
個別のトランザクションごとに、redoレコードをバ
ックアップ・コンピュータ・メモリにグループ化するた
めのログ・レコード処理手段と、 データベース名、該データベース内のブロック番号、及
び該ブロック内のオフセット位置にしたがって、発生順
に、コミットされたトランザクションのコミットされた
redoレコードを分類する分類手段と、 複数個の更新ブロックをデータベースからバックアップ
・システム・メモリのバッファに読み出す手段と、 コミットされた前記redoレコードを更新ブロックに
適用する手段と、 前記更新ブロックをデータベースに書き戻す手段とから
なる、 データベースの更新システム。 - 【請求項7】前記バックアップ・システムが、redo
レコード及びコミット・ログ・レコードを活動システム
からバックアップ・システム・メモリに受け取る手段を
含む、請求項6記載のシステム。 - 【請求項8】データ記憶装置に格納されたデータベー
ス、ならびにコミットされたトランザクションの一部と
してデータベースに実行される変更を表すredoレコ
ード及びトランザクションがコミットされたことを示す
コミット・レコードを含む、補助記憶装置に格納された
データベース・トランザクションを記録するためのログ
を使用して、データベースを更新するトランザクション
処理システムにおいて、 トランザクションに対するコミット・レコードを受け取
るまで、発生順に、コミットされたredoレコードを
分類するレコード処理手段と、 コミットされたトランザクションに対する複数個の分類
されたredoレコードを格納するログ・アキュムレー
タ手段であって、該格納されたredoレコードが、デ
ータベース名、該データベース内のブロック番号、該ブ
ロック内のオフセット位置及び発生順に従って分類され
たredoレコードである、ログ・アキュムレータ手段
と、 複数個の更新ブロックをデータベースからバッファに定
期的に順次読み出す手段と、 分類された前記redoレコードをバッファ内の更新ブ
ロックに順次適用する手段と、 前記更新ブロックを記憶装置に書き戻す手段とを有する
データベースを更新するための装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US959849 | 1992-10-13 | ||
US07/959,849 US5530855A (en) | 1992-10-13 | 1992-10-13 | Replicating a database by the sequential application of hierarchically sorted log records |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06195250A true JPH06195250A (ja) | 1994-07-15 |
JP2708356B2 JP2708356B2 (ja) | 1998-02-04 |
Family
ID=25502492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5255526A Expired - Fee Related JP2708356B2 (ja) | 1992-10-13 | 1993-10-13 | データベースを更新するための方法、システム及び装置 |
Country Status (2)
Country | Link |
---|---|
US (2) | US5530855A (ja) |
JP (1) | JP2708356B2 (ja) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004511854A (ja) * | 2000-10-09 | 2004-04-15 | マキシマム アヴェイラビリティ リミテッド | データ処理の方法及び装置 |
JP2004519754A (ja) * | 2000-09-06 | 2004-07-02 | ユニシス コーポレイシヨン | データの整合性を保証するための方法および装置 |
WO2004090726A1 (ja) * | 2003-04-04 | 2004-10-21 | Fujitsu Limited | データベース複製プログラムおよびデータベース複製装置 |
JP2006525599A (ja) * | 2003-04-30 | 2006-11-09 | オラクル・インターナショナル・コーポレイション | フラッシュバックデータベース |
JP2007531156A (ja) * | 2004-03-29 | 2007-11-01 | マイクロソフト コーポレーション | データベース復旧中のスナップショットクエリのためのシステムおよび方法 |
JP2011248434A (ja) * | 2010-05-24 | 2011-12-08 | Nec Corp | データベース・レプリケーション・システム、データベース・レプリケーション方法、情報処理装置、及び、プログラム |
JP2013057996A (ja) * | 2011-09-07 | 2013-03-28 | Internatl Business Mach Corp <Ibm> | トランザクションの処理時間を算出する装置及び方法 |
JP2017068342A (ja) * | 2015-09-28 | 2017-04-06 | 富士通株式会社 | 制御プログラム、制御方法、及び、情報処理装置 |
WO2017188484A1 (ko) * | 2016-04-29 | 2017-11-02 | 주식회사 울프슨랩 | 메모리 관리 방법, 이를 위한 컴퓨터 프로그램, 그 기록매체 |
JP2018077895A (ja) * | 2013-03-15 | 2018-05-17 | アマゾン・テクノロジーズ・インコーポレーテッド | 分散型データベースシステム用高速クラッシュ回復 |
WO2018097521A1 (ko) * | 2016-11-25 | 2018-05-31 | 주식회사 실크로드소프트 | 데이터베이스의 이중화를 위한 방법 |
Families Citing this family (216)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530855A (en) | 1992-10-13 | 1996-06-25 | International Business Machines Corporation | Replicating a database by the sequential application of hierarchically sorted log records |
US5812748A (en) * | 1993-06-23 | 1998-09-22 | Vinca Corporation | Method for improving recovery performance from hardware and software errors in a fault-tolerant computer system |
US5553279A (en) * | 1993-10-08 | 1996-09-03 | International Business Machines Corporation | Lossless distribution of time series data in a relational data base network |
US5615329A (en) * | 1994-02-22 | 1997-03-25 | International Business Machines Corporation | Remote data duplexing |
JP3497886B2 (ja) * | 1994-05-10 | 2004-02-16 | 富士通株式会社 | サーバ間データ連携装置 |
JP3515810B2 (ja) * | 1994-08-16 | 2004-04-05 | 富士通株式会社 | ソート処理方法および装置 |
US5649152A (en) | 1994-10-13 | 1997-07-15 | Vinca Corporation | Method and system for providing a static snapshot of data stored on a mass storage system |
US5835953A (en) | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
US5684990A (en) * | 1995-01-11 | 1997-11-04 | Puma Technology, Inc. | Synchronization of disparate databases |
US5740433A (en) * | 1995-01-24 | 1998-04-14 | Tandem Computers, Inc. | Remote duplicate database facility with improved throughput and fault tolerance |
US5835915A (en) * | 1995-01-24 | 1998-11-10 | Tandem Computer | Remote duplicate database facility with improved throughput and fault tolerance |
US5729742A (en) * | 1995-02-27 | 1998-03-17 | International Business Machines Corporation | System and method for enabling multiple computer systems to share a single sequential log |
US6453325B1 (en) * | 1995-05-24 | 2002-09-17 | International Business Machines Corporation | Method and means for backup and restoration of a database system linked to a system for filing data |
US5757669A (en) | 1995-05-31 | 1998-05-26 | Netscape Communications Corporation | Method and apparatus for workgroup information replication |
US5768582A (en) * | 1995-06-07 | 1998-06-16 | International Business Machines Corporation | Computer program product for domained incremental changes storage and retrieval |
US5680621A (en) * | 1995-06-07 | 1997-10-21 | International Business Machines Corporation | System and method for domained incremental changes storage and retrieval |
US5899998A (en) * | 1995-08-31 | 1999-05-04 | Medcard Systems, Inc. | Method and system for maintaining and updating computerized medical records |
US5878428A (en) * | 1995-11-20 | 1999-03-02 | International Business Machines Corporation | System, method, and article of manufacture for adding transactional recovery to a binary class in an object oriented system |
JP2888188B2 (ja) * | 1996-03-12 | 1999-05-10 | 松下電器産業株式会社 | 情報検索装置 |
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 |
US5799210A (en) | 1996-04-18 | 1998-08-25 | Oracle Corporation | Method for allocating either private or shared buffer memory for storing data from sort operations in accordance with an assigned value or threshold value |
US6467046B1 (en) * | 1996-05-06 | 2002-10-15 | Sun Microsystems, Inc. | System and method for automatically distributing copies of a replicated database in a computer system |
US7555458B1 (en) | 1996-06-05 | 2009-06-30 | Fraud Control System.Com Corporation | Method of billing a purchase made over a computer network |
US8229844B2 (en) | 1996-06-05 | 2012-07-24 | Fraud Control Systems.Com Corporation | Method of billing a purchase made over a computer network |
US20030195848A1 (en) | 1996-06-05 | 2003-10-16 | David Felger | Method of billing a purchase made over a computer network |
US5819272A (en) * | 1996-07-12 | 1998-10-06 | Microsoft Corporation | Record tracking in database replication |
US5987464A (en) * | 1996-07-26 | 1999-11-16 | Schneider; Eric | Method and system for periodically updating data records having an expiry time |
US5758355A (en) * | 1996-08-07 | 1998-05-26 | Aurum Software, Inc. | Synchronization of server database with client database using distribution tables |
US6321234B1 (en) * | 1996-09-18 | 2001-11-20 | Sybase, Inc. | Database server system with improved methods for logging transactions |
WO1998012650A1 (en) * | 1996-09-18 | 1998-03-26 | Mci Communications Corporation | System and method for hierarchical data distribution |
US5943675A (en) * | 1996-09-25 | 1999-08-24 | Allen-Bradley Company, Llc | Change log historian system for memory shared by multiple workstations |
US5842222A (en) * | 1996-10-04 | 1998-11-24 | Taiwan Semiconductor Manufacturing Company, Ltd. | Production information system enhanced for availability |
US6038665A (en) * | 1996-12-03 | 2000-03-14 | Fairbanks Systems Group | System and method for backing up computer files over a wide area computer network |
US5794254A (en) * | 1996-12-03 | 1998-08-11 | Fairbanks Systems Group | Incremental computer file backup using a two-step comparison of first two characters in the block and a signature with pre-stored character and signature sets |
US6158019A (en) * | 1996-12-15 | 2000-12-05 | Delta-Tek Research, Inc. | System and apparatus for merging a write event journal and an original storage to produce an updated storage using an event map |
US5781912A (en) * | 1996-12-19 | 1998-07-14 | Oracle Corporation | Recoverable data replication between source site and destination site without distributed transactions |
US5870761A (en) * | 1996-12-19 | 1999-02-09 | Oracle Corporation | Parallel queue propagation |
US5832516A (en) * | 1997-01-21 | 1998-11-03 | Oracle Corporation | Caching data in recoverable objects |
US7389312B2 (en) | 1997-04-28 | 2008-06-17 | Emc Corporation | Mirroring network data to establish virtual storage area network |
SE521041C2 (sv) * | 1997-05-28 | 2003-09-23 | Ericsson Telefon Ab L M | Metod för optimering av transaktionsprotokoll inom en distribuerad databas |
US6442549B1 (en) | 1997-07-25 | 2002-08-27 | Eric Schneider | Method, product, and apparatus for processing reusable information |
US6760746B1 (en) * | 1999-09-01 | 2004-07-06 | Eric Schneider | Method, product, and apparatus for processing a data request |
US5953728A (en) * | 1997-07-25 | 1999-09-14 | Claritech Corporation | System for modifying a database using a transaction log |
US6016553A (en) | 1997-09-05 | 2000-01-18 | Wild File, Inc. | Method, software and apparatus for saving, using and recovering data |
US5924096A (en) * | 1997-10-15 | 1999-07-13 | Novell, Inc. | Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand |
GB2330923A (en) * | 1997-10-28 | 1999-05-05 | Ibm | Transaction manager |
US5946700A (en) * | 1997-10-31 | 1999-08-31 | Oracle Corporation | Method and apparatus for preserving non-current information that can be overwritten in a computer file |
US5974415A (en) * | 1997-11-10 | 1999-10-26 | International Business Machines | System and method for computer-aided heuristic adaptive attribute matching |
US5970491A (en) * | 1997-11-10 | 1999-10-19 | International Business Machines Corporation | System and method of storage management for an electronic mail system |
US5931955A (en) * | 1997-12-15 | 1999-08-03 | At&T Corp | Method and generic automatic database recovery |
US6185699B1 (en) | 1998-01-05 | 2001-02-06 | International Business Machines Corporation | Method and apparatus providing system availability during DBMS restart recovery |
US6393437B1 (en) * | 1998-01-27 | 2002-05-21 | Microsoft Corporation | Web developer isolation techniques |
US6732123B1 (en) * | 1998-02-23 | 2004-05-04 | International Business Machines Corporation | Database recovery to any point in time in an online environment utilizing disaster recovery technology |
US6173292B1 (en) | 1998-03-04 | 2001-01-09 | International Business Machines Corporation | Data recovery in a transactional database using write-ahead logging and file caching |
US6065018A (en) * | 1998-03-04 | 2000-05-16 | International Business Machines Corporation | Synchronizing recovery log having time stamp to a remote site for disaster recovery of a primary database having related hierarchial and relational databases |
US6732293B1 (en) | 1998-03-16 | 2004-05-04 | Symantec Corporation | Method, software and apparatus for recovering and recycling data in conjunction with an operating system |
US6016501A (en) * | 1998-03-18 | 2000-01-18 | Bmc Software | Enterprise data movement system and method which performs data load and changed data propagation operations |
US6029178A (en) * | 1998-03-18 | 2000-02-22 | Bmc Software | Enterprise data movement system and method which maintains and compares edition levels for consistency of replicated data |
US6226651B1 (en) | 1998-03-27 | 2001-05-01 | International Business Machines Corporation | Database disaster remote site recovery |
US6035307A (en) * | 1998-03-30 | 2000-03-07 | Bmc Software | Enterprise data movement system and method including opportunistic performance of utilities and data move operations for improved efficiency |
US6289357B1 (en) | 1998-04-24 | 2001-09-11 | Platinum Technology Ip, Inc. | Method of automatically synchronizing mirrored database objects |
US6154852A (en) * | 1998-06-10 | 2000-11-28 | International Business Machines Corporation | Method and apparatus for data backup and recovery |
US6301643B1 (en) | 1998-09-03 | 2001-10-09 | International Business Machines Corporation | Multi-environment data consistency |
US6147687A (en) * | 1998-10-02 | 2000-11-14 | International Business Machines Corporation | Dynamic and selective buffering tree view refresh with viewable pending notification |
US6594656B1 (en) | 1999-01-22 | 2003-07-15 | Avaya Technology Corp. | Active database trigger processing using a trigger gateway |
US6584477B1 (en) * | 1999-02-04 | 2003-06-24 | Hewlett Packard Development Company, L.P. | High speed system and method for replicating a large database at a remote location |
US7188138B1 (en) | 1999-03-22 | 2007-03-06 | Eric Schneider | Method, product, and apparatus for resource identifier registration and aftermarket services |
USRE43690E1 (en) | 1999-03-22 | 2012-09-25 | Esdr Network Solutions Llc | Search engine request method, product, and apparatus |
US8037168B2 (en) | 1999-07-15 | 2011-10-11 | Esdr Network Solutions Llc | Method, product, and apparatus for enhancing resolution services, registration services, and search services |
US9141717B2 (en) | 1999-03-22 | 2015-09-22 | Esdr Network Solutions Llc | Methods, systems, products, and devices for processing DNS friendly identifiers |
US6338082B1 (en) | 1999-03-22 | 2002-01-08 | Eric Schneider | Method, product, and apparatus for requesting a network resource |
JP3763992B2 (ja) * | 1999-03-30 | 2006-04-05 | 富士通株式会社 | データ処理装置及び記録媒体 |
US6473776B2 (en) | 1999-04-16 | 2002-10-29 | International Business Machines Corporation | Automatic prunning for log-based replication |
US7055055B1 (en) | 1999-04-23 | 2006-05-30 | Symantec Corporation | Write cache flushing method for reducing data corruption |
US6874104B1 (en) | 1999-06-11 | 2005-03-29 | International Business Machines Corporation | Assigning recoverable unique sequence numbers in a transaction processing system |
US7051055B1 (en) | 1999-07-09 | 2006-05-23 | Symantec Corporation | Optimized disk storage defragmentation with swapping capabilities |
AU6081200A (en) * | 1999-07-09 | 2001-01-30 | Eric D. Schneider | Optimized disk storage defragmentation with swapping capabilities |
USRE44207E1 (en) | 1999-09-01 | 2013-05-07 | Esdr Network Solutions Llc | Network resource access method, product, and apparatus |
US7805423B1 (en) | 1999-11-15 | 2010-09-28 | Quest Software, Inc. | System and method for quiescing select data modification operations against an object of a database during one or more structural operations |
US6658589B1 (en) * | 1999-12-20 | 2003-12-02 | Emc Corporation | System and method for backup a parallel server data storage system |
US7065538B2 (en) * | 2000-02-11 | 2006-06-20 | Quest Software, Inc. | System and method for reconciling transactions between a replication system and a recovered database |
US7062648B2 (en) * | 2000-02-18 | 2006-06-13 | Avamar Technologies, Inc. | System and method for redundant array network storage |
US6826711B2 (en) | 2000-02-18 | 2004-11-30 | Avamar Technologies, Inc. | System and method for data protection with multidimensional parity |
US7194504B2 (en) * | 2000-02-18 | 2007-03-20 | Avamar Technologies, Inc. | System and method for representing and maintaining redundant data sets utilizing DNA transmission and transcription techniques |
US7509420B2 (en) | 2000-02-18 | 2009-03-24 | Emc Corporation | System and method for intelligent, globally distributed network storage |
US6704730B2 (en) | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
KR100390853B1 (ko) * | 2000-06-07 | 2003-07-10 | 차상균 | 주 메모리 트랜잭션 처리 시스템에서 병렬적 회복 연산을 위한 디퍼런셜 로깅 방법 및 장치 |
US6732125B1 (en) * | 2000-09-08 | 2004-05-04 | Storage Technology Corporation | Self archiving log structured volume with intrinsic data protection |
DE10053016A1 (de) * | 2000-10-17 | 2002-04-25 | Libelle Informatik Gmbh | Vorrichtung und Verfahren zur Datenspiegelung |
US6810398B2 (en) * | 2000-11-06 | 2004-10-26 | Avamar Technologies, Inc. | System and method for unorchestrated determination of data sequences using sticky byte factoring to determine breakpoints in digital sequences |
US6973023B1 (en) * | 2000-12-30 | 2005-12-06 | Cisco Technology, Inc. | Method for routing information over a network employing centralized control |
US7464113B1 (en) * | 2001-05-10 | 2008-12-09 | Oracle International Corporations | Disaster recovery with bounded data loss |
US7657576B1 (en) * | 2001-05-24 | 2010-02-02 | Oracle International Corporation | Asynchronous change capture for data warehousing |
JP4076326B2 (ja) * | 2001-05-25 | 2008-04-16 | 富士通株式会社 | バックアップシステム、データベース装置、データベース装置のバックアップ方法、データベース管理プログラム、バックアップ装置、バックアップ方法および、バックアッププログラム |
US6862671B1 (en) * | 2001-08-06 | 2005-03-01 | Lsi Logic Corporation | System and method for optimizing establishment of mirrored data |
US6959401B2 (en) * | 2001-09-04 | 2005-10-25 | Microsoft Corporation | Recovery guarantees for software components |
US7047441B1 (en) * | 2001-09-04 | 2006-05-16 | Microsoft Corporation | Recovery guarantees for general multi-tier applications |
US6980988B1 (en) * | 2001-10-01 | 2005-12-27 | Oracle International Corporation | Method of applying changes to a standby database system |
US7036043B2 (en) | 2001-12-28 | 2006-04-25 | Storage Technology Corporation | Data management with virtual recovery mapping and backward moves |
US20030125815A1 (en) * | 2001-12-31 | 2003-07-03 | Ghanime George Hanna | E-installation system and method for use in installation of power-plant equipment |
US7565402B2 (en) | 2002-01-05 | 2009-07-21 | Eric Schneider | Sitemap access method, product, and apparatus |
US7406486B1 (en) | 2002-04-10 | 2008-07-29 | Oracle International Corporation | Transforming transactions to increase parallelism when replicating |
US8738568B2 (en) | 2011-05-05 | 2014-05-27 | Oracle International Corporation | User-defined parallelization in transactional replication of in-memory database |
US7127467B2 (en) * | 2002-05-10 | 2006-10-24 | Oracle International Corporation | Managing expressions in a database system |
WO2004012062A2 (en) * | 2002-07-30 | 2004-02-05 | Acs State & Local Solutions, Inc. | Systems and methods for processing benefits |
US7565379B2 (en) * | 2002-08-01 | 2009-07-21 | Edwina Lu | Preventing change cycling using rules and redo tags in a redo log |
US8005802B2 (en) * | 2002-08-01 | 2011-08-23 | Oracle International Corporation | Partial evaluation of rule sets |
US7613741B2 (en) * | 2002-08-01 | 2009-11-03 | Oracle International Corporation | Utilizing rules in a distributed information sharing system |
US7191298B2 (en) | 2002-08-02 | 2007-03-13 | International Business Machines Corporation | Flexible system and method for mirroring data |
US8340979B2 (en) * | 2002-10-01 | 2012-12-25 | Acs State & Local Solutions, Inc. | Systems and methods for electronically processing government sponsored benefits |
US7587434B2 (en) * | 2002-10-01 | 2009-09-08 | Acs State & Local Solutions, Inc. | Method and system for managing a distributed transaction process |
NZ521983A (en) * | 2002-10-14 | 2005-05-27 | Maximum Availability Ltd | Journaling changes to system objects such as programs in the IBM OS/400 operating system |
JP4290975B2 (ja) | 2002-12-19 | 2009-07-08 | 株式会社日立製作所 | データベース処理方法及び装置並びにその処理プログラム及びディザスタリカバリ方法及びシステム |
JP4393762B2 (ja) * | 2002-12-19 | 2010-01-06 | 株式会社日立製作所 | データベース処理方法及び装置並びにその処理プログラム |
US7827282B2 (en) * | 2003-01-08 | 2010-11-02 | At&T Intellectual Property I, L.P. | System and method for processing hardware or service usage data |
US7080060B2 (en) * | 2003-01-08 | 2006-07-18 | Sbc Properties, L.P. | System and method for intelligent data caching |
US7177886B2 (en) | 2003-02-07 | 2007-02-13 | International Business Machines Corporation | Apparatus and method for coordinating logical data replication with highly available data replication |
US7383264B2 (en) * | 2003-03-27 | 2008-06-03 | Hitachi, Ltd. | Data control method for duplicating data between computer systems |
JP4301849B2 (ja) * | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法 |
US7085782B2 (en) * | 2003-05-14 | 2006-08-01 | International Business Machines Corporation | Log grooming in a multi-log environment |
CA2472887A1 (en) * | 2003-06-30 | 2004-12-30 | Gravic, Inc. | Methods for ensuring referential integrity in multithreaded replication engines |
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 |
US7725760B2 (en) | 2003-09-23 | 2010-05-25 | Symantec Operating Corporation | Data storage system |
US7991748B2 (en) | 2003-09-23 | 2011-08-02 | Symantec Corporation | Virtual data store creation and use |
US7827362B2 (en) | 2004-08-24 | 2010-11-02 | Symantec Corporation | Systems, apparatus, and methods for processing I/O requests |
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 |
US7577806B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Systems and methods for time dependent data storage and recovery |
US7577807B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Methods and devices for restoring a portion of a data store |
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 |
US7730222B2 (en) | 2004-08-24 | 2010-06-01 | Symantec Operating System | Processing storage-related I/O requests using binary tree data structures |
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 |
US7409587B2 (en) | 2004-08-24 | 2008-08-05 | Symantec Operating Corporation | Recovering from storage transaction failures using checkpoints |
US7904428B2 (en) | 2003-09-23 | 2011-03-08 | Symantec Corporation | Methods and apparatus for recording write requests directed to a data store |
US7284018B1 (en) * | 2003-10-15 | 2007-10-16 | Sun Microsystems, Inc. | Logless transaction coordination |
US7143122B2 (en) * | 2003-10-28 | 2006-11-28 | Pillar Data Systems, Inc. | Data replication in data storage systems |
US7447710B2 (en) * | 2003-12-11 | 2008-11-04 | Sybase, Inc. | Database system providing self-tuned parallel database recovery |
US7039661B1 (en) | 2003-12-29 | 2006-05-02 | Veritas Operating Corporation | Coordinated dirty block tracking |
US7299378B2 (en) * | 2004-01-15 | 2007-11-20 | Oracle International Corporation | Geographically distributed clusters |
ATE361495T1 (de) * | 2004-03-18 | 2007-05-15 | Alcatel Lucent | Verfahren und vorrichtung zur datensynchronisierung eines verteilten datenbanksystems |
ATE369014T1 (de) | 2004-03-18 | 2007-08-15 | Alcatel Lucent | Dienstbereitstellungssystem |
JP4452533B2 (ja) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | システムおよび記憶装置システム |
US20050222996A1 (en) * | 2004-03-30 | 2005-10-06 | Oracle International Corporation | Managing event-condition-action rules in a database system |
JP4581500B2 (ja) * | 2004-06-17 | 2010-11-17 | 株式会社日立製作所 | ディザスタリカバリシステム、プログラム及びデータベースのリカバリ方法 |
US8694538B1 (en) * | 2004-06-18 | 2014-04-08 | Symantec Operating Corporation | Method and apparatus for logging write requests to a storage volume in a network data switch |
US7243201B2 (en) * | 2004-07-22 | 2007-07-10 | International Business Machines Corporation | Application-based commit for local storage subsystems and remote storage subsystems |
US20060059209A1 (en) * | 2004-09-14 | 2006-03-16 | Lashley Scott D | Crash recovery by logging extra data |
JP4489550B2 (ja) * | 2004-09-30 | 2010-06-23 | 株式会社日立製作所 | バックアップデータ作成管理方法 |
US7577805B2 (en) * | 2004-11-01 | 2009-08-18 | Hitachi, Ltd. | Using bandwidth and capacity parameters to control remote copy operations in storage systems |
US7949665B1 (en) | 2004-11-19 | 2011-05-24 | Symantec Corporation | Rapidly traversing disc volumes during file content examination |
US7583588B2 (en) * | 2004-11-30 | 2009-09-01 | Broadcom Corporation | System and method for maintaining a layer 2 modification buffer |
AR052083A1 (es) * | 2005-01-07 | 2007-02-28 | Thomson Global Resources | Sistemas ,metodos y software para carga distribuida de bases de datos |
KR100515890B1 (ko) * | 2005-03-07 | 2005-09-20 | 주식회사 퓨전소프트 | 효율적인 데이터베이스 복구방법 |
JP4731975B2 (ja) * | 2005-04-20 | 2011-07-27 | 株式会社日立製作所 | データベース管理方法、およびストレージシステム |
CN101313279A (zh) | 2005-10-14 | 2008-11-26 | 塞门铁克操作公司 | 一种在数据存储器中用于时间线压缩的技术 |
US20070100902A1 (en) * | 2005-10-27 | 2007-05-03 | Dinesh Sinha | Two way incremental dynamic application data synchronization |
CA2626227C (en) * | 2005-10-28 | 2016-07-05 | Goldengate Software, Inc. | Apparatus and method for creating a real time database replica |
US20070168975A1 (en) * | 2005-12-13 | 2007-07-19 | Thomas Kessler | Debugger and test tool |
JP4727437B2 (ja) * | 2006-02-03 | 2011-07-20 | 株式会社日立製作所 | データベースを有するストレージシステムの記憶制御方法 |
US20070208790A1 (en) * | 2006-03-06 | 2007-09-06 | Reuter James M | Distributed data-storage system |
CN101046807B (zh) * | 2006-03-31 | 2010-04-14 | 华为技术有限公司 | 存储数据已读信息的方法及装置 |
EP3336707A1 (en) | 2006-05-05 | 2018-06-20 | Hybir Inc. | Group based complete and incremental computer file backup system, process and apparatus |
JP4833734B2 (ja) * | 2006-05-19 | 2011-12-07 | 株式会社日立製作所 | データベースシステム、ストレージ装置、初期コピー方法及びログ適用方法 |
US7953698B2 (en) * | 2006-08-03 | 2011-05-31 | Sybase, Inc. | Replication system with methodology for replicating stored procedure calls |
US7890457B2 (en) * | 2006-10-20 | 2011-02-15 | Oracle International Corporation | Transactionally consistent database workload replay |
US7653664B2 (en) * | 2006-11-03 | 2010-01-26 | Microsoft Corporation | Anchor for database synchronization excluding uncommitted transaction modifications |
US8510524B1 (en) | 2007-03-29 | 2013-08-13 | Netapp, Inc. | File system capable of generating snapshots and providing fast sequential read access |
US8533410B1 (en) | 2007-03-29 | 2013-09-10 | Netapp, Inc. | Maintaining snapshot and active file system metadata in an on-disk structure of a file system |
US7849057B1 (en) * | 2007-03-30 | 2010-12-07 | Netapp, Inc. | Identifying snapshot membership for blocks based on snapid |
KR100926880B1 (ko) * | 2007-05-21 | 2009-11-16 | 엔에이치엔(주) | Dbms에서의 데이터 복제 방법 및 시스템 |
US9195700B1 (en) | 2007-10-10 | 2015-11-24 | United Services Automobile Association (Usaa) | Systems and methods for storing time-series data |
US11226947B1 (en) | 2007-10-10 | 2022-01-18 | United Services Automobile Association (Usaa) | Systems and methods for storing time-series data |
US8458127B1 (en) | 2007-12-28 | 2013-06-04 | Blue Coat Systems, Inc. | Application data synchronization |
US9098676B2 (en) * | 2008-04-16 | 2015-08-04 | Safenet, Inc. | System and methods for detecting rollback |
US8135930B1 (en) | 2008-07-14 | 2012-03-13 | Vizioncore, Inc. | Replication systems and methods for a virtual computing environment |
US8046550B2 (en) | 2008-07-14 | 2011-10-25 | Quest Software, Inc. | Systems and methods for performing backup operations of virtual machine files |
US8060476B1 (en) | 2008-07-14 | 2011-11-15 | Quest Software, Inc. | Backup systems and methods for a virtual computing environment |
US8429649B1 (en) | 2008-09-25 | 2013-04-23 | Quest Software, Inc. | Systems and methods for data management in a virtual computing environment |
US8996468B1 (en) | 2009-04-17 | 2015-03-31 | Dell Software Inc. | Block status mapping system for reducing virtual machine backup storage |
US8281185B2 (en) * | 2009-06-30 | 2012-10-02 | Oracle America, Inc. | Advice-based feedback for transactional execution |
US9778946B2 (en) * | 2009-08-07 | 2017-10-03 | Dell Software Inc. | Optimized copy of virtual machine storage files |
US8453145B1 (en) | 2010-05-06 | 2013-05-28 | Quest Software, Inc. | Systems and methods for instant provisioning of virtual machine files |
US8504526B2 (en) * | 2010-06-04 | 2013-08-06 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations |
US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
US9569446B1 (en) | 2010-06-08 | 2017-02-14 | Dell Software Inc. | Cataloging system for image-based backup |
US8868484B2 (en) | 2010-07-08 | 2014-10-21 | Oracle International Corporation | Efficiently updating rows in a data warehouse |
US9547562B1 (en) | 2010-08-11 | 2017-01-17 | Dell Software Inc. | Boot restore system for rapidly restoring virtual machine backups |
US8898114B1 (en) | 2010-08-27 | 2014-11-25 | Dell Software Inc. | Multitier deduplication systems and methods |
JP5640767B2 (ja) * | 2011-01-25 | 2014-12-17 | 富士通株式会社 | 情報処理装置、データ管理方法およびデータベースシステム |
US8818954B1 (en) | 2011-03-31 | 2014-08-26 | Emc Corporation | Change tracking |
US8938429B1 (en) * | 2011-03-31 | 2015-01-20 | Emc Corporation | Resynchronization of nonactive and active segments |
US8612390B2 (en) | 2011-05-02 | 2013-12-17 | Microsoft Corporation | Lightweight caching of transaction log for sequential access |
US10860563B2 (en) | 2012-01-06 | 2020-12-08 | Microsoft Technology Licensing, Llc | Distributed database with modular blocks and associated log files |
US9753999B2 (en) | 2012-01-06 | 2017-09-05 | Citus Data Bilgi Islemieri Ticaret A.S. | Distributed database with mappings between append-only files and repartitioned files |
US9311375B1 (en) | 2012-02-07 | 2016-04-12 | Dell Software Inc. | Systems and methods for compacting a virtual machine file |
CN103631831B (zh) * | 2012-08-29 | 2016-12-21 | 阿里巴巴集团控股有限公司 | 一种数据备份方法及装置 |
PL2723023T3 (pl) * | 2012-10-19 | 2020-07-13 | Lleidanetworks Serveis Telemàtics S.A. | Sposób rejestracji i certyfikowania odbioru poczty elektronicznej |
US8856070B2 (en) | 2012-12-21 | 2014-10-07 | International Business Machines Corporation | Consistent replication of transactional updates |
US9563655B2 (en) | 2013-03-08 | 2017-02-07 | Oracle International Corporation | Zero and near-zero data loss database backup and recovery |
US9483363B2 (en) | 2013-05-08 | 2016-11-01 | Commvault Systems, Inc. | Use of temporary secondary copies in failover operations |
WO2015104835A1 (ja) | 2014-01-10 | 2015-07-16 | 株式会社日立製作所 | データベースシステムの制御方法及びデータベースシステム |
US9747356B2 (en) | 2014-01-23 | 2017-08-29 | Oracle International Corporation | Eager replication of uncommitted transactions |
US9454590B2 (en) | 2014-01-28 | 2016-09-27 | International Business Machines Corporation | Predicting validity of data replication prior to actual replication in a transaction processing system |
US9811427B2 (en) | 2014-04-02 | 2017-11-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
US20160218935A1 (en) | 2015-01-27 | 2016-07-28 | Bank Of America Corporation | User interface and dashboard for holistic data transmission throughout an enterprise |
US9922069B2 (en) * | 2015-03-16 | 2018-03-20 | International Business Machines Corporation | Establishing a chain of trust in a system log |
US9507636B2 (en) * | 2015-04-20 | 2016-11-29 | International Business Machines Corporation | Resource management and allocation using history information stored in application's commit signature log |
US9928259B2 (en) | 2015-04-21 | 2018-03-27 | International Business Machines Corporation | Deleted database record reuse |
US10684994B2 (en) * | 2015-09-25 | 2020-06-16 | Netapp Inc. | Data synchronization |
US10417102B2 (en) | 2016-09-30 | 2019-09-17 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, including virtual machine distribution logic |
KR101990329B1 (ko) * | 2017-08-10 | 2019-06-18 | 주식회사 티맥스데이터 | 로그 데이터 분석을 이용한 데이터베이스 복구 속도 향상 기법 및 장치 |
US11204940B2 (en) | 2018-11-16 | 2021-12-21 | International Business Machines Corporation | Data replication conflict processing after structural changes to a database |
US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
KR102085608B1 (ko) * | 2018-12-21 | 2020-03-06 | 주식회사 티맥스데이터 | 복구 서버 및 컴퓨터 프로그램 |
US11500740B2 (en) * | 2019-11-22 | 2022-11-15 | EMC IP Holding Company LLC | Continuous data protection |
US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
US11645175B2 (en) | 2021-02-12 | 2023-05-09 | Commvault Systems, Inc. | Automatic failover of a storage manager |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6286426A (ja) * | 1985-10-11 | 1987-04-20 | Nec Corp | デ−タベ−スバツクアツプ方式 |
JPS63140352A (ja) * | 1986-12-02 | 1988-06-11 | Nippon Steel Corp | オンライン・システムのデ−タ・ベ−ス記憶装置 |
JPH0277950A (ja) * | 1988-09-14 | 1990-03-19 | Hitachi Ltd | データベース処理システム |
JPH03122729A (ja) * | 1989-09-25 | 1991-05-24 | Internatl Business Mach Corp <Ibm> | データベース更新システム及び方法 |
JPH0476742A (ja) * | 1990-07-18 | 1992-03-11 | Nec Corp | データベース更新方式 |
JPH0498434A (ja) * | 1990-08-13 | 1992-03-31 | Nec Corp | 分散型ファイル管理方式 |
JPH04107654A (ja) * | 1990-08-28 | 1992-04-09 | Nec Corp | 分散データ制御方式 |
JPH04124743A (ja) * | 1990-09-17 | 1992-04-24 | Toshiba Corp | データ2重化方式 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4357635A (en) * | 1979-03-20 | 1982-11-02 | Ricoh Company, Ltd. | Disc memory apparatus |
US5155678A (en) * | 1985-10-29 | 1992-10-13 | International Business Machines Corporation | Data availability in restartable data base system |
US4853843A (en) * | 1987-12-18 | 1989-08-01 | Tektronix, Inc. | System for merging virtual partitions of a distributed database |
US5043866A (en) * | 1988-04-08 | 1991-08-27 | International Business Machines Corporation | Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery |
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 |
US5274803A (en) * | 1991-04-26 | 1993-12-28 | Sun Microsystems, Inc. | Method and apparatus for aligning a restored parent environment to its child environments with minimal data loss |
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 |
US5280611A (en) * | 1991-11-08 | 1994-01-18 | International Business Machines Corporation | Method for managing database recovery from failure of a shared store in a system including a plurality of transaction-based systems of the write-ahead logging type |
US5530855A (en) | 1992-10-13 | 1996-06-25 | International Business Machines Corporation | Replicating a database by the sequential application of hierarchically sorted log records |
-
1992
- 1992-10-13 US US07/959,849 patent/US5530855A/en not_active Expired - Fee Related
-
1993
- 1993-10-13 JP JP5255526A patent/JP2708356B2/ja not_active Expired - Fee Related
-
1995
- 1995-06-06 US US08/468,081 patent/US5640561A/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6286426A (ja) * | 1985-10-11 | 1987-04-20 | Nec Corp | デ−タベ−スバツクアツプ方式 |
JPS63140352A (ja) * | 1986-12-02 | 1988-06-11 | Nippon Steel Corp | オンライン・システムのデ−タ・ベ−ス記憶装置 |
JPH0277950A (ja) * | 1988-09-14 | 1990-03-19 | Hitachi Ltd | データベース処理システム |
JPH03122729A (ja) * | 1989-09-25 | 1991-05-24 | Internatl Business Mach Corp <Ibm> | データベース更新システム及び方法 |
JPH0476742A (ja) * | 1990-07-18 | 1992-03-11 | Nec Corp | データベース更新方式 |
JPH0498434A (ja) * | 1990-08-13 | 1992-03-31 | Nec Corp | 分散型ファイル管理方式 |
JPH04107654A (ja) * | 1990-08-28 | 1992-04-09 | Nec Corp | 分散データ制御方式 |
JPH04124743A (ja) * | 1990-09-17 | 1992-04-24 | Toshiba Corp | データ2重化方式 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004519754A (ja) * | 2000-09-06 | 2004-07-02 | ユニシス コーポレイシヨン | データの整合性を保証するための方法および装置 |
US8818939B2 (en) | 2000-10-09 | 2014-08-26 | Maximum Availability Ltd. | Method and apparatus for data processing |
JP2006202338A (ja) * | 2000-10-09 | 2006-08-03 | Maximum Availability Ltd | データ処理の方法及び装置 |
US7930271B2 (en) | 2000-10-09 | 2011-04-19 | Maximum Availability Ltd. | Method and apparatus for data processing |
JP2004511854A (ja) * | 2000-10-09 | 2004-04-15 | マキシマム アヴェイラビリティ リミテッド | データ処理の方法及び装置 |
WO2004090726A1 (ja) * | 2003-04-04 | 2004-10-21 | Fujitsu Limited | データベース複製プログラムおよびデータベース複製装置 |
JP2006525599A (ja) * | 2003-04-30 | 2006-11-09 | オラクル・インターナショナル・コーポレイション | フラッシュバックデータベース |
JP2007531156A (ja) * | 2004-03-29 | 2007-11-01 | マイクロソフト コーポレーション | データベース復旧中のスナップショットクエリのためのシステムおよび方法 |
JP2011248434A (ja) * | 2010-05-24 | 2011-12-08 | Nec Corp | データベース・レプリケーション・システム、データベース・レプリケーション方法、情報処理装置、及び、プログラム |
JP2013057996A (ja) * | 2011-09-07 | 2013-03-28 | Internatl Business Mach Corp <Ibm> | トランザクションの処理時間を算出する装置及び方法 |
JP2018077895A (ja) * | 2013-03-15 | 2018-05-17 | アマゾン・テクノロジーズ・インコーポレーテッド | 分散型データベースシステム用高速クラッシュ回復 |
JP2017068342A (ja) * | 2015-09-28 | 2017-04-06 | 富士通株式会社 | 制御プログラム、制御方法、及び、情報処理装置 |
WO2017188484A1 (ko) * | 2016-04-29 | 2017-11-02 | 주식회사 울프슨랩 | 메모리 관리 방법, 이를 위한 컴퓨터 프로그램, 그 기록매체 |
WO2018097521A1 (ko) * | 2016-11-25 | 2018-05-31 | 주식회사 실크로드소프트 | 데이터베이스의 이중화를 위한 방법 |
KR20180059627A (ko) * | 2016-11-25 | 2018-06-05 | 주식회사 실크로드소프트 | 데이터베이스의 이중화를 위한 방법 |
US11210409B2 (en) | 2016-11-25 | 2021-12-28 | Silcroad Soft, Inc. | Method for duplexing database |
Also Published As
Publication number | Publication date |
---|---|
US5640561A (en) | 1997-06-17 |
US5530855A (en) | 1996-06-25 |
JP2708356B2 (ja) | 1998-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2708356B2 (ja) | データベースを更新するための方法、システム及び装置 | |
US6085200A (en) | System and method for arranging database restoration data for efficient data recovery in transaction processing systems | |
US10657008B2 (en) | Managing a redundant computerized database using a replicated database cache | |
US5170480A (en) | Concurrently applying redo records to backup database in a log sequence using single queue server per queue at a time | |
US9830348B2 (en) | Persistent data storage techniques | |
US6584477B1 (en) | High speed system and method for replicating a large database at a remote location | |
US6519613B1 (en) | Non-blocking drain method and apparatus for use in processing requests on a resource | |
Strom et al. | Volatile logging in n-fault-tolerant distributed systems | |
US5379412A (en) | Method and system for dynamic allocation of buffer storage space during backup copying | |
US8150812B2 (en) | Methods, apparatus and computer programs for data replication | |
US8650155B2 (en) | Apparatus and method for log based replication of distributed transactions using globally acknowledged commits | |
CA2436517C (en) | Method and apparatus for data processing | |
US6351744B1 (en) | Multi-processor system for database management | |
US7036043B2 (en) | Data management with virtual recovery mapping and backward moves | |
JP5292489B2 (ja) | 持続的データ記憶技術 | |
US20030135783A1 (en) | Data management appliance | |
KR950014175B1 (ko) | 데이타의 타임제로 백업 복사 방법과 수단 | |
US20040107381A1 (en) | High performance transaction storage and retrieval system for commodity computing environments | |
JPH0454258B2 (ja) | ||
US11010256B1 (en) | Method and system for implementing current, consistent, and complete backup copy by rolling a change log backwards against a storage device | |
US11176004B2 (en) | Test continuous log replay | |
Li et al. | Multiprocessor main memory transaction processing | |
EP0394019A2 (en) | Computerised database system | |
US11301341B2 (en) | Replication system takeover with handshake | |
JPH02292641A (ja) | データベース管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |