JPH03122729A - データベース更新システム及び方法 - Google Patents
データベース更新システム及び方法Info
- Publication number
- JPH03122729A JPH03122729A JP2235953A JP23595390A JPH03122729A JP H03122729 A JPH03122729 A JP H03122729A JP 2235953 A JP2235953 A JP 2235953A JP 23595390 A JP23595390 A JP 23595390A JP H03122729 A JPH03122729 A JP H03122729A
- Authority
- JP
- Japan
- Prior art keywords
- database
- queue
- records
- redo
- 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
- 238000000034 method Methods 0.000 title claims description 81
- 238000012545 processing Methods 0.000 claims abstract description 29
- 238000012546 transfer Methods 0.000 claims abstract description 20
- 230000008859 change Effects 0.000 claims abstract description 5
- 230000008569 process Effects 0.000 claims description 63
- 238000011084 recovery Methods 0.000 abstract description 19
- 230000007246 mechanism Effects 0.000 abstract description 7
- 239000000872 buffer Substances 0.000 description 18
- 238000007726 management method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 108700004714 Gelonium multiflorum GEL Proteins 0.000 description 1
- 101000596892 Homo sapiens Neurotrimin Proteins 0.000 description 1
- 102100035107 Neurotrimin Human genes 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- JEIPFZHSYJVQDO-UHFFFAOYSA-N ferric oxide Chemical compound O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- VLCQZHSMCYCDJL-UHFFFAOYSA-N tribenuron methyl Chemical compound COC(=O)C1=CC=CC=C1S(=O)(=O)NC(=O)N(C)C1=NC(C)=NC(OC)=N1 VLCQZHSMCYCDJL-UHFFFAOYSA-N 0.000 description 1
- SYOKIDBDQMKNDQ-XWTIBIIYSA-N vildagliptin Chemical compound C1C(O)(C2)CC(C3)CC1CC32NCC(=O)N1CCC[C@H]1C#N SYOKIDBDQMKNDQ-XWTIBIIYSA-N 0.000 description 1
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/2097—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 maintaining the standby controller/processing unit updated
-
- 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/202—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 processing functionality is redundant
- G06F11/2038—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 processing functionality is redundant with a single idle spare processing component
-
- 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/202—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 processing functionality is redundant
- G06F11/2048—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 processing functionality is redundant where the redundant components share neither address space nor persistent storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
-
- 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
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は、トランザクシロン処理に関し、特に、プライ
マリ・データベースとレプリカ・データベースの一貫性
を保つために、プライマリ・データベースのトランザク
シロン・ログからのREDO(再実行)レコードを、レ
プリカ・データベースにパラレルに適用する分野に関す
る。
マリ・データベースとレプリカ・データベースの一貫性
を保つために、プライマリ・データベースのトランザク
シロン・ログからのREDO(再実行)レコードを、レ
プリカ・データベースにパラレルに適用する分野に関す
る。
B、従来の技術
従来のトランザクシロン処理では、プライマリ・データ
ベースをリモート赤ロヶーシ日ンで二重化できる。リモ
ート・データベースの目的は、プライマリ・データベー
スの媒体に障害があった場合に備えて、プライマリ・デ
ータベースのバックアップをとることであろう。2つの
データベースの間で一貫性を保つためには、プライマリ
拳データベースの処理をレプリカ・データベースに反映
しなければならない。レプリカに対してレコード処理を
行うときのスループットは、プライマリ参データベース
を対象にしたトランザクション処理システムによって得
られるスルーブツトと少なくとも同程度でなければなら
ない。レプリカの処理にかかるリソースは、 トランザ
クション処理全体にかかる場合よりも少なくする必要が
ある。
ベースをリモート赤ロヶーシ日ンで二重化できる。リモ
ート・データベースの目的は、プライマリ・データベー
スの媒体に障害があった場合に備えて、プライマリ・デ
ータベースのバックアップをとることであろう。2つの
データベースの間で一貫性を保つためには、プライマリ
拳データベースの処理をレプリカ・データベースに反映
しなければならない。レプリカに対してレコード処理を
行うときのスループットは、プライマリ参データベース
を対象にしたトランザクション処理システムによって得
られるスルーブツトと少なくとも同程度でなければなら
ない。レプリカの処理にかかるリソースは、 トランザ
クション処理全体にかかる場合よりも少なくする必要が
ある。
データベースを、プライマリ・データベースに対してト
ランザクション・コンシステントとし、プライマリ・デ
ータベースと同一にするためには、シリアライゼーショ
ンが必要である。プライマリ拳データベースの可用性は
、レプリカに対してトランザクシロン処理を加えること
で減少することのないように維持する必要がある。
ランザクション・コンシステントとし、プライマリ・デ
ータベースと同一にするためには、シリアライゼーショ
ンが必要である。プライマリ拳データベースの可用性は
、レプリカに対してトランザクシロン処理を加えること
で減少することのないように維持する必要がある。
従来の技術によるデータベース二重化の具体例として、
同期型分散データベースを挙げることができる。IBM
のプロトタイプSYstem RSTARは、データ
ベースのコピーを2箇所に格納する同期型分散データベ
ース・システムである。ただし、現在の同期型分散デー
タベース・システムでは、データベース相互間で一貫性
を保つための処理を行うために、またデータベースのシ
リアライゼーションをロックとして利用するために、相
当数のメツセージを交換しなければならない。
同期型分散データベースを挙げることができる。IBM
のプロトタイプSYstem RSTARは、データ
ベースのコピーを2箇所に格納する同期型分散データベ
ース・システムである。ただし、現在の同期型分散デー
タベース・システムでは、データベース相互間で一貫性
を保つための処理を行うために、またデータベースのシ
リアライゼーションをロックとして利用するために、相
当数のメツセージを交換しなければならない。
データベース媒体リカバリ処理には、よく知られたフォ
ワード・リカバリがある。このプロセスでは、データベ
ース・ユニットを再構成するために、ログまたはジャー
ナルに記録されたりカバリ・データによって前のバージ
ョンが更Xfrされる。その際、データベース・ユニッ
トの元のバージ日ンは、ステーブル舎ストレージにセー
ブされる。障害によってデータベースのコピーが破壊さ
れると、データベースの最新バージョンを再+14成す
るために、そのユニットを最後にセーブしたパーツコン
がリストアされ、セーブされたバージョンに対する変更
内容が)破壊されて失われた/<−ジョン(コ対する変
更の順序と同じ順序でログがら適用さ0る。
ワード・リカバリがある。このプロセスでは、データベ
ース・ユニットを再構成するために、ログまたはジャー
ナルに記録されたりカバリ・データによって前のバージ
ョンが更Xfrされる。その際、データベース・ユニッ
トの元のバージ日ンは、ステーブル舎ストレージにセー
ブされる。障害によってデータベースのコピーが破壊さ
れると、データベースの最新バージョンを再+14成す
るために、そのユニットを最後にセーブしたパーツコン
がリストアされ、セーブされたバージョンに対する変更
内容が)破壊されて失われた/<−ジョン(コ対する変
更の順序と同じ順序でログがら適用さ0る。
同期型分散データベースのフォワードφリカlくりは、
元のトランザクション処理を“ミラー゛°スるものであ
る。プライマリ・データベースの変更内容は、変更が生
じたときと同じシーケンスでログされるので、ログ・デ
ータをパラレルに処理するためには、まず、最初から存
在していたロックを取得し、次にログから、REDOレ
コードをパラレルに引き渡せばよい。この操作では、
1回のリカバリで、所定のトランザクションに対する全
レコードが処理され、そのトランザクションに対するロ
ックは、再構成が終わるまで維持され、終了後に解除さ
れる。このリカバリ・ソリューションを制約するのは、
ある特定のトランザクションに対するロックをすべて1
回のプロセスで取得しなかった場合には、ロックの衝突
が起こり、元のシーケンスを再現できなくなることがあ
るという点である。これは、ロックが取得されるまでの
バラレリズムを制限し、ロックが利用できない場合は処
理効率を低下させる。
元のトランザクション処理を“ミラー゛°スるものであ
る。プライマリ・データベースの変更内容は、変更が生
じたときと同じシーケンスでログされるので、ログ・デ
ータをパラレルに処理するためには、まず、最初から存
在していたロックを取得し、次にログから、REDOレ
コードをパラレルに引き渡せばよい。この操作では、
1回のリカバリで、所定のトランザクションに対する全
レコードが処理され、そのトランザクションに対するロ
ックは、再構成が終わるまで維持され、終了後に解除さ
れる。このリカバリ・ソリューションを制約するのは、
ある特定のトランザクションに対するロックをすべて1
回のプロセスで取得しなかった場合には、ロックの衝突
が起こり、元のシーケンスを再現できなくなることがあ
るという点である。これは、ロックが取得されるまでの
バラレリズムを制限し、ロックが利用できない場合は処
理効率を低下させる。
米国特許出願書類第071059666号では、ログ・
レコードが、複数のキューとして、リスタート処理の間
にデータベースに再適用される。
レコードが、複数のキューとして、リスタート処理の間
にデータベースに再適用される。
このυ類は、異なるデータベース・ユニットノ更新は、
ログに示された順序と異なる順序で適用でき、その場合
でも正確さが失われることはないとしている。
ログに示された順序と異なる順序で適用でき、その場合
でも正確さが失われることはないとしている。
人grawalは、 「マルチプロセッサーデータベー
スφマシンのパラレル・ロギングφアルゴリズム(A
Parallel Logglng Algorlth
m for MultiProcessor Data
base Machlnes)J、DATABASE
MACHI NES: Fourth Interna
tlonaYOrkShOlls 1986年3月、
の中で、複数のログに対するログ自レコードのパラレル
・ライトをt是案しているが、リカバリ処理の間、これ
らのログが1個の“バックエンド1′プロセツサを通し
てンリアル処理される。Lyonの「二重化データベー
ス・システムの障害防止設計(Deslgn Con5
iderationsin RepHcated
Database 5yste■s for Di
sasterProtection)、 IEEE C
omputer Conference)1988年春
箋 では1 リモート・データベース機構力f1アクテ
ィブ・データベースのジャーナルから更新内容を抽出し
、それをバックアップ用データベースに適用する。
スφマシンのパラレル・ロギングφアルゴリズム(A
Parallel Logglng Algorlth
m for MultiProcessor Data
base Machlnes)J、DATABASE
MACHI NES: Fourth Interna
tlonaYOrkShOlls 1986年3月、
の中で、複数のログに対するログ自レコードのパラレル
・ライトをt是案しているが、リカバリ処理の間、これ
らのログが1個の“バックエンド1′プロセツサを通し
てンリアル処理される。Lyonの「二重化データベー
ス・システムの障害防止設計(Deslgn Con5
iderationsin RepHcated
Database 5yste■s for Di
sasterProtection)、 IEEE C
omputer Conference)1988年春
箋 では1 リモート・データベース機構力f1アクテ
ィブ・データベースのジャーナルから更新内容を抽出し
、それをバックアップ用データベースに適用する。
C1課題を解決するための手段
本発明の基本を成すのは、トランザクション・ログに関
するリカバリ・レコードに固汀の順序づけを活用するこ
とによって、変更内容をバラレリズムを高めて効率よく
適用でき、よってレプリカ拳データベースと元のデータ
ベースとの一貫性が保証されるという知見である。
するリカバリ・レコードに固汀の順序づけを活用するこ
とによって、変更内容をバラレリズムを高めて効率よく
適用でき、よってレプリカ拳データベースと元のデータ
ベースとの一貫性が保証されるという知見である。
D、実施例
第1図は従来のデータベース管理システムで、7’−9
ベース・レコードのトランザクション処理をサポートす
る。第1図のデータベース管理システムは、データベー
スΦマネジャー(DBMGR)10を含む。マネジャー
10は、ステーブル・ストレージ(DASD 12など
)に格納されたデータベースのアクセスと処理を管理す
る。管理対象(7)f’−9ベースは、ステーブル・ス
トレージに転送単位ごとに格納される。ここで転送単位
は、マネジャーがトランザクション処理のためにステー
ブル−ストレージから取り出す基本単位である。
ベース・レコードのトランザクション処理をサポートす
る。第1図のデータベース管理システムは、データベー
スΦマネジャー(DBMGR)10を含む。マネジャー
10は、ステーブル・ストレージ(DASD 12など
)に格納されたデータベースのアクセスと処理を管理す
る。管理対象(7)f’−9ベースは、ステーブル・ス
トレージに転送単位ごとに格納される。ここで転送単位
は、マネジャーがトランザクション処理のためにステー
ブル−ストレージから取り出す基本単位である。
従来の技術では“ページ°′を転送単位とするのが普通
である。1ページは、物理的な境界を持っDASD12
上の記憶域である。この記憶域の一つを参照符号13で
示した。
である。1ページは、物理的な境界を持っDASD12
上の記憶域である。この記憶域の一つを参照符号13で
示した。
データベースの転送単位は、ステーブル−ストレージI
2から取り出されてアクティブーメそすのバッファ(B
FR)14にログされる。バ。
2から取り出されてアクティブーメそすのバッファ(B
FR)14にログされる。バ。
ファ14に゛入ったメモリーページ内のレコードが処理
され、ページは、ステーブル−ストレージ12内のスト
レージ−セクタに返される。ステーブル・ストレージ1
2とバッファ14とのflF+の転送は、バッファ・マ
ネジャー(BMGR)18によって処理される。マネジ
ャー16はI) B M G R10の管理下で動作す
る。
され、ページは、ステーブル−ストレージ12内のスト
レージ−セクタに返される。ステーブル・ストレージ1
2とバッファ14とのflF+の転送は、バッファ・マ
ネジャー(BMGR)18によって処理される。マネジ
ャー16はI) B M G R10の管理下で動作す
る。
この基本要素はアプリケーンロン番プログラム18が使
用できる。プログラム18はI) B M G Rに対
してトランザクションと目的のレコードをtFi定する
。DBMGRloi;!、BMGR16を呼び出して1
目的のレコードを含むページをバッファ14へ転送させ
る。ページがバッファ14に入ると、アプリケ−シロン
18に必要なトランザクションに応じて目的のレコード
が処理される。更新されたページは、ステーブル・スト
レージのセクタに上書きされる。
用できる。プログラム18はI) B M G Rに対
してトランザクションと目的のレコードをtFi定する
。DBMGRloi;!、BMGR16を呼び出して1
目的のレコードを含むページをバッファ14へ転送させ
る。ページがバッファ14に入ると、アプリケ−シロン
18に必要なトランザクションに応じて目的のレコード
が処理される。更新されたページは、ステーブル・スト
レージのセクタに上書きされる。
システムに障害が起こると、バッファのべ一ノを変更す
るトランザクションが終了した後、更新済みページがバ
ッファからステーブル・ストレージ12へ戻る前に、第
1図のデータベース・システムの動作が停止することが
ある。DBMGRIOのリカバリ機能が起動して修正処
理が行われるのはこの場合である。
るトランザクションが終了した後、更新済みページがバ
ッファからステーブル・ストレージ12へ戻る前に、第
1図のデータベース・システムの動作が停止することが
ある。DBMGRIOのリカバリ機能が起動して修正処
理が行われるのはこの場合である。
リカバリ処理では、 トランザクション・ログ20をス
テーブル−ストレージに維持しておく必要がある。 ト
ランザクションが終了するごとに、ログ20がログ・レ
コードとして記録される。ログ・レコードの構成要素に
はUNDO(取消)とREDoがある。UNDOは、ト
ランザクションによって変更される前のデータベース、
レコードのレプリカである。REDOは変更後のレコー
ドのコピーである。
テーブル−ストレージに維持しておく必要がある。 ト
ランザクションが終了するごとに、ログ20がログ・レ
コードとして記録される。ログ・レコードの構成要素に
はUNDO(取消)とREDoがある。UNDOは、ト
ランザクションによって変更される前のデータベース、
レコードのレプリカである。REDOは変更後のレコー
ドのコピーである。
第2図に示すとおり、媒体リカバリ拳プロセス22は、
トランザクション・ログ20のREDOレコードを使っ
てIフォワードnリカバリを行う。
トランザクション・ログ20のREDOレコードを使っ
てIフォワードnリカバリを行う。
たとえば、仮にレコード番号RAないしRFで示したレ
コードが、ステーブル争ストレージ12に格納されたデ
ータ・セットに含まれる定義済みデータ・ブロックj
(DDB、)に含まれるものとする。また、DDB、
のレコードRBないしRDに対するトランザクションに
よって、それらのレコードが更新されるものとする。更
新のため、BMGR1f3はページDDB、を実メモリ
のバッファ14へ転送し、そこでレコードRB すいL
RDが更新されるが、いずれの場合も、レコード中デー
タCBがCXに変更される。これらのレコードが処理さ
れるとき、レコードが更新されたシーケア8で0ゲロニ
ントリが作られる。レコードが更新されるごとに、UN
DOとREDOのし7−ドがトランザクション・ログ2
0に書き込まれる。
コードが、ステーブル争ストレージ12に格納されたデ
ータ・セットに含まれる定義済みデータ・ブロックj
(DDB、)に含まれるものとする。また、DDB、
のレコードRBないしRDに対するトランザクションに
よって、それらのレコードが更新されるものとする。更
新のため、BMGR1f3はページDDB、を実メモリ
のバッファ14へ転送し、そこでレコードRB すいL
RDが更新されるが、いずれの場合も、レコード中デー
タCBがCXに変更される。これらのレコードが処理さ
れるとき、レコードが更新されたシーケア8で0ゲロニ
ントリが作られる。レコードが更新されるごとに、UN
DOとREDOのし7−ドがトランザクション・ログ2
0に書き込まれる。
たとえばレコードRBを更新するトランザクション・ロ
グ・エントリには、UNDOレコードが含まれ、更新前
のレコード・データを含むフィール)’(CB)、レコ
ードを識別するフィールド(RB)、およびレコードを
含むステーブル・ストレージ・ページのロケ−シロンを
識別する相対ブロック番号(RBN)がつく。ログ・レ
コードのREDOには、レコード・データの更新版を含
むフィールド(CX)、ページを識別するフィールド(
RBN)、およびレコードを識別するフィールド(RB
)が含まれる。レコードRBないしRDを更新するトラ
ンザクシロンが終了したとすると、BMGR16は、ペ
ージDDB、をバッファ14にコピーする。そこでリカ
バリ拳プロセスは、トランザクション・ログのREDO
レコードを使い、レコードRBないしRDを更新する。
グ・エントリには、UNDOレコードが含まれ、更新前
のレコード・データを含むフィール)’(CB)、レコ
ードを識別するフィールド(RB)、およびレコードを
含むステーブル・ストレージ・ページのロケ−シロンを
識別する相対ブロック番号(RBN)がつく。ログ・レ
コードのREDOには、レコード・データの更新版を含
むフィールド(CX)、ページを識別するフィールド(
RBN)、およびレコードを識別するフィールド(RB
)が含まれる。レコードRBないしRDを更新するトラ
ンザクシロンが終了したとすると、BMGR16は、ペ
ージDDB、をバッファ14にコピーする。そこでリカ
バリ拳プロセスは、トランザクション・ログのREDO
レコードを使い、レコードRBないしRDを更新する。
BMGR16は次にバッファ・ページをDDB、 の
ステーブル・ストレージ・ロケーシヨンに書き込む。
ステーブル・ストレージ・ロケーシヨンに書き込む。
媒体りカバリ・プロセス22は、 ’“バックヮードガ
リカバリ・プロセスを伴う。このプロセスでは、終了前
のトランザクシロンによって更新されたレコードが、U
NDOレコードによって前の状態に戻される。
リカバリ・プロセスを伴う。このプロセスでは、終了前
のトランザクシロンによって更新されたレコードが、U
NDOレコードによって前の状態に戻される。
フォワード串リカバリとバックワード・リカバリの両機
能はIBMのデータベース製品で利用できる。この機能
は、プログラム−プロダクトrBM DB2とIMS
/ESAのデータベース・マネジャーでサポートされて
いる。これらの製品ではREDOレコードに加えてUN
DOレコードもログされる。 トランザクションがRE
DOレコードABORTSに関連する場合、UND○レ
コードからのレコード中データは、REDOレコードと
してログされ、データベースに適用されるので、元の更
新内容がレコードにIIバンクアウト°°される。 I
BMプログラム−プロダクトIMS/ESAのデータベ
ース・マネジャーFAST PATHでは、UNDO
レコードはログされず1 変更内容は、REDOレコー
ドがログされて更新ト57ザクシ日ンが終了するまで、
テ+ 、y ′c−x += N(# を寺される。こ
れに関して従来の技術でハ1)う:/fクシロンが11
1(事に終了したことは1 トランザクション・ログの
COMMIT(確約)レコー;′(こよって記録される
C OMM I Tオペレージ日ン番こよって示される
O レコードの変更後↓こトランサクシロンが異常終了
した場合、ABORT (打切り)レコードがログに入
力される。
能はIBMのデータベース製品で利用できる。この機能
は、プログラム−プロダクトrBM DB2とIMS
/ESAのデータベース・マネジャーでサポートされて
いる。これらの製品ではREDOレコードに加えてUN
DOレコードもログされる。 トランザクションがRE
DOレコードABORTSに関連する場合、UND○レ
コードからのレコード中データは、REDOレコードと
してログされ、データベースに適用されるので、元の更
新内容がレコードにIIバンクアウト°°される。 I
BMプログラム−プロダクトIMS/ESAのデータベ
ース・マネジャーFAST PATHでは、UNDO
レコードはログされず1 変更内容は、REDOレコー
ドがログされて更新ト57ザクシ日ンが終了するまで、
テ+ 、y ′c−x += N(# を寺される。こ
れに関して従来の技術でハ1)う:/fクシロンが11
1(事に終了したことは1 トランザクション・ログの
COMMIT(確約)レコー;′(こよって記録される
C OMM I Tオペレージ日ン番こよって示される
O レコードの変更後↓こトランサクシロンが異常終了
した場合、ABORT (打切り)レコードがログに入
力される。
本発明を示す第3図は、アクティブ・システムとともに
動作してトラッキング会データベースを維持するトラッ
キング・システムである。トラッキング・データベース
は、アクティブ・システトによって維持されるプライマ
リ・データベースのレプリカである。アクティブ・シス
テt、 50 f;L(IBM システム 370な
どのコンピユーテイング拳システムでは上述のIBMデ
ータベース製品で構成できる)、トランザクシeン処理
とデータベース管理を行うシステム・コンポーネント5
1を持つ。コンポーネント51は、アクティフ、テータ
ベース52とともにアクティブ・ログ53の維持・更新
も行う。RE I) Oレコードカイアクティブ、トラ
ンザクション・ログ53に入力されると、システム50
はこれらのレコードを通信コンポーネント55を通して
トラッキング・システム60に与える。
動作してトラッキング会データベースを維持するトラッ
キング・システムである。トラッキング・データベース
は、アクティブ・システトによって維持されるプライマ
リ・データベースのレプリカである。アクティブ・シス
テt、 50 f;L(IBM システム 370な
どのコンピユーテイング拳システムでは上述のIBMデ
ータベース製品で構成できる)、トランザクシeン処理
とデータベース管理を行うシステム・コンポーネント5
1を持つ。コンポーネント51は、アクティフ、テータ
ベース52とともにアクティブ・ログ53の維持・更新
も行う。RE I) Oレコードカイアクティブ、トラ
ンザクション・ログ53に入力されると、システム50
はこれらのレコードを通信コンポーネント55を通して
トラッキング・システム60に与える。
本発明を表すのはトラッキング・システム60である。
システム60は、アクティブΦログ53に書き込まれた
REDOレコードを、アクティブ・ログ53のアクティ
ブ・ログ・データ機構62(こ入力されたシーケンスで
受信するプロセス(ログ−レコード・・レシート)61
を含む。機構62は1)ASDなどのステーブル書スト
レージで構成できる。ハツシュ・プロセス65は、アク
ティブ・ログ・データ機構62に入力されたREDOレ
コードをシーケンスを追って取得し、それらを複数のR
EDOレコードやキュー66に登録する。
REDOレコードを、アクティブ・ログ53のアクティ
ブ・ログ・データ機構62(こ入力されたシーケンスで
受信するプロセス(ログ−レコード・・レシート)61
を含む。機構62は1)ASDなどのステーブル書スト
レージで構成できる。ハツシュ・プロセス65は、アク
ティブ・ログ・データ機構62に入力されたREDOレ
コードをシーケンスを追って取得し、それらを複数のR
EDOレコードやキュー66に登録する。
ハツシュ・プロセス65は従来からのものであり、この
意味で、除算/剰仝プロセスから構成できる。このプロ
セスは、各REOQレコ−1’(7)4’11対ブ0ツ
ブ0ツク対して機f老し、各レコード:こ対して新しい
キー値を生成する。ハツシュ0プ0セス65がIMS/
VSタイプのデータ6−ス管理システムで実行されると
すると、このデータベース・システムには、REDOレ
コードをキュー66から入力/出力デバイスへ移動させ
るAMI(アクセス−メソッドψインターフェース)が
含まれる。周知のとおり、 IMS AMTが7リア
ライズするIMS REDOレコードのサブセットは
、インデックスに新しいキー値が生成されたことを表す
。新しいキー値は、ある特定のインデックスに適用され
るので、ノ1ツシュ命プロセス65は、所定のインデッ
クスに対して′6新しく1キー”のREDOレコードが
すべてキュー66のいずれか1個に登録されるように動
作する。
意味で、除算/剰仝プロセスから構成できる。このプロ
セスは、各REOQレコ−1’(7)4’11対ブ0ツ
ブ0ツク対して機f老し、各レコード:こ対して新しい
キー値を生成する。ハツシュ0プ0セス65がIMS/
VSタイプのデータ6−ス管理システムで実行されると
すると、このデータベース・システムには、REDOレ
コードをキュー66から入力/出力デバイスへ移動させ
るAMI(アクセス−メソッドψインターフェース)が
含まれる。周知のとおり、 IMS AMTが7リア
ライズするIMS REDOレコードのサブセットは
、インデックスに新しいキー値が生成されたことを表す
。新しいキー値は、ある特定のインデックスに適用され
るので、ノ1ツシュ命プロセス65は、所定のインデッ
クスに対して′6新しく1キー”のREDOレコードが
すべてキュー66のいずれか1個に登録されるように動
作する。
キュー登録機能は、REDoレコード・キュー66では
暗示的であり、何らかの手法を用いることによって、キ
ュー・サーバ(後述)によるキュー登録解除処理の間に
、キュー登録されたレコードを正しく順序づけることが
できる。ハツシュ・プロセス65が実行されると、1個
のキューの内容が、2ペ一ジ以上に関連するREDOレ
コードになることがあるが、本発明では、そのキューに
ハツシュされるページに関連したREDoレコードがす
べてキューに付加される。
暗示的であり、何らかの手法を用いることによって、キ
ュー・サーバ(後述)によるキュー登録解除処理の間に
、キュー登録されたレコードを正しく順序づけることが
できる。ハツシュ・プロセス65が実行されると、1個
のキューの内容が、2ペ一ジ以上に関連するREDOレ
コードになることがあるが、本発明では、そのキューに
ハツシュされるページに関連したREDoレコードがす
べてキューに付加される。
また本発明では、REDOレコードがそれぞれのキュー
に登録され、後に、アクティブ・トランザクション・ロ
グ53に置かれたのと同じシーケンスで適mされる。
に登録され、後に、アクティブ・トランザクション・ロ
グ53に置かれたのと同じシーケンスで適mされる。
本発明は、これを保証するために、キュー66のいずれ
か一つに対してキュー・サーバを1個しか提供しない。
か一つに対してキュー・サーバを1個しか提供しない。
すなわち、−組のレコード・キュー66のうち、キx−
az blCN dを吸うのはキュー・サーバθ8
だけであり、キュー11L kを扱うのはキュm−サ
ーバ69だけである。
az blCN dを吸うのはキュー・サーバθ8
だけであり、キュー11L kを扱うのはキュm−サ
ーバ69だけである。
したがってレコード拳キュー66の個々のキューに対応
するキューΦサーバは1個だけである。ただし1個のキ
ューΦサーバは、2個以上のキューからのレコードを処
理できる。
するキューΦサーバは1個だけである。ただし1個のキ
ューΦサーバは、2個以上のキューからのレコードを処
理できる。
キュー台サーバ(サーノ<68.69など)(ま、キュ
ー66からRE l) Oレコードを取り出し、そレラ
のR、E D Oレコートヲ、ノくツファ自マネジャー
70を通してトラッキング・データベース72に適用す
る。従来のチャネル’JI I /○は、レコード・キ
ュー66からのREDOレコードを、トラッキング・デ
ータベースを含むステーブル・ストレージにバッファす
る。
ー66からRE l) Oレコードを取り出し、そレラ
のR、E D Oレコートヲ、ノくツファ自マネジャー
70を通してトラッキング・データベース72に適用す
る。従来のチャネル’JI I /○は、レコード・キ
ュー66からのREDOレコードを、トラッキング・デ
ータベースを含むステーブル・ストレージにバッファす
る。
REDOレコードは、−度キュー66に入ると、キュー
・サーバによってトラッキング令データベース72に適
用される。たとえばキューbのREDOレコードは、キ
ューQサーバ68によって1個づつ取り出され、それぞ
れのべ一ノを”JL ?J?するのに用いられる。アク
ティブψシステムで生じたこれらの変更のシーケンスは
、レコード転送プロセスからトラッキング番システム6
0まで、アクティブ・トランザクション・ログ53に保
存され、またアクティブ・ログ・データセット62にも
保存される。レコードはそのレコード・ログ・シーケン
スでレコード会キュー66に/\・ソ/ユされる。その
結果、転送単位に関連したキュー上のREDOレコード
・シーケンスによって、各転送単位(ページ)の更新処
理が時間順に正しく反映される。
・サーバによってトラッキング令データベース72に適
用される。たとえばキューbのREDOレコードは、キ
ューQサーバ68によって1個づつ取り出され、それぞ
れのべ一ノを”JL ?J?するのに用いられる。アク
ティブψシステムで生じたこれらの変更のシーケンスは
、レコード転送プロセスからトラッキング番システム6
0まで、アクティブ・トランザクション・ログ53に保
存され、またアクティブ・ログ・データセット62にも
保存される。レコードはそのレコード・ログ・シーケン
スでレコード会キュー66に/\・ソ/ユされる。その
結果、転送単位に関連したキュー上のREDOレコード
・シーケンスによって、各転送単位(ページ)の更新処
理が時間順に正しく反映される。
第3図に示すように、キュー舎サーバ88.69はパラ
レルに動作する。このパラレル動作は、タトえばマルチ
CPUのコンピュータで異なるCPUを用いることによ
ってサポートできる。
レルに動作する。このパラレル動作は、タトえばマルチ
CPUのコンピュータで異なるCPUを用いることによ
ってサポートできる。
キューφサーバ69はそれぞれ、それが吸うキューから
REDOレコードを取り出して、トラッキング・データ
ベース72に適用する。ここでまた、キュー・サーバが
IMS/VS環境で動作するとすれば、バッフTΦマネ
ノヤ−70は、サーバに呼び出されて、サーバが保持し
ているREDOレコードの相対ブロック番号によって識
別されるブロックの現在値を含むバッファを取得する。
REDOレコードを取り出して、トラッキング・データ
ベース72に適用する。ここでまた、キュー・サーバが
IMS/VS環境で動作するとすれば、バッフTΦマネ
ノヤ−70は、サーバに呼び出されて、サーバが保持し
ているREDOレコードの相対ブロック番号によって識
別されるブロックの現在値を含むバッファを取得する。
従来のバッフT・マネジャー70は、そのプール内のブ
ロックを発見するか、それをトラッキング・データベー
ス72からアクティブ・ストレージへ転送してレコード
を適mするかのいずれかである。キュ一番サーバ!;t
、REDOレコードをバッファ内のページに適用し、そ
の6−ジをバッファ・マネジャー70に返す。モしてペ
ージをトラッキングφデータベース72内のセクタに吉
き込む。
ロックを発見するか、それをトラッキング・データベー
ス72からアクティブ・ストレージへ転送してレコード
を適mするかのいずれかである。キュ一番サーバ!;t
、REDOレコードをバッファ内のページに適用し、そ
の6−ジをバッファ・マネジャー70に返す。モしてペ
ージをトラッキングφデータベース72内のセクタに吉
き込む。
REDOレコードがトラッキング−データベース72に
適用される間、データベースは、ある時間にはトランザ
クションによって変更された部分だけしかページに適用
されないという点で、一貫性が保たれない状態になる。
適用される間、データベースは、ある時間にはトランザ
クションによって変更された部分だけしかページに適用
されないという点で、一貫性が保たれない状態になる。
このような不一致をシールドするために維持されるロッ
クがないため、通常のデータベース・サービスは、トラ
ッキング・データベース72をアクセスできないように
する必要がある。障害リカバリ・アプリケーションの場
合、これはデメリlトとはならない。障害が起こったと
きだけ一貫性が保たれていればよく、トラッキング・デ
ータベース72によるリカバリが開始されるからである
。他の場合、データベースの一貫性は、アクティブ書シ
ステムに用いられるリカバリ・メカニズムを考慮した方
法を採用することでいつでも確保できる。これに関して
、UNDoしっ一ドがログされないデータベース・ンス
テムテハ、ハッシュ・プロセス65がアクティブ会。グ
、データベース62からのREDOレフ−1!ヲ、トラ
ンザクションCOMM I Tが検出されるまで保持し
ていなければならない。そこでノ\’7シユ・プロセス
は、 トランザクションに関連するREDOレコードを
REDOレコード・キュー66に登録する。データベー
ス72をトランザクション命コンシステントな状態に保
つために、アクティブ・ログ・データの処理は、REI
)Oレコード・キューがすべて空になるまで停止される
。
クがないため、通常のデータベース・サービスは、トラ
ッキング・データベース72をアクセスできないように
する必要がある。障害リカバリ・アプリケーションの場
合、これはデメリlトとはならない。障害が起こったと
きだけ一貫性が保たれていればよく、トラッキング・デ
ータベース72によるリカバリが開始されるからである
。他の場合、データベースの一貫性は、アクティブ書シ
ステムに用いられるリカバリ・メカニズムを考慮した方
法を採用することでいつでも確保できる。これに関して
、UNDoしっ一ドがログされないデータベース・ンス
テムテハ、ハッシュ・プロセス65がアクティブ会。グ
、データベース62からのREDOレフ−1!ヲ、トラ
ンザクションCOMM I Tが検出されるまで保持し
ていなければならない。そこでノ\’7シユ・プロセス
は、 トランザクションに関連するREDOレコードを
REDOレコード・キュー66に登録する。データベー
ス72をトランザクション命コンシステントな状態に保
つために、アクティブ・ログ・データの処理は、REI
)Oレコード・キューがすべて空になるまで停止される
。
ログ・レコードにUNDOとREDOのレコードが含ま
れるデータベース拳マネジャーの場合、REDOレコー
ドは、それが届いたときにキュー登録され、したがって
トラッキングφデータベースに適用される。トランザク
ションの一貫性を保つために、〜アクティブ・ログ−デ
ータの処理は、REDOレコード拳キューがすべて空に
なるまで停止され、コミットされなかった全トランザク
7EIンに対しては、標準バックアウトΦロジ、りを実
行するために、UNDOレコードがキューθ6を通して
、コミットされなかった、全トランザクションに対して
逆のシーケンスで適用される。
れるデータベース拳マネジャーの場合、REDOレコー
ドは、それが届いたときにキュー登録され、したがって
トラッキングφデータベースに適用される。トランザク
ションの一貫性を保つために、〜アクティブ・ログ−デ
ータの処理は、REDOレコード拳キューがすべて空に
なるまで停止され、コミットされなかった全トランザク
7EIンに対しては、標準バックアウトΦロジ、りを実
行するために、UNDOレコードがキューθ6を通して
、コミットされなかった、全トランザクションに対して
逆のシーケンスで適用される。
以上の点から分かるように、本発明は、 トラッキング
・データベースをt(A持するための他のプロ/−ジャ
にはない大きなメリットを提供するものである。第1に
、アクティブ会データベースの更新とトラッキング・デ
ータベースの更新との同期をとる必要がない。これによ
り可用性とパフォーマンスに関して次のようなメリット
が得られる。
・データベースをt(A持するための他のプロ/−ジャ
にはない大きなメリットを提供するものである。第1に
、アクティブ会データベースの更新とトラッキング・デ
ータベースの更新との同期をとる必要がない。これによ
り可用性とパフォーマンスに関して次のようなメリット
が得られる。
アクティブ争データベースは、トラッキング・データベ
ースが使用できない場合でも更新される。
ースが使用できない場合でも更新される。
REDOレコードのトラッキング・データベースへの転
送は、ブロックするかまたはバッチ処理でき、効率向上
が図れる。また、ンリアライゼーシ日ンも必要でなくな
るので、コストの削減と高速化が図れる。代表的なデー
タベースは、入力または出力が必要なときにウェイトを
サポートするため、複数のパラレルのキュー・サーハハ
、パラレルI10リソースを得て、キュー登録レコード
のトラッキング・データベースへの適用を高速化できる
。第3図に示すように、本発明を実施するのは容易であ
る。当業者には明らかなように、本発明のパフォーマン
スから、バス長が帰くなるというメリットも得られる。
送は、ブロックするかまたはバッチ処理でき、効率向上
が図れる。また、ンリアライゼーシ日ンも必要でなくな
るので、コストの削減と高速化が図れる。代表的なデー
タベースは、入力または出力が必要なときにウェイトを
サポートするため、複数のパラレルのキュー・サーハハ
、パラレルI10リソースを得て、キュー登録レコード
のトラッキング・データベースへの適用を高速化できる
。第3図に示すように、本発明を実施するのは容易であ
る。当業者には明らかなように、本発明のパフォーマン
スから、バス長が帰くなるというメリットも得られる。
ロックが必要なく、キュー・サーバのパラレリズムから
スループットが向上するからである。
スループットが向上するからである。
最適実施例
第4図は上述の本発明の最適実施例である。第4図のR
EDoレコード105は、プロセスQUEUE−RED
O−REcORD (キューRE +)0記録)110
に引き渡される。プロセス110はREDOレコード1
05をキューに引き鵡し、元のトランザクション0ログ
・シーケンスを保存してデータベースの正しさを保証す
る。プロセス110はハツシュ・プロシージャを伴う。
EDoレコード105は、プロセスQUEUE−RED
O−REcORD (キューRE +)0記録)110
に引き渡される。プロセス110はREDOレコード1
05をキューに引き鵡し、元のトランザクション0ログ
・シーケンスを保存してデータベースの正しさを保証す
る。プロセス110はハツシュ・プロシージャを伴う。
これは、REDOレコード105のレコード・ブロック
番号(RBN) を、ラベルNUMBER−OF−QU
EUES (キュー数)のデータ0オブジエクト122
の中の数nで割る・ 得られたイ7デ7り8は、WOR
K QUEUE TABLE (ワーク0キユー骨
テーブル)123とともに、特定のWORK −QUE
UE −ENTRY (ワーク0キユー・エントリ)1
25を識別するのに用いられる。インデックスつきWO
RK −QUEUE −ENTRY125は、 WOR
K−QUEUE−ENTRY 125を特徴とする特定
のレコードΦキュー内の最初と最後のRE I) Oレ
コード130へのポインタ127.129をt’+’P
ツ。W ORKQUEUE −ENTRY 125は
また、キュー・VERPROCESS(サーバ拳プロセ
ス)128を持つ。キュー・サーバープロセス175は
、RESUME −5TATUS (再開ステータス)
フラグ172をサーバのPROCES S −INFO
(プロセス情報)制御ブロックにセットすることによっ
て起動される。各キュー・サーバは独自ノP ROCE
S S −I N F O制御フ07 ’) ヲI’
S チ、各WORK−QUEUE−ENTRYLt、そ
ノ5ERVER−PRoCESSフィールドによって1
個のキューeサーバしか識別しない。
番号(RBN) を、ラベルNUMBER−OF−QU
EUES (キュー数)のデータ0オブジエクト122
の中の数nで割る・ 得られたイ7デ7り8は、WOR
K QUEUE TABLE (ワーク0キユー骨
テーブル)123とともに、特定のWORK −QUE
UE −ENTRY (ワーク0キユー・エントリ)1
25を識別するのに用いられる。インデックスつきWO
RK −QUEUE −ENTRY125は、 WOR
K−QUEUE−ENTRY 125を特徴とする特定
のレコードΦキュー内の最初と最後のRE I) Oレ
コード130へのポインタ127.129をt’+’P
ツ。W ORKQUEUE −ENTRY 125は
また、キュー・VERPROCESS(サーバ拳プロセ
ス)128を持つ。キュー・サーバープロセス175は
、RESUME −5TATUS (再開ステータス)
フラグ172をサーバのPROCES S −INFO
(プロセス情報)制御ブロックにセットすることによっ
て起動される。各キュー・サーバは独自ノP ROCE
S S −I N F O制御フ07 ’) ヲI’
S チ、各WORK−QUEUE−ENTRYLt、そ
ノ5ERVER−PRoCESSフィールドによって1
個のキューeサーバしか識別しない。
表1にQUEUE−REDO−RECORDプロセス1
10を示す。
10を示す。
表1
QUEUE−REDO−RECORI)200 QUE
UE−REDO−RECORI)(redo−reco
rd)。
UE−REDO−RECORI)(redo−reco
rd)。
/*大入力REDOレコード。このルーチンはログ・レ
コード・レシートΦプロセスの下で実行*/ 201 1ndex = REMAINDER(redo−rec。
コード・レシートΦプロセスの下で実行*/ 201 1ndex = REMAINDER(redo−rec。
rd、block−numbers nulTlbe
r−of−Queues)。
r−of−Queues)。
202 r e t r Y 20 :203
teml) ” work−queue−table (in04 205 06 07 08 dex)、 work−Queue−el tr
y、 1ast−redo。
teml) ” work−queue−table (in04 205 06 07 08 dex)、 work−Queue−el tr
y、 1ast−redo。
redo record、 next−red
o = teml)。
o = teml)。
O3(tempt POINTER(redo−re
co rd)。
co rd)。
work−Queue−table (index)
、 work−Queue−entry、 ]a
st、−redo)。
、 work−Queue−entry、 ]a
st、−redo)。
/木REDOレコードを、これに15!!連するワーク
争キューからのREDOレ コードのLIFO(ラストイン・ ファーストアウト)チエインに自動 的に追加*/ IF fail = ON THENGOTO
retrY20゜ /*アトミック0オペ レージロン失敗*/ IF work−Queue−table (ind
ex)、work−queue、、、entry、
5erver−pr。
争キューからのREDOレ コードのLIFO(ラストイン・ ファーストアウト)チエインに自動 的に追加*/ IF fail = ON THENGOTO
retrY20゜ /*アトミック0オペ レージロン失敗*/ IF work−Queue−table (ind
ex)、work−queue、、、entry、
5erver−pr。
cess p rocess 1nfo。
resume、−5tatus= OFFHEN
RESUME (wo r k−Qu eue−ta
ble (index)。
ble (index)。
work−queue−ent r
L 5erver−proces
S)。
/木このワーク参キューのサーバー
プロセスが保留される可能性が
ある場合、そのプロセスを再開
して追加ワークを処理水/
*/209 END QUEUE−REDO−R
E CORD。
E CORD。
表1は、 QUEUE−REDO−RECORDプロセ
ス110を従来の疑似コードでインプリメントしたもの
である。このプロシージャの機能は、REDOレコード
をキュー・サーバ赤プロセスに引き渡し、元のトランヂ
クンヨンφログ・シーウ−77を保存することにある。
ス110を従来の疑似コードでインプリメントしたもの
である。このプロシージャの機能は、REDOレコード
をキュー・サーバ赤プロセスに引き渡し、元のトランヂ
クンヨンφログ・シーウ−77を保存することにある。
本発明の最適実115例では)REDOし:=+−)’
がWORK−QUEUE(ワーク・キュー)に登録され
、関連のキュー・サー″・プロセスの実行が保留されて
いるか、またはWORK−QUEUEを調べることなく
保留される可能性がある場合に、その実行が再開される
。
がWORK−QUEUE(ワーク・キュー)に登録され
、関連のキュー・サー″・プロセスの実行が保留されて
いるか、またはWORK−QUEUEを調べることなく
保留される可能性がある場合に、その実行が再開される
。
表1で、 ステートメン ト201は、 W ORKQ
UEUE−TABLE 123のインデックスを得て特
定のWORK−QUEUE−ENTRYI25を識別す
る。インデックスは、REDOレコードRBNをデータ
・オブジェクトNUMB ER−OF−QUEUES
122の値で割り、余りをインデックスとすることによ
って生成される。
UEUE−TABLE 123のインデックスを得て特
定のWORK−QUEUE−ENTRYI25を識別す
る。インデックスは、REDOレコードRBNをデータ
・オブジェクトNUMB ER−OF−QUEUES
122の値で割り、余りをインデックスとすることによ
って生成される。
ハツシュ法に必要なのは、同じデータペース−ブロック
(ページすなわち転送単位)に変更を加えるREDOレ
コードがすべて同じハツシュ値を持つことである。この
ハツシュ値により、これらのレコードが同じWORK−
QUEUEに関連づけられる。
(ページすなわち転送単位)に変更を加えるREDOレ
コードがすべて同じハツシュ値を持つことである。この
ハツシュ値により、これらのレコードが同じWORK−
QUEUEに関連づけられる。
ステートメント202ないし207は、周知の比較・ス
ワップ命令を用い、順序づけられたw。
ワップ命令を用い、順序づけられたw。
RK−QUEUEに新しli’ RE D OL/ コ
t’ ヲD録する。キューの順序づけはLIFOが望ま
しい。
t’ ヲD録する。キューの順序づけはLIFOが望ま
しい。
ステートメン ト208は、 ’iV ORK −Q
U E U Eに関連したキュー・サーバ・プロセス力
、キューに追加されたばかりのワークを検出する前に、
実行を保留しているかどうかをチエツクする。保留でき
る場合、O8のRESUME (再開)機能が発行され
て、RESUME−3TATUSフラグ172がONに
セットされ、キュー・サーバ会プロセス175の実行が
保留されているが、保留オペレージロンであれば、再開
される。当業者には明らかなように、比較とスワップと
いったアトミック命令を用いたワークのキュー登録と再
開処理を組み合わせるのは、ワークをプロセスからプロ
セスへ引き渡すための手法として周知のものである。プ
ロセスの保留と再開は、従来のコンピュータのO8に提
供されている標嘔サービスである。
U E U Eに関連したキュー・サーバ・プロセス力
、キューに追加されたばかりのワークを検出する前に、
実行を保留しているかどうかをチエツクする。保留でき
る場合、O8のRESUME (再開)機能が発行され
て、RESUME−3TATUSフラグ172がONに
セットされ、キュー・サーバ会プロセス175の実行が
保留されているが、保留オペレージロンであれば、再開
される。当業者には明らかなように、比較とスワップと
いったアトミック命令を用いたワークのキュー登録と再
開処理を組み合わせるのは、ワークをプロセスからプロ
セスへ引き渡すための手法として周知のものである。プ
ロセスの保留と再開は、従来のコンピュータのO8に提
供されている標嘔サービスである。
ここで表2に第4図のQUEUE−3ERVER(キュ
ー・サーバ)175を示す。
ー・サーバ)175を示す。
表2
QUEUE−8ERVER
300QUEUE−3ERVER(first en
trY−indexl number−of−entr
iesl 1)rocessi n f o)。
trY−indexl number−of−entr
iesl 1)rocessi n f o)。
/* このルーチンはW ORK Q U E U
ETABLEのワーク・キューからの REDOレコードに適用可能。
ETABLEのワーク・キューからの REDOレコードに適用可能。
このルーチンが起動されるプロセスは、これら特定のワ
ーク・キューを扱う唯 一のプロセス*/ 301 1ast−entry−index =
rirst−entry−incleX +numb
er−of−entr 1es1゜ 302 t o p: 303 process−info、 res
um04 05 3G[i 07 e−status = OFF。
ーク・キューを扱う唯 一のプロセス*/ 301 1ast−entry−index =
rirst−entry−incleX +numb
er−of−entr 1es1゜ 302 t o p: 303 process−info、 res
um04 05 3G[i 07 e−status = OFF。
Do 1ndex = first −ent
rY−index ’ro 1ast−ent
rY−index BYI。
rY−index ’ro 1ast−ent
rY−index BYI。
IF work−q ueue table(
index)、 work queue−entrY、 1ast−redo
is not r+ull THEN DOl /* ワーク検出。キューにお けるこのパスの終わりで は保留しない*/ Atomically rem ove entire 1is t from work−Qu eue−table (inde x)、work−queue entrL 1ast−red 08 09 /* ここで取り除かれたリス トはLIFOオーダ木/ Reorder the 1 st of redo rec ords to FIFO。
index)、 work queue−entrY、 1ast−redo
is not r+ull THEN DOl /* ワーク検出。キューにお けるこのパスの終わりで は保留しない*/ Atomically rem ove entire 1is t from work−Qu eue−table (inde x)、work−queue entrL 1ast−red 08 09 /* ここで取り除かれたリス トはLIFOオーダ木/ Reorder the 1 st of redo rec ords to FIFO。
rder chained 。
ff of work−que
ue−table (index)。
work−Queue−ent
rY、 first redo。
/* ここでREDOレコード
は、それを処理する順が
でチエインされる木/
Do WHr LE (wo r
k−Queue−tabl
e (index)、wor
k−queue−entr
y、 f’1rst−red。
is not eQua
10
11
1 to null)。
Remove first
redo−record
from work−Qu
eue−table (in
dex)、 work−Qu
eue−entry、 fi
r S t −r e d O。
block−1)ointe
r=OBTAIN BLO
CI((r e d o r
e c 。
e c 。
rd、 database
nFLmel redo−re
cord、 block n
umber)。
/*REDOレコードの変
更内容が適用される物
理ブロックのコピー
(メイン令メモリ内)
へのポインタを取qg)
12
313
3!4
15
1Ei
*/
Alter the bl
oak using re
do−record、 re
d o −d a t a。
RELEASE−BLOG
K (b I o c k
−1) o i nter)。
−1) o i nter)。
/木ブロックをディスク番
デバイスなどのステー
プル・ストレージへ吉
き込めるようにする
*/
END、/*ワークを持つ
END、 ことが検出さ
END、 れたキューのREDOレ
コードを適用。
キューをルー
プ*/
317 I F l) r o
c e s s −i n f o、
r esume−status=OFF TH
N 5USPEND (process info、 resume 5tatUS)
。
c e s s −i n f o、
r esume−status=OFF TH
N 5USPEND (process info、 resume 5tatUS)
。
/*キュー・チエツクの間に何もキューに登録されなか
った場合はワークを 待つ*/ 31a GOTOtoり。
った場合はワークを 待つ*/ 31a GOTOtoり。
/*このプロセスを止めるロジックは記載しない*/
319 END、 QUEUE−3ERVERRED
Oレコードを第3図のトラッキング・データベース72
に適用するためには、キュー・サーバ拳プロセスが1個
以上必要になる。適当な大きさのシステムでは、アクテ
ィブ・システム50がレコードを作成するレートに近い
レートでレコードを適用するためには、複数のプロセス
が必要になる。従来の技術には、システム・アクティビ
ティに応じてキュー、サーバ・プロセスの個数をダイナ
ミー/りに決定・変更する機能力fある。さらに、特定
のワーク・キューの特定のサーバ0プロセスへの割当を
変えれば、従来の機能を使って負荷を分散できる。表2
は、説明の便宜上、キュー・サーバ90シツクを単純化
している。これは、システムの初期化時に、NUMBE
R0F−QUEUE〜5ERVER−PROCESSE
S(キュm−す−バ拳プロセス数’I 120が、キュ
ーをキュー・サーバ会プロセスにインストールして割り
当てることによって選択された値1nに固定される状態
が取られることを示す。
Oレコードを第3図のトラッキング・データベース72
に適用するためには、キュー・サーバ拳プロセスが1個
以上必要になる。適当な大きさのシステムでは、アクテ
ィブ・システム50がレコードを作成するレートに近い
レートでレコードを適用するためには、複数のプロセス
が必要になる。従来の技術には、システム・アクティビ
ティに応じてキュー、サーバ・プロセスの個数をダイナ
ミー/りに決定・変更する機能力fある。さらに、特定
のワーク・キューの特定のサーバ0プロセスへの割当を
変えれば、従来の機能を使って負荷を分散できる。表2
は、説明の便宜上、キュー・サーバ90シツクを単純化
している。これは、システムの初期化時に、NUMBE
R0F−QUEUE〜5ERVER−PROCESSE
S(キュm−す−バ拳プロセス数’I 120が、キュ
ーをキュー・サーバ会プロセスにインストールして割り
当てることによって選択された値1nに固定される状態
が取られることを示す。
第4図は、第3図のパラレル・キュm−サーバ・アーキ
テクチャは示していないが、図と表2から分かるように
、二重化によって第3図のトラッキング・システム60
にパラレリズムを提供する1個のキュー・サーバの機能
と構造を示している。
テクチャは示していないが、図と表2から分かるように
、二重化によって第3図のトラッキング・システム60
にパラレリズムを提供する1個のキュー・サーバの機能
と構造を示している。
各キュー・サーバ・プロセスは、ある時点では1個以上
のワーク・キューを担当するだけである。
のワーク・キューを担当するだけである。
そのときキューの個数は、キュー・サーバ・プロセスの
個数より多いかまたは同一である。
個数より多いかまたは同一である。
本発明では、単純なインクリメンタル・ループを使えば
、サーバ・プロセスをスタートさせ、ワーク−キュー0
からn−1(nはデータ・オブジェクト122の大きさ
)の範囲の1個以上のワークφキューに割り当てること
ができる。各プロセスは、関連のPROCESS −I
Nr’O制御ブロックを持ち、このブロックは、 12
5などのWORK−QUEUE−ENTRYのフィール
ド128から検出できる。各プロセスは、これに制御が
移ると、表2のQUEUE 5ERVERを起動し、こ
れに、ワーク・キューのインデックス値0ないしn−1
(プロセスに割り当てられたもの)、NUMBER−E
NTRI ES (エントリ数)値1、およびそのPR
OCESS INFO172を引き渡す。
、サーバ・プロセスをスタートさせ、ワーク−キュー0
からn−1(nはデータ・オブジェクト122の大きさ
)の範囲の1個以上のワークφキューに割り当てること
ができる。各プロセスは、関連のPROCESS −I
Nr’O制御ブロックを持ち、このブロックは、 12
5などのWORK−QUEUE−ENTRYのフィール
ド128から検出できる。各プロセスは、これに制御が
移ると、表2のQUEUE 5ERVERを起動し、こ
れに、ワーク・キューのインデックス値0ないしn−1
(プロセスに割り当てられたもの)、NUMBER−E
NTRI ES (エントリ数)値1、およびそのPR
OCESS INFO172を引き渡す。
先にも述べたとおり、表2は、キュー・サーバを従来の
疑似コードでインプリメントしたものである。このプロ
シー;ジャの機能は、REDOレコードがすべて適用さ
れたときに、 トラッキング拳データベースの内容がア
クティブ・データベースの内容と同じになるように、R
EDOレコードを箋対応するトラッキング・データベー
ス・ブロックに適用することである。
疑似コードでインプリメントしたものである。このプロ
シー;ジャの機能は、REDOレコードがすべて適用さ
れたときに、 トラッキング拳データベースの内容がア
クティブ・データベースの内容と同じになるように、R
EDOレコードを箋対応するトラッキング・データベー
ス・ブロックに適用することである。
ステートメント303は、RESUME 5TATU
S1?2をOFFにして、後にプロセス110によって
REDOレコードが追加された結采、レコードがキュー
に追加される前にそのレコードに対してプロセス175
がすでにロックされていた場合には、プロセス175が
RESUMEされるようにする。
S1?2をOFFにして、後にプロセス110によって
REDOレコードが追加された結采、レコードがキュー
に追加される前にそのレコードに対してプロセス175
がすでにロックされていた場合には、プロセス175が
RESUMEされるようにする。
ステートメント304は、プロセス175が(D当する
テーブル125のWORK−QUEUEENTRYをそ
れぞれ調べるため、ループを開始する。ステートメント
305は、適用されるREDoレコードのWORK−Q
UEUE−ENTRYをチエツクする。キュー登録され
たREDOレコードがあれば、アトミック命令のシーケ
ンスにより、マルチプロセス共をリストeヘッダLAS
T−REDO(aj冬REDo)127から全レコード
が除外される。除外されれば、リストが処理されてレコ
ードのシーケンスが逆になす、非共有りスト・ヘッダF
IR8T−REDo(先頭REDO)129からのレコ
ードがチエインされる。
テーブル125のWORK−QUEUEENTRYをそ
れぞれ調べるため、ループを開始する。ステートメント
305は、適用されるREDoレコードのWORK−Q
UEUE−ENTRYをチエツクする。キュー登録され
たREDOレコードがあれば、アトミック命令のシーケ
ンスにより、マルチプロセス共をリストeヘッダLAS
T−REDO(aj冬REDo)127から全レコード
が除外される。除外されれば、リストが処理されてレコ
ードのシーケンスが逆になす、非共有りスト・ヘッダF
IR8T−REDo(先頭REDO)129からのレコ
ードがチエインされる。
FIR3T−REDO129がら始*るLz:+−pの
リストはここで、特定のデータベース、ブロックCパー
ジンに対するREDOレコードを含み、変更内容は、ア
クティブ・システムに適用されたのと同じシーケンスで
特定ブロック(ページ)に適用される。
リストはここで、特定のデータベース、ブロックCパー
ジンに対するREDOレコードを含み、変更内容は、ア
クティブ・システムに適用されたのと同じシーケンスで
特定ブロック(ページ)に適用される。
ステートメント309ないし314は、REDOレコー
ドをシーケンスを追ってリストから除外し、それぞれ(
7)REDO−DATA (REDOデータ)フィール
ド38を、レコードのDATABASE−NAME (
データベース名)フィールド134で識別されるデータ
ベースに適用する。
ドをシーケンスを追ってリストから除外し、それぞれ(
7)REDO−DATA (REDOデータ)フィール
ド38を、レコードのDATABASE−NAME (
データベース名)フィールド134で識別されるデータ
ベースに適用する。
ステートメント311では、0BTAIN−BLOCK
(ブロック獲得)機能が用いられて、所要データベー
ス・ブロックのメイン・メモリ・コピーが検出される。
(ブロック獲得)機能が用いられて、所要データベー
ス・ブロックのメイン・メモリ・コピーが検出される。
0BTAIN−BLOCK、!−RELEASE−BL
OCK (ブロック解放)の機能は、これらがバッフT
のプールをWF!11、DASDなどの外部媒体でデー
タベースのステーブル・コピーをリード/ライトすると
いう点で、代表的なデータベース争システムやバッファ
管理フンボーネントである。アクティブφシステム5゜
のロジックは、ロックを使って、アクティブ勢データベ
ース52内のデータペース拳ブロックへのアクセスをシ
リアライズするが、トラッキング・システム60のロジ
ックは、データベース・ブロックへのアクセスのシリア
ライゼーシ日ソを必要としない。そのデータベース・ブ
ロックをアクセスするキュー・サーバ・プロセスは1個
だけだからである。ステートメント312は、変更内容
をREDOI)ATAフィールド138がらデータベー
ス・ブロックのメモリーコピーに適用する。
OCK (ブロック解放)の機能は、これらがバッフT
のプールをWF!11、DASDなどの外部媒体でデー
タベースのステーブル・コピーをリード/ライトすると
いう点で、代表的なデータベース争システムやバッファ
管理フンボーネントである。アクティブφシステム5゜
のロジックは、ロックを使って、アクティブ勢データベ
ース52内のデータペース拳ブロックへのアクセスをシ
リアライズするが、トラッキング・システム60のロジ
ックは、データベース・ブロックへのアクセスのシリア
ライゼーシ日ソを必要としない。そのデータベース・ブ
ロックをアクセスするキュー・サーバ・プロセスは1個
だけだからである。ステートメント312は、変更内容
をREDOI)ATAフィールド138がらデータベー
ス・ブロックのメモリーコピーに適用する。
ステートメント317では、QUEUE−REDO−R
ECORDプロセス11oがREDoレコードをキュー
に追加登録しておらず、キュー・サーバ・プロセスをR
ESUME (表1のステートメン)208)している
場合、キュー−サーバ慟プロセスがステートメント20
3でRESUME −5TATUS7i−OFFi::
しているので、O8の5USPEND (中断)機能が
起動される。RESUMEがすでに発行されているか、
または発行されたときは、ステートメント318が再ヒ
処理されて1表2のキュー・サーバが、ステートメント
302までをループすることによってキューの処理を継
続する。
ECORDプロセス11oがREDoレコードをキュー
に追加登録しておらず、キュー・サーバ・プロセスをR
ESUME (表1のステートメン)208)している
場合、キュー−サーバ慟プロセスがステートメント20
3でRESUME −5TATUS7i−OFFi::
しているので、O8の5USPEND (中断)機能が
起動される。RESUMEがすでに発行されているか、
または発行されたときは、ステートメント318が再ヒ
処理されて1表2のキュー・サーバが、ステートメント
302までをループすることによってキューの処理を継
続する。
E0発明の効果
レプリカ・データベースの変更処理は、プライマリ曇デ
ータベースのトランザクシロン・ログがらのREDOレ
コードをキューに分けることによって達成される。RE
DOレコードの分割は、プライマリ嗜データベースの転
送単位(ページ)のトランザクシロン・レコードがすべ
て、ログ・シーケンス内の同じキューに登録されるよう
に実行される。各キュー・サーバは、これが排他的に取
り扱うキュー内のREDOレコードを、レプリカ・デー
タベースに適用する。これによりレプリカ・データベー
スは、そのページをパラレルに処理するロック書フリー
更新メカニズムによって、プライマリ・データと一貫し
たものとなる。
ータベースのトランザクシロン・ログがらのREDOレ
コードをキューに分けることによって達成される。RE
DOレコードの分割は、プライマリ嗜データベースの転
送単位(ページ)のトランザクシロン・レコードがすべ
て、ログ・シーケンス内の同じキューに登録されるよう
に実行される。各キュー・サーバは、これが排他的に取
り扱うキュー内のREDOレコードを、レプリカ・デー
タベースに適用する。これによりレプリカ・データベー
スは、そのページをパラレルに処理するロック書フリー
更新メカニズムによって、プライマリ・データと一貫し
たものとなる。
第1図は、データベース管理システムとしての従来のト
ランザクシロン処理システムを示す図である。 第2図は、第1図のデータベース管理システムの詳細を
示すブロック図である。 第3図は、第1図に示す従来のデータベース管理システ
ムと本発明との連結を示すブロック図である。 第4図は、本発明で用いられるキューの構造を示す図で
ある。 第29
ランザクシロン処理システムを示す図である。 第2図は、第1図のデータベース管理システムの詳細を
示すブロック図である。 第3図は、第1図に示す従来のデータベース管理システ
ムと本発明との連結を示すブロック図である。 第4図は、本発明で用いられるキューの構造を示す図で
ある。 第29
Claims (5)
- (1)レコードが転送単位で格納された第1データベー
スと、該第1データベースのレプリカである第2データ
ベースと、該第1データベースに加えられた変更内容を
表わすREDOレコードのシーケンスが格納されたログ
とを含むトランザクション処理システムにおいて、該第
2データベースを、これと第1データベースとの一貫性
を保つように更新するシステムであって、 複数のキューと、 上記第1データベースの1つの転送単位に対応するRE
DOレコードがすべてログ・シーケンス内の同じキュー
に配置されるように、上記REDOレコードを上記キュ
ーに配置する分配手段と、上記各キューのREDOレコ
ードを上記第2データベースに適用するためにそれぞれ
が1つのキューにリンクされた複数のパラレル・キュー
・サーバ手段とを含む、システム。 - (2)請求項1に記載のデータベース更新システムであ
って、上記分配手段がハッシュ・プロセスであるシステ
ム。 - (3)請求項1に記載のデータベース更新システムであ
って、キュー・サーバ手段にリンクされたキューの中の
転送単位についてのREDOレコードによって表される
変更内容を、上記転送単位のレコードに適用することに
よって、上記キュー・サーバ手段のそれぞれが上記第2
データベースの転送単位を更新するシステム。 - (4)複数のキュー・サーバを含むトランザクション処
理システムによって実行され、第1データベースと該第
1データベースのレプリカである第2データベースとの
一貫性を保証する方法であって 上記第1データベースに加えられた変更内容に対応する
REDOレコードのシーケンスを累積するステップと、 上記第1データベースの1転送単位のREDOレコード
がREDOレコード・キュー1個にしか格納されないよ
うにして、複数のREDOレコード・キューを維持する
ステップと、 2個以上の上記キューからのREDOレコードを上記第
2データベースに並行して適用するステップとを含み、
該キューのいずれか1個からのREDOレコードが、上
記トランザクション処理システムの上記キュー・サーバ
のいずれか1個によってしか該第2データベースに適用
されない、データベース更新方法。 - (5)ローカル・データベースを更新する方法であって
、 ローカル・データベースが一貫性を保つ対象であるアク
ティブ・データベースからログ・レコードを受けるステ
ップと、 どの選択された物理ストレージ・ユニットに関係するロ
グ・レコードも1個のキューにしか格納されないような
、上記ログ・レコードのキューを2個以上生成するステ
ップと、 2個以上のサーバ・プロセスを用いることによって、2
個以上の上記キューからのログ・レコードをローカル・
データベースに同時適用するステップとを含み、1個の
キューからのログ・レコードが、任意の時点で1個のサ
ーバ・プロセスによってしか該データベースに適用され
ない、データベース更新方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/411,729 US5170480A (en) | 1989-09-25 | 1989-09-25 | Concurrently applying redo records to backup database in a log sequence using single queue server per queue at a time |
US411729 | 1989-09-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03122729A true JPH03122729A (ja) | 1991-05-24 |
JPH0552972B2 JPH0552972B2 (ja) | 1993-08-06 |
Family
ID=23630075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2235953A Granted JPH03122729A (ja) | 1989-09-25 | 1990-09-07 | データベース更新システム及び方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5170480A (ja) |
EP (1) | EP0420425A3 (ja) |
JP (1) | JPH03122729A (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05158529A (ja) * | 1991-12-10 | 1993-06-25 | Nissan Motor Co Ltd | 計測ロボットのティーチング方法 |
JPH0683677A (ja) * | 1992-04-20 | 1994-03-25 | Internatl Business Mach Corp <Ibm> | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム |
JPH06195250A (ja) * | 1992-10-13 | 1994-07-15 | Internatl Business Mach Corp <Ibm> | データベースを更新するための方法、システム及び装置 |
JPH06508230A (ja) * | 1992-04-01 | 1994-09-14 | ノキア テレコミュニカシオンス オサケ ユキチュア | 分散型データベースシステムにおける故障許容のための変更分配方法 |
JPH07500203A (ja) * | 1991-10-18 | 1995-01-05 | テキサス・マイクロシステムズ・インコーポレーテッド | ロールバックのためのデータ・バックアップ・システム |
JPH11327991A (ja) * | 1998-03-20 | 1999-11-30 | Lucent Technol Inc | ホットスペアシステムおよびデ―タベ―ス管理システム |
JP2004511854A (ja) * | 2000-10-09 | 2004-04-15 | マキシマム アヴェイラビリティ リミテッド | データ処理の方法及び装置 |
WO2004090726A1 (ja) * | 2003-04-04 | 2004-10-21 | Fujitsu Limited | データベース複製プログラムおよびデータベース複製装置 |
JP2005527912A (ja) * | 2002-05-24 | 2005-09-15 | オラクル・インターナショナル・コーポレイション | データウェアハウジングのための高性能な変更の捕捉 |
JP2009245089A (ja) * | 2008-03-31 | 2009-10-22 | Fujitsu Ltd | 分散オブジェクト・プログラム及びレプリケーション処理方法 |
WO2014097475A1 (ja) * | 2012-12-21 | 2014-06-26 | 株式会社Murakumo | 情報処理方法、情報処理装置、及び、プログラム |
JP2022510460A (ja) * | 2019-05-05 | 2022-01-26 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | データレプリケーション方法、装置、コンピュータ機器及びコンピュータプログラム |
Families Citing this family (266)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03127161A (ja) * | 1989-10-13 | 1991-05-30 | Hitachi Ltd | 複数操作卓の協調方式 |
US5317733A (en) * | 1990-01-26 | 1994-05-31 | Cisgem Technologies, Inc. | Office automation system for data base management and forms generation |
DE69126067T2 (de) * | 1990-06-29 | 1997-10-02 | Oracle Corp | Verfahren und Gerät zur Verwaltung von Zustandsidentifizierern zur effizienten Wiederherstellung |
US5544347A (en) | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
JP3516344B2 (ja) * | 1990-10-22 | 2004-04-05 | 株式会社日立製作所 | 分散処理システムの多重データ処理方法 |
JPH04242842A (ja) * | 1990-12-29 | 1992-08-31 | Nec Corp | データベースバッファ制御装置 |
JP2993528B2 (ja) * | 1991-05-18 | 1999-12-20 | 富士通株式会社 | テキスト管理・復元方式 |
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 |
US5398330A (en) * | 1992-03-05 | 1995-03-14 | Seiko Epson Corporation | Register file backup queue |
US5555404A (en) * | 1992-03-17 | 1996-09-10 | Telenor As | Continuously available database server having multiple groups of nodes with minimum intersecting sets of database fragment replicas |
US5423037A (en) * | 1992-03-17 | 1995-06-06 | Teleserve Transaction Technology As | Continuously available database server having multiple groups of nodes, each group maintaining a database copy with fragments stored on multiple nodes |
US7299240B1 (en) | 1992-04-10 | 2007-11-20 | Intellisync Corporation | Method for translating computer data from one record structure to another |
US5481710A (en) * | 1992-09-16 | 1996-01-02 | International Business Machines Corporation | Method of and system for providing application programs with an undo/redo function |
GB9221215D0 (en) * | 1992-10-09 | 1992-11-25 | Neopost Ltd | Database system |
EP0593062A3 (en) * | 1992-10-16 | 1995-08-30 | Siemens Ind Automation Inc | Redundant networked database system |
GB2273180A (en) * | 1992-12-02 | 1994-06-08 | Ibm | Database backup and recovery. |
US5404508A (en) * | 1992-12-03 | 1995-04-04 | Unisys Corporation | Data base backup and recovery system and method |
SE500656C2 (sv) * | 1992-12-08 | 1994-08-01 | Ellemtel Utvecklings Ab | System för backuptagning i en distribuerad databas |
US5577222A (en) * | 1992-12-17 | 1996-11-19 | International Business Machines Corporation | System for asynchronously duplexing remote data by sending DASD data grouped as a unit periodically established by checkpoint based upon the latest time value |
SE9300671D0 (sv) * | 1993-03-01 | 1993-03-01 | Sven Nauckhoff | Work flow management |
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 |
US5426774A (en) * | 1993-04-06 | 1995-06-20 | Honeywell Inc. | Method for maintaining a sequence of events function during failover in a redundant multiple layer system |
US5408649A (en) * | 1993-04-30 | 1995-04-18 | Quotron Systems, Inc. | Distributed data access system including a plurality of database access processors with one-for-N redundancy |
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 |
US5710922A (en) * | 1993-06-02 | 1998-01-20 | Apple Computer, Inc. | Method for synchronizing and archiving information between computer systems |
GB2281644A (en) * | 1993-09-02 | 1995-03-08 | Ibm | Fault tolerant transaction-oriented data processing. |
DE4497149T1 (de) * | 1993-09-24 | 1996-10-17 | Oracle Corp | Verfahren und Vorrichtung zum Replizieren von Daten |
US5604863A (en) * | 1993-11-01 | 1997-02-18 | International Business Machines Corporation | Method for coordinating executing programs in a data processing system |
US5642503A (en) * | 1993-12-15 | 1997-06-24 | Microsoft Corporation | Method and computer system for implementing concurrent accesses of a database record by multiple users |
US5588147A (en) * | 1994-01-14 | 1996-12-24 | Microsoft Corporation | Replication facility |
JP2708386B2 (ja) | 1994-03-18 | 1998-02-04 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 同時更新及び複写手順を通して重複データベースを回復させる方法及び装置 |
US5796999A (en) * | 1994-04-15 | 1998-08-18 | International Business Machines Corporation | Method and system for selectable consistency level maintenance in a resilent database system |
US5684990A (en) * | 1995-01-11 | 1997-11-04 | Puma Technology, Inc. | Synchronization of disparate databases |
US5745753A (en) * | 1995-01-24 | 1998-04-28 | Tandem Computers, Inc. | Remote duplicate database facility with database replication support for online DDL operations |
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 |
US5689705A (en) * | 1995-02-13 | 1997-11-18 | Pulte Home Corporation | System for facilitating home construction and sales |
US6295491B1 (en) * | 1995-03-24 | 2001-09-25 | Motorola, Inc. | Method of providing distributed operational control of a radio communication system |
US5956712A (en) * | 1995-06-07 | 1999-09-21 | International Business Machines Corporation | Byte range locking in a distributed environment |
AU6500596A (en) | 1995-07-20 | 1997-02-18 | Novell, Inc. | Transaction log management in a disconnectable computer and network |
CA2227432C (en) * | 1995-07-20 | 2001-05-22 | Novell, Inc. | Transaction synchronization in a disconnectable computer and network |
US5799305A (en) * | 1995-11-02 | 1998-08-25 | Informix Software, Inc. | Method of commitment in a distributed database transaction |
US5787441A (en) * | 1996-01-11 | 1998-07-28 | International Business Machines Corporation | Method of replicating data at a field level |
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 |
US7415466B2 (en) * | 1996-03-19 | 2008-08-19 | Oracle International Corporation | Parallel transaction recovery |
US6412017B1 (en) * | 1996-07-01 | 2002-06-25 | Microsoft Corporation | Urgent replication facility |
JP3672208B2 (ja) * | 1996-07-02 | 2005-07-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 階層化トランザクション処理方法 |
US5878434A (en) * | 1996-07-18 | 1999-03-02 | Novell, Inc | Transaction clash management in a disconnectable computer and network |
US5842222A (en) * | 1996-10-04 | 1998-11-24 | Taiwan Semiconductor Manufacturing Company, Ltd. | Production information system enhanced for availability |
US6049809A (en) * | 1996-10-30 | 2000-04-11 | Microsoft Corporation | Replication optimization system and method |
US6141664A (en) * | 1996-11-13 | 2000-10-31 | Puma Technology, Inc. | Synchronization of databases with date range |
US6405218B1 (en) | 1996-11-13 | 2002-06-11 | Pumatech, Inc. | Synchronizing databases |
US6212529B1 (en) | 1996-11-13 | 2001-04-03 | Puma Technology, Inc. | Synchronization of databases using filters |
US6330568B1 (en) | 1996-11-13 | 2001-12-11 | Pumatech, Inc. | Synchronization of databases |
US7013315B1 (en) | 1996-11-13 | 2006-03-14 | Intellisync Corporation | Synchronization of databases with record sanitizing and intelligent comparison |
US6044381A (en) * | 1997-09-11 | 2000-03-28 | Puma Technology, Inc. | Using distributed history files in synchronizing databases |
US5943676A (en) | 1996-11-13 | 1999-08-24 | Puma Technology, Inc. | Synchronization of recurring records in incompatible databases |
US7302446B1 (en) | 1996-11-13 | 2007-11-27 | Intellisync Corporation | Synchronizing databases |
US5870761A (en) * | 1996-12-19 | 1999-02-09 | Oracle Corporation | Parallel queue propagation |
US6286011B1 (en) * | 1997-04-30 | 2001-09-04 | Bellsouth Corporation | System and method for recording transactions using a chronological list superimposed on an indexed list |
US5937168A (en) * | 1997-05-30 | 1999-08-10 | Bellsouth Corporation | Routing information within an adaptive routing architecture of an information retrieval system |
US5961659A (en) * | 1997-06-30 | 1999-10-05 | International Business Machines Corporation | Independent simultaneous queueing of message descriptors |
US5951706A (en) * | 1997-06-30 | 1999-09-14 | International Business Machines Corporation | Method of independent simultaneous queueing of message descriptors |
US5956714A (en) * | 1997-08-13 | 1999-09-21 | Southwestern Bell Telephone Company | Queuing system using a relational database |
US6012059A (en) * | 1997-08-21 | 2000-01-04 | Dataxel Corporation | Method and apparatus for replicated transaction consistency |
US5884328A (en) * | 1997-08-29 | 1999-03-16 | Tandem Computers, Inc. | System and method for sychronizing a large database and its replica |
US6442533B1 (en) | 1997-10-29 | 2002-08-27 | William H. Hinkle | Multi-processing financial transaction processing system |
SE522023C2 (sv) * | 1998-01-22 | 2004-01-07 | Ericsson Telefon Ab L M | Metod för konsistent läsning av objekt i en databas |
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 |
US6182086B1 (en) * | 1998-03-02 | 2001-01-30 | Microsoft Corporation | Client-server computer system with application recovery of server applications and client applications |
US6304881B1 (en) | 1998-03-03 | 2001-10-16 | Pumatech, Inc. | Remote data access and synchronization |
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 |
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 |
US6925477B1 (en) | 1998-03-31 | 2005-08-02 | Intellisync Corporation | Transferring records between two databases |
US6289357B1 (en) | 1998-04-24 | 2001-09-11 | Platinum Technology Ip, Inc. | Method of automatically synchronizing mirrored database objects |
US6192378B1 (en) * | 1998-05-13 | 2001-02-20 | International Business Machines Corporation | Method and apparatus for combining undo and redo contexts in a distributed access environment |
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 |
US6347322B1 (en) * | 1998-11-09 | 2002-02-12 | Lucent Technologies Inc. | Transaction state data replication by transaction forwarding in replicated database systems |
US7007003B1 (en) | 1998-12-04 | 2006-02-28 | Intellisync Corporation | Notification protocol for establishing synchronization mode for use in synchronizing databases |
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 |
US6728879B1 (en) * | 1999-06-02 | 2004-04-27 | Microsoft Corporation | Transactional log with multi-sector log block validation |
US6453313B1 (en) | 1999-07-06 | 2002-09-17 | Compaq Information Technologies Group, L.P. | Database management system and method for dequeuing rows published to a database table |
US6339772B1 (en) | 1999-07-06 | 2002-01-15 | Compaq Computer Corporation | System and method for performing database operations on a continuous stream of tuples |
US6446113B1 (en) * | 1999-07-19 | 2002-09-03 | Groove Networks, Inc. | Method and apparatus for activity-based collaboration by a computer system equipped with a dynamics manager |
US6859821B1 (en) * | 1999-07-19 | 2005-02-22 | Groove Networks, Inc. | Method and apparatus for prioritizing data change requests and maintaining data consistency in a distributed computer system equipped for activity-based collaboration |
AUPQ428599A0 (en) | 1999-11-26 | 1999-12-23 | Computer Associates Pty. Ltd. | A method of amending data base contents |
WO2001040903A2 (en) * | 1999-12-06 | 2001-06-07 | Warp Solutions, Inc. | System and method for enhancing operation of a web server cluster |
US6510434B1 (en) | 1999-12-29 | 2003-01-21 | Bellsouth Intellectual Property Corporation | System and method for retrieving information from a database using an index of XML tags and metafiles |
US6738798B1 (en) * | 2000-06-01 | 2004-05-18 | Ge Medical Technology Services, Inc. | Automated monitoring of collection of operational data from medical imaging devices |
AU2007231648B2 (en) * | 2000-10-09 | 2010-09-09 | Maximum Availability Limited | Method and apparatus for data processing |
US6668262B1 (en) * | 2000-11-09 | 2003-12-23 | Cisco Technology, Inc. | Methods and apparatus for modifying a database |
US6721766B1 (en) * | 2001-01-25 | 2004-04-13 | Emc Corporation | Restoring multiple work items simultaneously from backup and data restore |
US7558840B1 (en) * | 2001-01-25 | 2009-07-07 | Emc Corporation | Data backup system having a flexible restore architecture |
CN1220531C (zh) * | 2001-01-30 | 2005-09-28 | 钟渊化学工业株式会社 | 能够直接进行血液灌流的体液处理器 |
US7359920B1 (en) | 2001-04-18 | 2008-04-15 | Intellisync Corporation | Communication protocol for synchronization of personal information management databases |
US6738832B2 (en) * | 2001-06-29 | 2004-05-18 | International Business Machines Corporation | Methods and apparatus in a logging system for the adaptive logger replacement in order to receive pre-boot information |
US20030055809A1 (en) * | 2001-09-18 | 2003-03-20 | Sun Microsystems, Inc. | Methods, systems, and articles of manufacture for efficient log record access |
US6980988B1 (en) * | 2001-10-01 | 2005-12-27 | Oracle International Corporation | Method of applying changes to a standby database system |
WO2003044697A1 (en) * | 2001-11-16 | 2003-05-30 | Paralleldb, Incorporated | Data replication system and method |
AU2003228512A1 (en) | 2002-04-10 | 2003-10-27 | Instasolv, Inc. | Method and system for managing computer systems |
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 |
US8205009B2 (en) * | 2002-04-25 | 2012-06-19 | Emc Israel Development Center, Ltd. | Apparatus for continuous compression of large volumes of data |
US7065527B2 (en) * | 2002-06-26 | 2006-06-20 | Microsoft Corporation | Systems and methods of optimizing metadata publishing system updates by alternating databases |
US7007200B2 (en) * | 2002-07-11 | 2006-02-28 | International Business Machines Corporation | Error analysis fed from a knowledge base |
US7080287B2 (en) * | 2002-07-11 | 2006-07-18 | International Business Machines Corporation | First failure data capture |
US7058717B2 (en) * | 2002-07-25 | 2006-06-06 | International Business Machines Corporation | Method and system for providing highly available services based on a load balancing policy and a reusable connection context object |
KR100463596B1 (ko) * | 2002-10-02 | 2004-12-29 | 학교법인대우학원 | 생물정보학에서의 데이터베이스 처리 방법 |
US7340502B2 (en) * | 2002-10-24 | 2008-03-04 | Microsoft Corporation | Method and apparatus for maintaining consistency of a shared space across multiple endpoints in a peer-to-peer collaborative computer system |
US7840856B2 (en) * | 2002-11-07 | 2010-11-23 | International Business Machines Corporation | Object introspection for first failure data capture |
JP2004259079A (ja) * | 2003-02-27 | 2004-09-16 | Hitachi Ltd | データ処理システム |
US20040193456A1 (en) * | 2003-03-28 | 2004-09-30 | The Ohio Casualty Insurance Company | Out-of-sequence endorsement processing in insurance policy management system |
US20040193455A1 (en) * | 2003-03-28 | 2004-09-30 | The Ohio Casualty Insurance Company | Dynamic preloading of insurance product data in insurance policy management system |
JP4301849B2 (ja) * | 2003-03-31 | 2009-07-22 | 株式会社日立製作所 | 情報処理方法及びその実施システム並びにその処理プログラム並びにディザスタリカバリ方法およびシステム並びにその処理を実施する記憶装置およびその制御処理方法 |
JP4124348B2 (ja) | 2003-06-27 | 2008-07-23 | 株式会社日立製作所 | 記憶システム |
US7130975B2 (en) * | 2003-06-27 | 2006-10-31 | Hitachi, Ltd. | Data processing system |
JP4374953B2 (ja) * | 2003-09-09 | 2009-12-02 | 株式会社日立製作所 | データ処理システム |
JP2005309550A (ja) | 2004-04-19 | 2005-11-04 | Hitachi Ltd | リモートコピー方法及びリモートコピーシステム |
US7243088B2 (en) * | 2003-08-06 | 2007-07-10 | Oracle International Corporation | Database management system with efficient version control |
US7219201B2 (en) | 2003-09-17 | 2007-05-15 | Hitachi, Ltd. | Remote storage disk control device and method for controlling the same |
US7269588B1 (en) | 2003-09-24 | 2007-09-11 | Oracle International Corporation | Neighborhood locking technique for increasing concurrency among transactions |
US20050071336A1 (en) * | 2003-09-30 | 2005-03-31 | Microsoft Corporation | Systems and methods for logging and recovering updates to data structures |
US7555481B1 (en) | 2003-10-28 | 2009-06-30 | Oracle Corporation | Method and apparatus for increasing transaction concurrency by early release of locks in groups |
JP4412989B2 (ja) * | 2003-12-15 | 2010-02-10 | 株式会社日立製作所 | 複数の記憶システムを有するデータ処理システム |
US7260743B2 (en) * | 2004-01-13 | 2007-08-21 | International Business Machines Corporation | System and method for achieving autonomic computing self-healing, utilizing meta level reflection and reasoning |
JP4477370B2 (ja) | 2004-01-30 | 2010-06-09 | 株式会社日立製作所 | データ処理システム |
US7039785B2 (en) | 2004-02-24 | 2006-05-02 | Hitachi, Ltd. | Method and apparatus for increasing an amount of memory on demand when monitoring remote mirroring performance |
JP4452533B2 (ja) | 2004-03-19 | 2010-04-21 | 株式会社日立製作所 | システムおよび記憶装置システム |
US20050257014A1 (en) * | 2004-05-11 | 2005-11-17 | Nobuhiro Maki | Computer system and a management method of a computer system |
JP4715286B2 (ja) | 2004-05-11 | 2011-07-06 | 株式会社日立製作所 | 計算機システムおよび計算機システムの制御方法 |
JP4519563B2 (ja) * | 2004-08-04 | 2010-08-04 | 株式会社日立製作所 | 記憶システム及びデータ処理システム |
JP4549793B2 (ja) * | 2004-09-21 | 2010-09-22 | 株式会社日立製作所 | データ処理方法、データベースシステム及びストレージ装置 |
US7739244B2 (en) * | 2004-10-14 | 2010-06-15 | Oracle International Corporation | Operating logging for online recovery in shared memory information systems |
JP2006127028A (ja) | 2004-10-27 | 2006-05-18 | Hitachi Ltd | 記憶システム及び記憶制御装置 |
US8566326B2 (en) * | 2004-11-05 | 2013-10-22 | Oracle International Corporation | High-performance log-based processing |
US8037056B2 (en) | 2005-02-18 | 2011-10-11 | International Business Machines Corporation | Online repair of a replicated table |
US7376675B2 (en) * | 2005-02-18 | 2008-05-20 | International Business Machines Corporation | Simulating multi-user activity while maintaining original linear request order for asynchronous transactional events |
US8214353B2 (en) * | 2005-02-18 | 2012-07-03 | International Business Machines Corporation | Support for schema evolution in a multi-node peer-to-peer replication environment |
US9286346B2 (en) * | 2005-02-18 | 2016-03-15 | International Business Machines Corporation | Replication-only triggers |
JP2006236019A (ja) * | 2005-02-25 | 2006-09-07 | Hitachi Ltd | データコピー方式の切替方法 |
US7613740B2 (en) * | 2005-03-03 | 2009-11-03 | Gravic, Inc. | Control of a data replication engine using attributes associated with a transaction |
GB0504810D0 (en) * | 2005-03-09 | 2005-04-13 | Ibm | Commitment chains for conflict resolution between disconnected data sharing applications |
GB2445368A (en) * | 2005-04-14 | 2008-07-09 | Rajesh Kapur | A method and system for preserving access to a system in case of a disaster allowing transaction rollback |
CN100543691C (zh) | 2005-04-20 | 2009-09-23 | 阿克萨纳(以色列)有限公司 | 远程数据镜像系统 |
US9195397B2 (en) | 2005-04-20 | 2015-11-24 | Axxana (Israel) Ltd. | Disaster-proof data recovery |
DE602006020709D1 (de) * | 2005-04-20 | 2011-04-28 | Axxana Israel Ltd | Ferndaten-spiegelungssystem |
US7890508B2 (en) * | 2005-08-19 | 2011-02-15 | Microsoft Corporation | Database fragment cloning and management |
US20070061379A1 (en) * | 2005-09-09 | 2007-03-15 | Frankie Wong | Method and apparatus for sequencing transactions globally in a distributed database cluster |
US20070067357A1 (en) * | 2005-09-20 | 2007-03-22 | Nicholas Clark | Methods and apparatus to provide a database version control system |
US8600960B2 (en) * | 2005-11-22 | 2013-12-03 | Sap Ag | Processing proposed changes to data |
US7774565B2 (en) * | 2005-12-21 | 2010-08-10 | Emc Israel Development Center, Ltd. | Methods and apparatus for point in time data access and recovery |
US8060713B1 (en) | 2005-12-21 | 2011-11-15 | Emc (Benelux) B.V., S.A.R.L. | Consolidating snapshots in a continuous data protection system using journaling |
US7849361B2 (en) * | 2005-12-22 | 2010-12-07 | Emc Corporation | Methods and apparatus for multiple point in time data access |
US7953698B2 (en) * | 2006-08-03 | 2011-05-31 | Sybase, Inc. | Replication system with methodology for replicating stored procedure calls |
US20080059469A1 (en) * | 2006-08-31 | 2008-03-06 | International Business Machines Corporation | Replication Token Based Synchronization |
US7627612B2 (en) * | 2006-09-28 | 2009-12-01 | Emc Israel Development Center, Ltd. | Methods and apparatus for optimal journaling for continuous data replication |
US8161010B2 (en) * | 2006-10-04 | 2012-04-17 | Salesforce.Com, Inc. | Methods and systems for providing fault recovery to side effects occurring during data processing |
US8682863B2 (en) | 2006-10-04 | 2014-03-25 | Salesforce.Com, Inc. | Methods and systems for bulk row save logic in an object relational mapping layer and application framework |
US8548942B2 (en) | 2006-10-04 | 2013-10-01 | Salesforce.Com, Inc. | Methods and systems for recursive saving of hierarchical objects to a database |
US7890457B2 (en) * | 2006-10-20 | 2011-02-15 | Oracle International Corporation | Transactionally consistent database workload replay |
JP2008250695A (ja) * | 2007-03-30 | 2008-10-16 | Nec Corp | ディスクアレイコントローラ及びこれを備えたディスクアレイシステム |
US7716192B2 (en) * | 2007-05-08 | 2010-05-11 | Microsoft Corporation | Concurrent, lock-free object copying |
US20130204842A1 (en) * | 2007-06-06 | 2013-08-08 | Kunio Kamimura | Method and system for synchronization of data edited in parallel |
EP2201456A4 (en) | 2007-10-08 | 2012-02-15 | Axxana Israel Ltd | SYSTEM FOR QUICK DATA RECOVERY |
US7840536B1 (en) | 2007-12-26 | 2010-11-23 | Emc (Benelux) B.V., S.A.R.L. | Methods and apparatus for dynamic journal expansion |
US7958372B1 (en) | 2007-12-26 | 2011-06-07 | Emc (Benelux) B.V., S.A.R.L. | Method and apparatus to convert a logical unit from a first encryption state to a second encryption state using a journal in a continuous data protection environment |
US8041940B1 (en) | 2007-12-26 | 2011-10-18 | Emc Corporation | Offloading encryption processing in a storage area network |
US7860836B1 (en) | 2007-12-26 | 2010-12-28 | Emc (Benelux) B.V., S.A.R.L. | Method and apparatus to recover data in a continuous data protection environment using a journal |
US8660988B2 (en) * | 2008-01-07 | 2014-02-25 | 28Msec Inc. | Fine-grained and concurrent access to a virtualized disk in a distributed system |
US9501542B1 (en) | 2008-03-11 | 2016-11-22 | Emc Corporation | Methods and apparatus for volume synchronization |
US8028201B2 (en) | 2008-05-09 | 2011-09-27 | International Business Machines Corporation | Leveled logging data automation for virtual tape server applications |
WO2009141752A2 (en) | 2008-05-19 | 2009-11-26 | Axxana (Israel) Ltd. | Resilient data storage in the presence of replication faults and rolling disasters |
US8108634B1 (en) | 2008-06-27 | 2012-01-31 | Emc B.V., S.A.R.L. | Replicating a thin logical unit |
US7719443B1 (en) | 2008-06-27 | 2010-05-18 | Emc Corporation | Compressing data in a continuous data protection environment |
US7882286B1 (en) | 2008-09-26 | 2011-02-01 | EMC (Benelux)B.V., S.A.R.L. | Synchronizing volumes for replication |
US8060714B1 (en) | 2008-09-26 | 2011-11-15 | Emc (Benelux) B.V., S.A.R.L. | Initializing volumes in a replication system |
US8289694B2 (en) | 2009-01-05 | 2012-10-16 | Axxana (Israel) Ltd. | Disaster-proof storage unit having transmission capabilities |
EP2323047B1 (en) * | 2009-10-09 | 2020-02-19 | Software AG | Primary database system, replication database system and method for replicating data of a primary database system |
WO2011067702A1 (en) | 2009-12-02 | 2011-06-09 | Axxana (Israel) Ltd. | Distributed intelligent network |
US9063932B2 (en) | 2009-12-18 | 2015-06-23 | Vertafore, Inc. | Apparatus, method and article to manage electronic or digital documents in a networked environment |
US8700682B2 (en) | 2009-12-24 | 2014-04-15 | Vertafore, Inc. | Systems, methods and articles for template based generation of markup documents to access back office systems |
US8392680B1 (en) | 2010-03-30 | 2013-03-05 | Emc International Company | Accessing a volume in a distributed environment |
US8332687B1 (en) | 2010-06-23 | 2012-12-11 | Emc Corporation | Splitter used in a continuous data protection environment |
US8868484B2 (en) | 2010-07-08 | 2014-10-21 | Oracle International Corporation | Efficiently updating rows in a data warehouse |
US8478955B1 (en) | 2010-09-27 | 2013-07-02 | Emc International Company | Virtualized consistency group using more than one data protection appliance |
US8433869B1 (en) | 2010-09-27 | 2013-04-30 | Emc International Company | Virtualized consistency group using an enhanced splitter |
US8694700B1 (en) | 2010-09-29 | 2014-04-08 | Emc Corporation | Using I/O track information for continuous push with splitter for storage device |
US8335771B1 (en) | 2010-09-29 | 2012-12-18 | Emc Corporation | Storage array snapshots for logged access replication in a continuous data protection system |
US8335761B1 (en) | 2010-12-02 | 2012-12-18 | Emc International Company | Replicating in a multi-copy environment |
US9384198B2 (en) | 2010-12-10 | 2016-07-05 | Vertafore, Inc. | Agency management system and content management system integration |
US8731973B2 (en) | 2011-04-19 | 2014-05-20 | Vertafore, Inc. | Overlaying images in automated insurance policy form generation |
US9256605B1 (en) | 2011-08-03 | 2016-02-09 | Emc Corporation | Reading and writing to an unexposed device |
US9910904B2 (en) * | 2011-08-30 | 2018-03-06 | International Business Machines Corporation | Replication of data objects from a source server to a target server |
US8898112B1 (en) | 2011-09-07 | 2014-11-25 | Emc Corporation | Write signature command |
US9069704B2 (en) * | 2011-11-07 | 2015-06-30 | Sap Se | Database log replay parallelization |
US9081653B2 (en) | 2011-11-16 | 2015-07-14 | Flextronics Ap, Llc | Duplicated processing in vehicles |
US9223659B1 (en) | 2012-06-28 | 2015-12-29 | Emc International Company | Generating and accessing a virtual volume snapshot in a continuous data protection system |
US10235145B1 (en) | 2012-09-13 | 2019-03-19 | Emc International Company | Distributed scale-out replication |
US9336094B1 (en) | 2012-09-13 | 2016-05-10 | Emc International Company | Scaleout replication of an application |
US9110914B1 (en) | 2013-03-14 | 2015-08-18 | Emc Corporation | Continuous data protection using deduplication-based storage |
US9696939B1 (en) | 2013-03-14 | 2017-07-04 | EMC IP Holding Company LLC | Replicating data using deduplication-based arrays using network-based replication |
US9383937B1 (en) | 2013-03-14 | 2016-07-05 | Emc Corporation | Journal tiering in a continuous data protection system using deduplication-based storage |
US8996460B1 (en) | 2013-03-14 | 2015-03-31 | Emc Corporation | Accessing an image in a continuous data protection using deduplication-based storage |
US9152339B1 (en) | 2013-03-15 | 2015-10-06 | Emc Corporation | Synchronization of asymmetric active-active, asynchronously-protected storage |
US9244997B1 (en) | 2013-03-15 | 2016-01-26 | Emc Corporation | Asymmetric active-active access of asynchronously-protected data storage |
US9081842B1 (en) | 2013-03-15 | 2015-07-14 | Emc Corporation | Synchronous and asymmetric asynchronous active-active-active data access |
US9087112B1 (en) | 2013-06-24 | 2015-07-21 | Emc International Company | Consistency across snapshot shipping and continuous replication |
US9069709B1 (en) | 2013-06-24 | 2015-06-30 | Emc International Company | Dynamic granularity in data replication |
US9146878B1 (en) | 2013-06-25 | 2015-09-29 | Emc Corporation | Storage recovery from total cache loss using journal-based replication |
GB2515501A (en) | 2013-06-25 | 2014-12-31 | Ibm | Replication for on-line hot-standby database |
WO2015056169A1 (en) | 2013-10-16 | 2015-04-23 | Axxana (Israel) Ltd. | Zero-transaction-loss recovery for database systems |
US9507814B2 (en) | 2013-12-10 | 2016-11-29 | Vertafore, Inc. | Bit level comparator systems and methods |
US9367435B2 (en) | 2013-12-12 | 2016-06-14 | Vertafore, Inc. | Integration testing method and system for web services |
US9367260B1 (en) | 2013-12-13 | 2016-06-14 | Emc Corporation | Dynamic replication system |
US9405765B1 (en) | 2013-12-17 | 2016-08-02 | Emc Corporation | Replication of virtual machines |
US9158630B1 (en) | 2013-12-19 | 2015-10-13 | Emc Corporation | Testing integrity of replicated storage |
CN103729442B (zh) * | 2013-12-30 | 2017-11-24 | 华为技术有限公司 | 记录事务日志的方法和数据库引擎 |
US9747356B2 (en) | 2014-01-23 | 2017-08-29 | Oracle International Corporation | Eager replication of uncommitted transactions |
US9189339B1 (en) | 2014-03-28 | 2015-11-17 | Emc Corporation | Replication of a virtual distributed volume with virtual machine granualarity |
US10127119B1 (en) * | 2014-05-21 | 2018-11-13 | Veritas Technologies, LLC | Systems and methods for modifying track logs during restore processes |
US9274718B1 (en) | 2014-06-20 | 2016-03-01 | Emc Corporation | Migration in replication system |
US10082980B1 (en) | 2014-06-20 | 2018-09-25 | EMC IP Holding Company LLC | Migration of snapshot in replication system using a log |
US9619543B1 (en) | 2014-06-23 | 2017-04-11 | EMC IP Holding Company LLC | Replicating in virtual desktop infrastructure |
US9747556B2 (en) | 2014-08-20 | 2017-08-29 | Vertafore, Inc. | Automated customized web portal template generation systems and methods |
US10324798B1 (en) | 2014-09-25 | 2019-06-18 | EMC IP Holding Company LLC | Restoring active areas of a logical unit |
US10101943B1 (en) | 2014-09-25 | 2018-10-16 | EMC IP Holding Company LLC | Realigning data in replication system |
US10437783B1 (en) | 2014-09-25 | 2019-10-08 | EMC IP Holding Company LLC | Recover storage array using remote deduplication device |
US9529885B1 (en) | 2014-09-29 | 2016-12-27 | EMC IP Holding Company LLC | Maintaining consistent point-in-time in asynchronous replication during virtual machine relocation |
US9910621B1 (en) | 2014-09-29 | 2018-03-06 | EMC IP Holding Company LLC | Backlogging I/O metadata utilizing counters to monitor write acknowledgements and no acknowledgements |
US9600377B1 (en) | 2014-12-03 | 2017-03-21 | EMC IP Holding Company LLC | Providing data protection using point-in-time images from multiple types of storage devices |
US10496487B1 (en) | 2014-12-03 | 2019-12-03 | EMC IP Holding Company LLC | Storing snapshot changes with snapshots |
US9405481B1 (en) | 2014-12-17 | 2016-08-02 | Emc Corporation | Replicating using volume multiplexing with consistency group file |
US20160218935A1 (en) | 2015-01-27 | 2016-07-28 | Bank Of America Corporation | User interface and dashboard for holistic data transmission throughout an enterprise |
US9632881B1 (en) | 2015-03-24 | 2017-04-25 | EMC IP Holding Company LLC | Replication of a virtual distributed volume |
US10296419B1 (en) | 2015-03-27 | 2019-05-21 | EMC IP Holding Company LLC | Accessing a virtual device using a kernel |
US9411535B1 (en) | 2015-03-27 | 2016-08-09 | Emc Corporation | Accessing multiple virtual devices |
US9678680B1 (en) | 2015-03-30 | 2017-06-13 | EMC IP Holding Company LLC | Forming a protection domain in a storage architecture |
US10185736B2 (en) * | 2015-04-27 | 2019-01-22 | Microsoft Technology Licensing, Llc | Replicable differential store data structure |
US10379958B2 (en) | 2015-06-03 | 2019-08-13 | Axxana (Israel) Ltd. | Fast archiving for database systems |
US10853181B1 (en) | 2015-06-29 | 2020-12-01 | EMC IP Holding Company LLC | Backing up volumes using fragment files |
US10725708B2 (en) | 2015-07-31 | 2020-07-28 | International Business Machines Corporation | Replication of versions of an object from a source storage to a target storage |
US9600400B1 (en) | 2015-10-29 | 2017-03-21 | Vertafore, Inc. | Performance testing of web application components using image differentiation |
US9684576B1 (en) | 2015-12-21 | 2017-06-20 | EMC IP Holding Company LLC | Replication using a virtual distributed volume |
US10133874B1 (en) | 2015-12-28 | 2018-11-20 | EMC IP Holding Company LLC | Performing snapshot replication on a storage system not configured to support snapshot replication |
US10235196B1 (en) | 2015-12-28 | 2019-03-19 | EMC IP Holding Company LLC | Virtual machine joining or separating |
US10067837B1 (en) | 2015-12-28 | 2018-09-04 | EMC IP Holding Company LLC | Continuous data protection with cloud resources |
US10152267B1 (en) | 2016-03-30 | 2018-12-11 | Emc Corporation | Replication data pull |
US10579282B1 (en) | 2016-03-30 | 2020-03-03 | EMC IP Holding Company LLC | Distributed copy in multi-copy replication where offset and size of I/O requests to replication site is half offset and size of I/O request to production volume |
US10235087B1 (en) | 2016-03-30 | 2019-03-19 | EMC IP Holding Company LLC | Distributing journal data over multiple journals |
US10235060B1 (en) | 2016-04-14 | 2019-03-19 | EMC IP Holding Company, LLC | Multilevel snapshot replication for hot and cold regions of a storage system |
US10019194B1 (en) | 2016-09-23 | 2018-07-10 | EMC IP Holding Company LLC | Eventually consistent synchronous data replication in a storage system |
US10146961B1 (en) | 2016-09-23 | 2018-12-04 | EMC IP Holding Company LLC | Encrypting replication journals in a storage system |
US10235091B1 (en) | 2016-09-23 | 2019-03-19 | EMC IP Holding Company LLC | Full sweep disk synchronization in a storage system |
US10235090B1 (en) | 2016-09-23 | 2019-03-19 | EMC IP Holding Company LLC | Validating replication copy consistency using a hash function in a storage system |
US10210073B1 (en) | 2016-09-23 | 2019-02-19 | EMC IP Holding Company, LLC | Real time debugging of production replicated data with data obfuscation in a storage system |
US10452636B2 (en) * | 2016-11-28 | 2019-10-22 | Sap Se | Delayed snapshot isolation for read service at a database |
US10592326B2 (en) | 2017-03-08 | 2020-03-17 | Axxana (Israel) Ltd. | Method and apparatus for data loss assessment |
US10872073B1 (en) * | 2017-03-23 | 2020-12-22 | Amazon Technologies, Inc. | Lock-free updates to a data retention index |
CN109951662B (zh) * | 2017-12-20 | 2022-06-14 | 浙江宇视科技有限公司 | 录像备份方法及系统 |
CN108959548B (zh) * | 2018-07-02 | 2023-04-18 | 创新先进技术有限公司 | 业务请求的处理方法及装置 |
US11113262B2 (en) * | 2019-04-01 | 2021-09-07 | Sap Se | Time-efficient lock release in database systems |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1505603A (en) * | 1976-07-07 | 1978-03-30 | Ibm | Data processing systems |
US4435762A (en) * | 1981-03-06 | 1984-03-06 | International Business Machines Corporation | Buffered peripheral subsystems |
US4507751A (en) * | 1982-06-21 | 1985-03-26 | International Business Machines Corporation | Method and apparatus for logging journal data using a log write ahead data set |
US4498145A (en) * | 1982-06-30 | 1985-02-05 | International Business Machines Corporation | Method for assuring atomicity of multi-row update operations in a database system |
US4509119A (en) * | 1982-06-24 | 1985-04-02 | International Business Machines Corporation | Method for managing a buffer pool referenced by batch and interactive processes |
US4710870A (en) * | 1985-07-10 | 1987-12-01 | Bell Communications Research, Inc. | Central computer backup system utilizing localized data bases |
US4868744A (en) * | 1986-03-03 | 1989-09-19 | International Business Machines Corporation | Method for restarting a long-running, fault-tolerant operation in a transaction-oriented data base system without burdening the system log |
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 |
US4881163A (en) * | 1986-09-19 | 1989-11-14 | Amdahl Corporation | Computer system architecture employing cache data line move-out queue buffer |
SE454730B (sv) * | 1986-09-19 | 1988-05-24 | Asea Ab | Forfarande och datorutrustning for stotfri omkoppling av funktionen fran aktiva enheter till beredskapsenheter i en centralenhet |
US5001628A (en) * | 1987-02-13 | 1991-03-19 | International Business Machines Corporation | Single system image uniquely defining an environment for each user in a data processing system |
US4881166A (en) * | 1987-07-24 | 1989-11-14 | Amoco Corporation | Method for consistent multidatabase transaction processing |
US4930072A (en) * | 1987-08-31 | 1990-05-29 | At&T Bell Laboratories | Method for computing transitive closure |
US5005122A (en) * | 1987-09-08 | 1991-04-02 | Digital Equipment Corporation | Arrangement with cooperating management server node and network service node |
US4965719A (en) * | 1988-02-16 | 1990-10-23 | International Business Machines Corporation | Method for lock management, page coherency, and asynchronous writing of changed pages to shared external store in a distributed computing system |
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 |
US4949251A (en) * | 1988-07-18 | 1990-08-14 | Digital Equipment Corporation | Exactly-once semantics in a TP queuing system |
US5095421A (en) * | 1989-08-17 | 1992-03-10 | International Business Machines Corporation | Transaction processing facility within an operating system environment |
-
1989
- 1989-09-25 US US07/411,729 patent/US5170480A/en not_active Expired - Fee Related
-
1990
- 1990-09-05 EP EP19900309713 patent/EP0420425A3/en not_active Withdrawn
- 1990-09-07 JP JP2235953A patent/JPH03122729A/ja active Granted
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07500203A (ja) * | 1991-10-18 | 1995-01-05 | テキサス・マイクロシステムズ・インコーポレーテッド | ロールバックのためのデータ・バックアップ・システム |
JPH05158529A (ja) * | 1991-12-10 | 1993-06-25 | Nissan Motor Co Ltd | 計測ロボットのティーチング方法 |
JPH06508230A (ja) * | 1992-04-01 | 1994-09-14 | ノキア テレコミュニカシオンス オサケ ユキチュア | 分散型データベースシステムにおける故障許容のための変更分配方法 |
JPH0683677A (ja) * | 1992-04-20 | 1994-03-25 | Internatl Business Mach Corp <Ibm> | データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム |
JPH06195250A (ja) * | 1992-10-13 | 1994-07-15 | Internatl Business Mach Corp <Ibm> | データベースを更新するための方法、システム及び装置 |
JPH11327991A (ja) * | 1998-03-20 | 1999-11-30 | Lucent Technol Inc | ホットスペアシステムおよびデ―タベ―ス管理システム |
US7930271B2 (en) | 2000-10-09 | 2011-04-19 | Maximum Availability Ltd. | Method and apparatus for data processing |
JP2006202338A (ja) * | 2000-10-09 | 2006-08-03 | Maximum Availability Ltd | データ処理の方法及び装置 |
JP2004511854A (ja) * | 2000-10-09 | 2004-04-15 | マキシマム アヴェイラビリティ リミテッド | データ処理の方法及び装置 |
US8818939B2 (en) | 2000-10-09 | 2014-08-26 | Maximum Availability Ltd. | Method and apparatus for data processing |
JP2005527912A (ja) * | 2002-05-24 | 2005-09-15 | オラクル・インターナショナル・コーポレイション | データウェアハウジングのための高性能な変更の捕捉 |
US7647354B2 (en) | 2002-05-24 | 2010-01-12 | Oracle International Corporation | High-performance change capture for data warehousing |
WO2004090726A1 (ja) * | 2003-04-04 | 2004-10-21 | Fujitsu Limited | データベース複製プログラムおよびデータベース複製装置 |
JP2009245089A (ja) * | 2008-03-31 | 2009-10-22 | Fujitsu Ltd | 分散オブジェクト・プログラム及びレプリケーション処理方法 |
WO2014097475A1 (ja) * | 2012-12-21 | 2014-06-26 | 株式会社Murakumo | 情報処理方法、情報処理装置、及び、プログラム |
JPWO2014097475A1 (ja) * | 2012-12-21 | 2017-01-12 | 株式会社Murakumo | 情報処理方法、情報処理装置、及び、プログラム |
US10437812B2 (en) | 2012-12-21 | 2019-10-08 | Murakumo Corporation | Information processing method, information processing device, and medium |
JP2022510460A (ja) * | 2019-05-05 | 2022-01-26 | ▲騰▼▲訊▼科技(深▲セン▼)有限公司 | データレプリケーション方法、装置、コンピュータ機器及びコンピュータプログラム |
US11921746B2 (en) | 2019-05-05 | 2024-03-05 | Tencent Technology (Shenzhen) Company Limited | Data replication method and apparatus, computer device, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
EP0420425A2 (en) | 1991-04-03 |
US5170480A (en) | 1992-12-08 |
EP0420425A3 (en) | 1993-04-21 |
JPH0552972B2 (ja) | 1993-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH03122729A (ja) | データベース更新システム及び方法 | |
US11327958B2 (en) | Table replication in a database environment | |
US20200167370A1 (en) | Maintaining a relationship between two different items of data | |
US6085200A (en) | System and method for arranging database restoration data for efficient data recovery in transaction processing systems | |
US9069704B2 (en) | Database log replay parallelization | |
US20200081879A1 (en) | Persistent data storage techniques | |
JP2708356B2 (ja) | データベースを更新するための方法、システム及び装置 | |
US8150812B2 (en) | Methods, apparatus and computer programs for data replication | |
CA2436517C (en) | Method and apparatus for data processing | |
US9904721B1 (en) | Source-side merging of distributed transactions prior to replication | |
US20180144015A1 (en) | Redoing transaction log records in parallel | |
US6018746A (en) | System and method for managing recovery information in a transaction processing system | |
KR100926880B1 (ko) | Dbms에서의 데이터 복제 방법 및 시스템 | |
US20120023369A1 (en) | Batching transactions to apply to a database | |
US20150339366A1 (en) | Replication for on-line hot-standby database | |
JPH0784815A (ja) | フォールト・トレラント・トランザクション指向データ処理システムおよび方法 | |
US10366075B2 (en) | Database management system and method | |
US9652492B2 (en) | Out-of-order execution of strictly-ordered transactional workloads | |
US20120084597A1 (en) | Computer system and data processing method for computer system | |
US20050172288A1 (en) | Method, system, and program for system recovery | |
EP0097239B1 (en) | Method and apparatus for restoring data in a computing system | |
von Bültzingsloewen et al. | Two-level transaction management in a multiprocessor database machine | |
WO2016148716A1 (en) | Post in-doubt transaction to notice unit |