JP2001511552A - データ・ベースに関する方法 - Google Patents
データ・ベースに関する方法Info
- Publication number
- JP2001511552A JP2001511552A JP2000504497A JP2000504497A JP2001511552A JP 2001511552 A JP2001511552 A JP 2001511552A JP 2000504497 A JP2000504497 A JP 2000504497A JP 2000504497 A JP2000504497 A JP 2000504497A JP 2001511552 A JP2001511552 A JP 2001511552A
- Authority
- JP
- Japan
- Prior art keywords
- log
- information
- database
- physiological
- checkpoint
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/40—Data acquisition and logging
-
- 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/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- 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/99938—Concurrency, e.g. lock management in shared database
-
- 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/99941—Database schema or data structure
- Y10S707/99942—Manipulating data structure, e.g. compression, compaction, compilation
-
- 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/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
情報を高い信頼性で収集することを意図している。
ようにすることを目的としてファジー・チェックポイントを用いており、これら
のファジー・チェックポイントはログ情報が実時間で収集出来るようにすること
を意図して生理的ログと組み合わされている。
部分に分割されており、ここでそれぞれの部分は共通ページ上にまたはそのデー
タベースに属する個別のページ上に分散されている。
スに関するアプリケーションに特に適用できる。
明する、すなわちディスク・メモリ・データベースと一次メモリ・データベース
である。ディスク・メモリ・データベースにおいて情報の一部、最も最近使用さ
れた情報は一次メモリ内に存在している一方、残りはディスク・メモリ内に存在
している。この場合、もしも望む情報が既に一次メモリの中に格納されていない
時には、それをディスク・メモリから取り出して一次メモリの中に入れなければ
ならない。ディスク・メモリから取られた新たな情報は一次メモリ内に存在する
情報に上書きされる、そしてもしもこの上書きされた情報が後の段階で使用され
る場合、前記情報をディスク・メモリから再収集する必要がある。メモリ内容は
複数ページに分割され、それらのページは互いに独立して取り扱われる。例えば
、新たな情報を1つのページの中に取り込むことができる一方で、その他のペー
ジは影響されずに残る。
ィスク・メモリ内の構造の1:1写像である。
ク・メモリ1ページに更新されるので、異なるページの間のリンクはクラッシュ
後にシステムを再起動した場合に整合が取れなくなる。従って整合チェックポイ
ントをディスク・メモリ・データベースに関連して実現するのはしばしば困難で
ある。
である。例えば、この整合性はデータベースの2つの複製をディスク・メモリ内
に持つことで容易に実現できる。すなわち、最新または現行バージョンのデータ
ベースの複製と旧バージョンの複製とである。これはデータベースの全てが一次
メモリ内に瞬時に見つけられ、与えられたチェックポイントに基づいて全てのペ
ージ間に整合性が成り立つことが知られている異なるバージョンのデータベース
を容易にディスク・メモリ内に格納出来るからである。
基づくものであろうが、一方で同一オブジェクト内のその他の属性はディスク・
メモリに基づくものである。ディスク・メモリ・データベースと一次メモリ・デ
ータベースの間の混合として構成されたテーブルもまた見られる。
ォーマットされている。1つのテーブルは多数の欄で構成され、ここで各々の欄
はある種の情報を含んでいる。各々の欄には特定の属性が割り当てられていて、
前記欄内の情報はこの属性に基づいてフォーマットされている。
数、十進数、日時、テキスト等々としてフォーマットされていることである。
たは ・属性がダイナミック属性である時、すなわちその属性が存在するかまたは存
在しないか、例えば選択可能かまたはオプション的な属性である時、を含む。
し、そのテーブル内に存在する複数の属性(欄)を含む。1つのオブジェクトは
従って前述の複数の異なる属性を混合したものを含むことが出来る。
つの例である。異なる属性としては、洗礼名、名字、住所、郵便番号、電話番号
、誕生日およびその他のオプション的なコメントなどが含まれるはずである。
あるが、名前、住所および電話番号は可変属性ででありまた、コメントはダイナ
ミック可変属性である。
テーブルをメモリ内で連続した順番で固定メモリ空間に格納することができる。
これは大容量のメモリ空間を必要とし、おそらくその大部分は空であるが、それ
は可変並びにダイナミック属性用の空間に備えることが出来るようにするためで
ある。従って可変属性は割り当てられたメモリ空間サイズのために制限された範
囲内でのみ可変である。
イズとまたダイナミック属性が存在するか否か、また存在する場合その様な属性
のサイズを開示することも可能である。従って、オブジェクトを生成する際にそ
れぞれの属性で必要とされるメモリ空間が割り当てられ、それらの属性が組み合
わされて1つのオブジェクトを形成する。このヘッダはそれぞれの属性のサイズ
を開示しており、これによってそのオブジェクト内の情報が正しく解釈されるこ
とになる。このヘッダはまたインデックスを含み、これはそれぞれの属性を指し
示すポインタを含む。
するための連続したメモリ空間を有することはまれであって、それはメモリはし
ばしば大なり小なりフラグメントに分断されているためである。多くの場合、テ
ーブルは1ページ上に収まるには大きすぎる。従って1つのテーブル内の種々の
オブジェクトは1ページ上に分散され、また1つのテーブルはその様ないくつか
のページに分割されている。
。分散型データベースでは、1つのテーブルを分散型データベース内のいくつか
のプロセッサ・ノードに分散することが出来る。従ってフラグメントはノード内
に見られるテーブルの一部である。フラグメントはまたそのテーブルの同一部分
の全ての複製を含む。従って、フラグメントは1つのノード内に格納されている
テーブルの一部の一次複製と、別のノード内に格納されている同一テーブルの同
一部分の二次複製を含むことが可能である。同一または異なるテーブルの異なる
フラグメントのいくつかの異なる複製が1つのノード内に格納される場合がある
。
ジェクトを1ページの異なる場所に格納したり、またはそのオブジェクトを異な
るページ間に分割する必要を認めることはあり得ない話ではない。例えば、大き
なオブジェクトとは1つまたは複数の属性が数千文字を含むテキスト・ファイル
を含むようなものもその1つである。
ーブルおよびテーブル内のオブジェクトに対して、例えばBツリーの様なツリー
構造を構築する高度データベース構造を使用することが知られている。
に基づいて利用可能なメモリ空間内に格納される。それぞれのオブジェクトに対
するヘッダは、Bツリー内部を指し示すポインタを含み、これによりオブジェク
トの異なる部分が検索されるようにしている。これらの部分は全属性を構成する
必要はなく、オブジェクトは単一の連続した文字列として処理することが可能で
、利用できるメモリ空間に基づいて任意の希望する方法で分割出来る。
変更がディスク・メモリに直接書き込まれる場合に適用される。情報がディスク
・メモリの中に直接書き込まれない場合、何らかの型式のログが要求される。こ
の様にオブジェクトが非常に大きな場合、非常に複雑なログファイルが要求され
る。
る場合またはオブジェクト内の属性を変更、更新する場合、その変更がディスク
・メモリ・データベースまたは一次メモリ・データベースに関するかには無関係
に、遅かれ早かれその変更を永続的な方法で格納する必要がある。
ュした場合でもその情報が格納されて残っていることを意味する。しかしながら
、長く永続的な格納はディスク・メモリの中に格納する場合は一次メモリの中で
は実現出来ない。ディスク・メモリに書き込んだり読み出したりするには時間が
掛かり、これはある時点でのみ実施される。ディスク・メモリは一次メモリに基
づいて一度に1つのページ全体毎に更新される。
行し、全ての付託されていないトランザクションは廃棄する必要がある。この事
象を取り扱うために2つの型式の情報が格納される。
は格納されていない付託済みの変更を可能とするために用いられて、プロセッサ
がクラッシュした際に失われてしまう情報の復元に関して再実行する。
ているものの変更を取り消すために用いられて、プロセッサがクラッシュした際
に失われてしまう情報の復元に関して行われる。
納され、此処にはフラグメントに影響を与える全ての変更がログの中に格納され
る。ログ情報は多くの異なる方法で収集および格納する事ができる。
用し、変更前と変更後の情報を格納する。物理的ログは分断されたファイルまた
は分断されたメモリ空間のフラグメント解消さえも、それが真の情報の変更でな
くて単なるメモリ空間の再配置であっても全ての変更を記録する。理解されるで
あろうが、その様なログはメモリ空間およびプロセッサ時間の両方に関して非常
に容量を必要とする。
配置は格納しない。関連する部分の内部アドレス、例えば前記関連部分のページ
インデックスの様なインデックスがログの中に格納され、また前記部分内で実施
された変更が格納される。
通して"14"にセットされることを可能としている。この情報はメモリ内の特定の
位置に格納されている鍵"Kalle"を具備したオブジェクトには連結されておらず 、鍵"Kalle"を有するオブジェクトはそのログを使用して必要な訂正が実行され る時に検索される。
ジ間で整合性が成り立つように、全てのページを同時にディスク・メモリの中に
ダウンロードする必要がある。従って、チェックポイント、凍結時間ポイントが
ディスク・メモリへのダウンロード開始時に生成され、フラグメント内の全ての
ページがディスク・メモリ内に書き込まれる。
ポイントとトランザクション整合性チェックポイントである。
ロードされるフラグメント内のオブジェクトに影響する全てのトランザクション
が停止され、全ての実行中のトランザクションが完了する。次にディスク・メモ
リ内への書き込みの実際の処理手順が実施され、これは大きなフラグメントの場
合数分を要する。これは停止されたトランザクションに対する対応する待ち時間
を意味する。
止が実行中の動作、トランザクションの一部を終了させるための待ち時間の間、
トランザクションの途中で許される点である。従って、動作整合性チェックポイ
ントに関連する待ち時間は、トランザクション整合性チェックポイントに含まれ
る待ち時間よりも短い。
することが知られている。
リ内に書き込む際にファジーチェックポイントの使用を可能とし、これはディス
ク・メモリ内に書き込まれるオブジェクトに影響を与える動作に関連する待ち時
間を無くす。
ブジェクトの新たな複製を生成することが知られており、ここでその新たな複製
は変更後のオブジェクトを、旧複製は変更前のオブジェクト、またはその逆の形
で2つの複製の間のリンクと共に含む。
不用であり、単に論理REDOログのみが必要である。これをディスク・メモリ
・データベースで使用することは困難であるが、それは新複製が旧複製とは異な
るページ上に生成される可能性が有るためである、とは言っても一次メモリ・デ
ータベース内では可能であるのは、これらのデータベースがしばしばトランザク
ション整合性チェックポイントを使用しており、これはほとんどディスク・メモ
リ・データベース内には見られないからである。
フラグメントのクラッシュに関連してまたは全システムの全体的なクラッシュに
関連して失われた情報を再生する際に使用することの出来るログを意味しており
、此処で前記情報のこの再生は全てのプロセッサ及び関連するメモリ(ロケーシ
ョンに関係なく)に対して、ログ(複製に関係なく)の任意の複製、例えば一次
または二次複製の始まりの点から実行することが可能である。
これらの発刊物は既知の技術の一部を教えるものと考えることが出来る。
very Method Supporting Fine Granularity Locking and Partial Rollback Usi
ng Write-Ahead Logging)」シー・モハン(C.Mohan)、ドン・ハデール(Don H
aderle)、ブルース・リンゼイ(Bruce Lindsay)、ハミッド・ピラヘッシュ(H
amid Pirahesh)、ベーター・シュバルツ(Peter SChwarz)、データベース・シ
ステムに関するACM会報、1992年3月巻7、第1、94ページ。
Dali Main-Memory Storage Manager)」、ピー・ボハノン(P. Bohannon)、デ ー・リューウェン(D. Liuwen)、アール・ラストジ(R. Rastogi)、エス・シ ェサドリ(S. Shesadri)、エイ・シルバーシャッツ(A. Silberschatz)、エス
・スダーシャン(S. Sudarshan)、ルーセント・テクノロジー(http://www.bel
l-labs.com/project/dali/papers.html)からの覚え書き。
ts and Techniques)」ジェー・グレイ(J. Gray)、エイ・ロイター(A. Reute
r)、モルガン・カウフマン(Morgan Kaufma)、1993年。
for Semistructured Data)」エス・アビテボウル(S. Abiteboul)、デー・ク
アス(D. Quass)、ジェー・マックヒュー(J. McHugh)、ジェー・ウィンダム (J. Windom)、ジェー・ウィーナー(J. Wiener)、コンピュータサイエンス学
部技術報告、スタンフォード大学。
n Overview)」エイチ・ガルシア・モリナ(H. Garcia-Molina)、ケイ・サーレ
ム(K. Salem)、知識およびデータベース・エンジニアリングに関するIEEE
会報、1994年12月、巻4、第6。
」インフォミックス・ソフトウェア社、1994年12月。
e Systems)」エス・オー・ハバショフ(S-O. Hvasshovd)ビューイング、ISBN
3-528-05411-5。
's Memory Resident Storage Component)」ティー・ジェー・レ−マン(T.J. L
ehman)、イー・ジェー・シェキタ(E.J. Shekita)、エル・エフ・カブレラ(L
-F.Cabrera)、知識およびデータベース・エンジニアリングに関するIEEE会
報、1992年12月、巻4、第6。
ールト・トレラントに対するシステム支援(System Support for Software Faul
t Tolerance in Highly Available Database Management System)」エム・ピー
・サリバン(M.P. Sullivan)、博士論文。
することは可能でありまた従来知られている事例で必要とされるよりログ情報が
更に少ない、信頼性の高いデータベースを提供するログ情報を処理するための方
法を提供するに当たって技術的な問題が存在することが分かるであろう。
これは従って特に分散型データベースに適した方法であって、ここでは1つまた
は複数のプロセッサノードのクラッシュ、または全システムが全体的にクラッシ
ュした際に失われてしまったテーブルの一部またはテーブル全体を再生するため
にログが使用でき、またテーブルの一部またはテーブルの全体が元のノードとは
全く異なるプロセッサノード内で再生できるものである。
リ内でのデータベース変更が実時間でディスク・メモリ内に保存できる方法を提
供することである。
ベースの両方と共に働く方法を提供することである。
イントを取り扱い、必要とされるログ情報の量を既知の技術に比較して著しく削
減することが可能な方法を提供することである。
知の技術に比較して著しく削減できる方法を提供することである。
ログ情報を使用して、ローカルに独立でアプリケーションに依存しないログを提
供出来るようにすることである。
し、また導入部で定めた方法を開始点として、本発明に基づき1つの生理的UN
DOログと1つのREDOログを単独に管理することが提案されており、ファジ
ーチェックポイントで要求されそれに対して従来的なログが生成される事のない
論理的UNDO情報が、旧データ情報が新データ情報で置き換えられる、部分的
な変更が生じる際に1つのページ上に更なる部分を生成することで得られ、前記
更なる部分は構造的に変更部分の複製であり、この変更部分および更なる部分は
互いにリンクされている。
む更なる部分とに基づいて実現される。
ログとの間の共同作用を通して提供される。生理的ログがUNDOログの場合、
この共同作用または共同操作はUNDOログの中に1つのページ上で、ローカル
チェックポイントを設定してからそのページが対応するディスク・メモリの中に
書き込まれる時点までにローカルに生じた全ての事象を保存する中に存在する。
これに代わって、生理的ログが生理的REDOログの場合、この共同操作はRE
DOログの中に1つのページ上で、前記ページを対応するディスク・メモリの中
に書き込んでからそこにローカルチェックポイントが設定される時点までにロー
カルに生じた全ての事象を保存する中に存在する。
に単純に機能するが、一方で生理的UNDOログは一次データベースとディスク
・メモリ・データベースの両方に関連して、従ってまた一次メモリとディスク・
メモリ・データベースを組み合わせたデータベースに関連して機能することに注
意されたい。
次メモリとディスク・メモリ・データベースを組み合わせたデータベースの中で
効果的に使用できる方法を提供する発明により、本発明に基づき生理的ログが生
理的UNDOログで有ることが提案されている。以下の説明は従って生理的UN
DOログに関するものである。
る複製、またはコピーが変更を引き起こしたトランザクションが完了または委託
された後、またはその様な完了に関連して削除される。
格納される。更なる複製が削除されてその変更がディスク・メモリの中に書き込
まれる際に、更なる複製が削除された効果に対する情報が生理的ログの中に格納
される。
更なる複製が削除された効果に関する情報を挿入する代わりに、前記更なる複製
の生成に関する情報が生理的ログから削除される。これはログのサイズを同じだ
け増やす代わりに削減し、これによって更に必要なログ情報の量を削減する。
希望する情報を可能な限り少ないメモリアクセスで見つける能力の強化を意図し
て、すなわち情報のキャッシュメモリへの収集を出来るだけ少なくすることを意
図し、本発明に基づいて任意の更なる複製を格納するために使用される特別ペー
ジが提案されている。
カルチェックポイントがデータベースの異なる領域、例えば異なるテーブルまた
は異なるフラグメントに対して生成されている。これらの異なるチェックポイン
トはデータベースのそれぞれの領域内でローカルに制御されている。
トは連続的かつ周期的に生成される。簡単に言うと、これは定期的に更新される
カウンタの助けで実現される。各々のトランザクションにはこの対象とするトラ
ンザクションが委託された時点でグローバルチェックポイントの値が与えられる
。
格納された時点であり、このログ情報は共通グローバルチェックポイントを有す
る全てのトランザクション並びに先行のグローバルチェックポイントに属する全
てのトランザクションの委託に関連する。
または全データベースの総合的クラッシュにより失われたフラグメントのような
損失領域は、対象領域に関して見つけられたローカルログ情報に基づいて、最も
最新で生成されたグローバルシステムチェックポイントに続き、また最新に生成
されたローカルチェックポイントの前に再生される。
その他のページへのリンクの生成を可能とし、これらのリンクはデータベース内
の変更の事象に際しても信頼性を有する。
ナミック属性を有するオブジェクトが、簡単で時間およびメモリ空間を効率的に
使用する方法で実行ならびに取り扱うことが出来る。
は前記部分がBツリーに属する葉ノードで構成される。
づいて構築される構造に従って配置されるものであり、ここでは前記部分は前記
構成要素で構成されている。
際に高度データ構造が使用されていたとしても、必要なログ情報が効果的な方法
で容易に利用できるようになることである。更に、このログは1つの生理的UN
DOログと唯1つの論理的REDOログを含むが、これはUNDO情報が変更さ
れた部分の複製を生成する際に得られ、ここでその複製はオリジナルと組み合わ
されて必要なUNDO情報を含むからである。更なる複製を使用する際に必要と
される情報の量は、論理UNDOログで必要とされる情報量よりも少ない。
両方に対して動作整合性チェックポイントを提供しており、これはページ間の参
照が信頼性の高いことを意味し、これは続いてディスク・メモリ・データベース
の場合でもオブジェクトのデータ構造のフレキシブルな取り扱いを可能とする。
明を例に基づき添付図を参照して更に詳細に説明する。
があるため、本発明は論理的ログを使用することに基づいている。
モリに基づくデータベースに関連して実現するのは困難である。選択されたチェ
ックポイントは動作整合チェックポイントであり、それはこれがトランザクショ
ンチェックポイントで必要とされるものより必要とする待ち時間が短いからであ
る。
いことを意味している。従ってファジーチェックポイントが使用される。
ポイントを提供し、続いて異なるページ間で使用される参照を可能とする。これ
はオブジェクト内で変更された属性の複製を使用することを可能とし、ここで複
製を任意のいかなるページ内に設置することが可能で、これらの複製は例えば論
理的UNDO情報と置き換えることが可能である。
シュに続く、再生処理手順のなかでこのログを使用出来るようにする。
割することを可能とする構造の中に格納される; ・ファジーチェックポイントと生理的ログが、一次メモリに関連してディスク
・メモリを更新する際に使用される; ・一部の新たな複製である更なる部分が、対象としている部分に変更が生じた
際に生成され、ここで前記更なる部分は例えば前記変更前の情報を含み、またオ
リジナル部分は前記変更に続く情報を含む; ここでオリジナル部分は、例えばツリー構造の葉ノードまたは数学的関数、例え
ばハッシュ関数を通して配置された構成要素で構成されている。
られるからである。
的UNDO情報およびREDO情報と同様に整合性チェックポイントを生成する
ために必要とされる。
含む。この場合、必要なUNDO情報は更なる部分1‘を部分1を変更する際に
生成することで実行され、ここで旧データ情報Aは新データ情報A’で置き換え
られる。この更なる部分1‘は構造的に変更された部分1の複製である。変更さ
れた部分1及び更なる部分1’は何らかの方法で相互にリンク2されている。
、更なる部分1’は旧データ情報Aを含む。
いる。
ベース内の異なるページp1,p2,...,pn上に分散されている。本発明
はまた任意の更なる複製1‘を格納するための特別ページpnを提案している。
し使用されるからである; ・データベースの関連する部分がディスク・メモリに基づくデータベースであ
っても、一次メモリに基づくページが使用されており、これはディスク・メモリ
に基づくページの場合に要求されるよりも少ない生理的UNDO情報を要求する
。
する。
らの変更に関連してディスク・メモリの更新とどの様にして協調するかを図示す
る。これらの更新は特定の時点t1,t2,t3,...で実施され、ここで更
新はそれぞれの時点で開始される。
または1つのフラグメントに属する全てのページに影響する事が可能である。こ
れらのページはディスク・メモリの中に一度に1つづつ順番に書き込まれる。こ
れは全ての影響されたページをディスク・メモリの中に書き込むにはある量の時
間、t1−t1’がかかる。ローカルチェックポイントLCが各々の更新に関連
して設定される。
Cがセットされる。一次メモリ・データベース内でローカルチェックポイントL
Cがセットされてから、そのページが対応するディスク・メモリの中に書き込ま
れるまでの間にページ上で生じた全てが生理的UNDOログの中にセーブされる
。これは時点tとt’の間の何処かで行われる。
書き込まれる。従ってディスク・メモリ・データベースは一次メモリ・データベ
ースよりもかなり多くのログ情報を必要とする。
ースに関係なく、格納されている全ログ情報は論理的REDOログ、生理的UN
DOログ及び、更なる部分1’を通して得られる必要な論理的UNDO情報から
構成されている。
もかなり少ない。
が変更を引き起こしたトランザクションが完了または委託された後、またはそれ
に関連して、削除されることを可能とする。これは従って使用されるメモリ空間
の更なる削減を実現する。
1が生理的ログ3の中に格納される。変更のロギングがトランザクションが委託
される前にディスク・メモリの中に書き込まれる際に、更なる部分1’が削除さ
れたことを表す情報3B2もまた生理的ログ3の中に格納される。
いない場合、前記更なる部分1’が削除された効果に対して更なる情報3B2を
追加する代わりに、更なる部分1’が生成されたことを示す情報3B1が生理的
ログ3から削除されることを提案している。
はフラグメントに対して多数の異なるローカルチェックポイントが提供される。
図5はそれぞれの領域がどの様にして異なるローカルチェックポイントLC1,
LC2,LC3,...,LCnを有するかを図示しており、ここで異なるチェ
ックポイントはそれぞれの領域内でローカルに制御されている。
クポイントGCが連続的かつ周期的に生成されるGC1,GC2,GC3,..
.簡単に言うと、これは定期的に計数するカウンタで実現される。各々のトラン
ザクションには関連するトランザクションが委託された時点でのグローバルチェ
ックポイントに対する値が割り当てられる。
は特定のログ情報がディスク・メモリ内に格納される時点であり、このログ情報
は共通グローバルチェックポイントGCを有する全てのトランザクション、およ
び委託された先行のグローバルチェックポイントに属する全てのトランザクショ
ンに関連している。
データベースの総合的なクラッシュに関連して失われたフラグメントの様な損失
領域の再生成は、最新に生成されたグローバルシステムチェックポイントGSC
の後で最新に生成されたローカルチェックポイントLCの前の領域で見出される
ローカルログ情報に基づいて再生する事により実現される。
ルに喪失された領域、例えばデータベースに属する1つまたは複数のプロセッサ
ノードがクラッシュした際に失われるフラグメントを再生する際に、この領域に
対して最新のグローバルシステムチェックポイントGCSが生成された後で最新
のローカルチェックポイントLCが生成される前のこの領域に対して見出される
ローカルログ情報に基づいてローカル領域を再生することにより使用できる。
ーに属する葉ノードで構成されているか、または数学的関数、例えばハッシュ関
数に基づく構成要素を配置して構築される構造で構成されており、ここで前記部
分はまた構成要素または前記構成要素の部分を含む。
2760−1「データベース内の構成要素を格納するための方法」、及び97
02761−9「データベースの構造」を、一次メモリ・データベースおよびデ
ィスク・メモリ・データベースの両方で使用することを可能としている。これら
の明細書はまた本明細書の一部を形成するものと考慮される。
の組み合わせは、例えば可変およびダイナミック属性を容易にかつフレキシブル
な方法で取り扱えるようにする。先に述べた組み合わせはまた固定属性をそれら
のサイズに関係なく分割出来るようにする。
これによって変更に関連して複製される必要のある部分がその対応する葉ノード
の様に等しく小さくなる。
ッダーはBツリー内のルートノードA1を構成する情報を含む。このルートノー
ドA1は中間ノードB1,B2、または直接葉ノードC1を指し示す。中間ノー
ドB1,B2は続いて更なる中間ノードB3または葉ノードC2,C3,C4,
C5,C6を指し示す。
十分大きく出来る。これは可変属性を容易に取り扱えるようにする、すなわちテ
ーブル内でオブジェクト毎にサイズが変化する属性である。葉ノードC1,C2
,C3,C4,C5,C6はまた利用可能なメモリ空間内に配置されるように十
分大きく出来る。これはフレキシブルで効果的なメモリの取り扱いを提供する。
なるダイナミック属性をカバーするレジスタD2に対するD12を指し示す。レ
ジスタD2内の異なる位置D21,D22,...,D2nは更に既存のダイナ
ミック属性D3を指し示す。特定のオブジェクトに関して属性が見つけられない
場合、ヘッダD1は対応するポインタD12を含まない。
造に分割できる。
ことはしない。読者は論文「テレコム・アプリケーションに対する並列データサ
ーバの設計並びにモデリング(Design and Modeling of a Parallel Data Serve
r for Telecom Applications)」エリクソン・ユトベクリングス・AB、ミカエ
ル・ロンシュトローム、1997年をこの情報に関して参照されたい。
、添付の特許請求の範囲に図示されている発明の概念の範囲内で修正および変更
が可能であることが理解されるであろう。
作用を図示することを意図している。
一部に対する代替構造を図式的に示す。
クトの一部に対する別の代替構造を図式的に示す。
Claims (10)
- 【請求項1】 データベース内の変更に関連してログ情報の収集を信頼性高
く提供するためのデータベースに関する方法であって、ここでファジーチェック
ポイントが整合性チェックポイントの場合に通常生じる待ち時間を削減するため
に使用され、ここで前記ファジーチェックポイントがログ情報を実時間で収集で
きるようにすることを意図して生理的ログと組み合わされており、ここで前記デ
ータベースに属するデータ情報が予め定められたデータ構造に基づいてより小さ
な部分に分割され、そしてここでそれぞれの部分が前記データベースに属する相
互に共通な、または異なるページに分散されている前記方法であって、前記ファ
ジーチェックポイントで必要とされる論理的UNDO情報が、前記部分の1つが
変更された際に前記ページの1つの更なる部分を生成することで実現され、ここ
で旧データ情報が新データ情報で置き換えられ;前記更なる部分が構造的に前記
変更された部分の複製であり;前記変更された部分と前記更なる部分が互いに好
適にリンクされており;前記変更された部分が前記新たなデータ情報を含み;前
記更なる部分が前記旧データを含む、またはその逆であることを特徴とする前記
方法。 - 【請求項2】 請求項1記載の方法であって、前記ファジーチェックポイン
トと前記生理的ログがUNDOログを含む前記生理的ログに基づいて協調し;1
つのページ上で、ローカルチェックポイントが設定された後前記ページが対応す
るディスク・メモリ内に書き込まれるまでにローカルに実行された全てが前記U
NDOログ内にセーブされるか、または前記生理的ログは生理的REDOログを
含み、前記ページを対応するディスク・メモリの中に書き込まれた後、ローカル
チェックポイントが設定されるまでに1つのページ上でローカルに実行された全
てが前記REDOログ内にセーブされることを特徴とする前記方法。 - 【請求項3】 請求項2記載の方法であって、前記更なる複製が前記変更を
引き起こしたトランザクションの完了または委託の後、またはそれに関連して削
除されることを特徴とする前記方法。 - 【請求項4】 請求項3記載の方法において、前記更なる複製が生成された
ことを開示する情報が前記生理的ログの中に格納され、前記更なる複製が削除さ
れる前記方法であって、前記変更に関する生理的ログが前記ディスク・メモリの
中に書き込まれた際に、前記更なる複製が削除されたことを開示する情報が前記
生理的ログの中に格納され;そして前記変更に対する生理的ログが前記ディスク
・メモリの中に未だ書き込まれていないときに、前記更なる複製の生成を開示す
る前記情報が前記生理的ログから削除されることを特徴とする前記方法。 - 【請求項5】 請求項4記載の方法であって、前記生理的ログが生理的UN
DOログであることを特徴とする前記方法。 - 【請求項6】 請求項1記載の方法であって、任意の更なる複製を格納する
ために特別ページが使用されることを特徴とする前記方法。 - 【請求項7】 請求項6記載の方法であって、前記特別ページが一次メモリ
に基づくページで構成されていることを特徴とする前記方法。 - 【請求項8】 請求項1記載の方法において、データベースの異なる領域、
例えばテーブルまたはフラグメントに対して異なるローカルチェックポイントが
生成され、異なるチェックポイントがデータベースの前記領域内でローカルに制
御される前記方法であって、位置と複製に依存しないログが特定の時点でグロー
バルチェックポイントを生成することで得られ;グローバルシステムチェックポ
イントが前記グローバルチェックポイントに基づいて生成され;前記データベー
スに属する1つまたは複数の処理ノードのクラッシュに関連して失われた、例え
ばフラグメントの様な領域が、最新のグローバルシステムチェックポイントが生
成された後で、最新のローカルチェックポイントが生成される前までの前記領域
に関連して存在するローカルログ情報に基づいて前記領域を再生することで再生
されることを特徴とする前記方法。 - 【請求項9】 請求項1記載の方法であって、前記データ構造がBツリーで
構成され;前記部分が前記Bツリーに属する葉ノードで構成されていることを特
徴とする前記方法。 - 【請求項10】 請求項1記載の方法であって、前記データ構造が数学的関
数、例えばハッシュ関数に基づいた構造に基づいて配置された構成要素で構成さ
れ;前記部分が前記構成要素または前記構成要素の部分で構成されていることを
特徴とする前記方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9702759A SE510050C2 (sv) | 1997-07-21 | 1997-07-21 | Metod för insamlande av logginformation vid förändring av databas |
SE9702759-3 | 1997-07-21 | ||
PCT/SE1998/001331 WO1999005585A2 (en) | 1997-07-21 | 1998-07-07 | A method relating to databases |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001511552A true JP2001511552A (ja) | 2001-08-14 |
Family
ID=20407790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000504497A Pending JP2001511552A (ja) | 1997-07-21 | 1998-07-07 | データ・ベースに関する方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US6263338B1 (ja) |
EP (1) | EP0996880B1 (ja) |
JP (1) | JP2001511552A (ja) |
KR (1) | KR100556594B1 (ja) |
CN (1) | CN1271441A (ja) |
AU (1) | AU8364998A (ja) |
BR (1) | BR9811016A (ja) |
SE (1) | SE510050C2 (ja) |
WO (1) | WO1999005585A2 (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8631066B2 (en) * | 1998-09-10 | 2014-01-14 | Vmware, Inc. | Mechanism for providing virtual machines for use by multiple users |
US7055055B1 (en) | 1999-04-23 | 2006-05-30 | Symantec Corporation | Write cache flushing method for reducing data corruption |
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 |
US6990480B1 (en) * | 2000-09-18 | 2006-01-24 | Trancept Limited | Information manager method and system |
US6961740B2 (en) | 2001-08-01 | 2005-11-01 | Valaran Corporation | Method and system for multimode garbage collection |
KR100744378B1 (ko) * | 2001-08-17 | 2007-07-30 | 삼성전자주식회사 | 해시함수를 이용한 데이터베이스 검색방법 |
US6983286B1 (en) | 2002-05-10 | 2006-01-03 | Oracle International Corporation | Method and apparatus for accessing data as it existed at a previous point in time |
US6988165B2 (en) * | 2002-05-20 | 2006-01-17 | Pervasive Software, Inc. | System and method for intelligent write management of disk pages in cache checkpoint operations |
US7043505B1 (en) | 2003-01-28 | 2006-05-09 | Unisys Corporation | Method variation for collecting stability data from proprietary systems |
US20040193952A1 (en) * | 2003-03-27 | 2004-09-30 | Charumathy Narayanan | Consistency unit replication in application-defined systems |
US20040199552A1 (en) * | 2003-04-01 | 2004-10-07 | Microsoft Corporation | Transactionally consistent change tracking for databases |
US7395278B2 (en) * | 2003-06-30 | 2008-07-01 | Microsoft Corporation | Transaction consistent copy-on-write database |
US7552149B2 (en) * | 2003-09-06 | 2009-06-23 | Oracle International Corporation | Querying past versions of data in a distributed database |
US7240065B2 (en) * | 2004-05-27 | 2007-07-03 | Oracle International Corporation | Providing mappings between logical time values and real time values |
US7251660B2 (en) | 2004-06-10 | 2007-07-31 | Oracle International Corporation | Providing mappings between logical time values and real time values in a multinode system |
US7949665B1 (en) | 2004-11-19 | 2011-05-24 | Symantec Corporation | Rapidly traversing disc volumes during file content examination |
KR100678926B1 (ko) * | 2006-01-05 | 2007-02-06 | 삼성전자주식회사 | 로그 정보 관리 시스템 및 방법 |
US7840382B2 (en) * | 2006-10-12 | 2010-11-23 | Qualcomm Incorporated | Methods and apparatus for network re-creation in controlled environments |
KR101524015B1 (ko) * | 2007-01-11 | 2015-05-29 | 코닌클리케 필립스 엔.브이. | 실행취소/재실행 메커니즘을 제공하는 방법 및 장치 |
US7814117B2 (en) * | 2007-04-05 | 2010-10-12 | Oracle International Corporation | Accessing data from asynchronously maintained index |
US8776018B2 (en) * | 2008-01-11 | 2014-07-08 | International Business Machines Corporation | System and method for restartable provisioning of software components |
CN101588269B (zh) * | 2009-06-17 | 2011-10-26 | 中兴通讯股份有限公司 | 一种设备配置数据自动上载到网管的方法和系统 |
CN102385631A (zh) * | 2011-11-23 | 2012-03-21 | 国网信息通信有限公司 | 建立新旧文献代替关系的方法及装置 |
CN103262042B (zh) * | 2011-12-19 | 2016-03-30 | 华为技术有限公司 | 一种分布式存储数据恢复方法、装置及系统 |
GB2515501A (en) * | 2013-06-25 | 2014-12-31 | Ibm | Replication for on-line hot-standby database |
US10198321B1 (en) * | 2014-04-01 | 2019-02-05 | Storone Ltd. | System and method for continuous data protection |
WO2017188484A1 (ko) * | 2016-04-29 | 2017-11-02 | 주식회사 울프슨랩 | 메모리 관리 방법, 이를 위한 컴퓨터 프로그램, 그 기록매체 |
US10467196B2 (en) * | 2016-09-30 | 2019-11-05 | Napatech A/S | Prevention of disc fragmentation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2718031B2 (ja) * | 1987-07-17 | 1998-02-25 | 株式会社日立製作所 | 履歴情報取得方法 |
US5481694A (en) * | 1991-09-26 | 1996-01-02 | Hewlett-Packard Company | High performance multiple-unit electronic data storage system with checkpoint logs for rapid failure recovery |
US5721918A (en) * | 1996-02-06 | 1998-02-24 | Telefonaktiebolaget Lm Ericsson | Method and system for fast recovery of a primary store database using selective recovery by data type |
KR19980024086A (ko) * | 1996-09-03 | 1998-07-06 | 니시무로 타이조 | 컴퓨터 시스템 및 화일 관리 방법 |
US5864849A (en) * | 1996-12-16 | 1999-01-26 | Lucent Technologies Inc. | System and method for restoring a multiple checkpointed database in view of loss of volatile memory |
US5933593A (en) * | 1997-01-22 | 1999-08-03 | Oracle Corporation | Method for writing modified data from a main memory of a computer back to a database |
-
1997
- 1997-07-21 SE SE9702759A patent/SE510050C2/sv unknown
-
1998
- 1998-07-07 KR KR1020007000633A patent/KR100556594B1/ko not_active IP Right Cessation
- 1998-07-07 BR BR9811016-0A patent/BR9811016A/pt not_active IP Right Cessation
- 1998-07-07 WO PCT/SE1998/001331 patent/WO1999005585A2/en active IP Right Grant
- 1998-07-07 JP JP2000504497A patent/JP2001511552A/ja active Pending
- 1998-07-07 AU AU83649/98A patent/AU8364998A/en not_active Abandoned
- 1998-07-07 CN CN98809343A patent/CN1271441A/zh active Pending
- 1998-07-07 EP EP98934045A patent/EP0996880B1/en not_active Expired - Lifetime
- 1998-07-15 US US09/115,674 patent/US6263338B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
SE9702759L (sv) | 1999-01-22 |
CN1271441A (zh) | 2000-10-25 |
US6263338B1 (en) | 2001-07-17 |
KR100556594B1 (ko) | 2006-03-06 |
WO1999005585A3 (en) | 1999-04-15 |
BR9811016A (pt) | 2002-05-21 |
WO1999005585A2 (en) | 1999-02-04 |
EP0996880B1 (en) | 2011-10-19 |
KR20010022064A (ko) | 2001-03-15 |
EP0996880A1 (en) | 2000-05-03 |
SE9702759D0 (sv) | 1997-07-21 |
AU8364998A (en) | 1999-02-16 |
SE510050C2 (sv) | 1999-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001511552A (ja) | データ・ベースに関する方法 | |
US7933927B2 (en) | Method and apparatus for building index of source data | |
JP4219589B2 (ja) | トランザクショナルファイルシステム | |
Herlihy | Dynamic quorum adjustment for partitioned data | |
JP3593366B2 (ja) | デ−タベ−ス管理方法 | |
EP2590086B1 (en) | Columnar database using virtual file data objects | |
US7885921B2 (en) | Managing atomic updates on metadata tracks in a storage system | |
US20180260409A1 (en) | Methods, devices and systems for maintaining consistency of metadata and data across data centers | |
US7587429B2 (en) | Method for checkpointing a main-memory database | |
EP2983093A1 (en) | Apparatus and method for a hardware-based file system | |
US20100138394A1 (en) | Multiple concurrent active file systems | |
CN109891402A (zh) | 可撤销和在线模式转换 | |
KR20040053142A (ko) | 대형 파일들의 효율적 관리 | |
JPH04337850A (ja) | データベース・トランザクション及び照会処理システム | |
US10235368B2 (en) | System and method for updating external file referenced by database with transactional consistency using SQL | |
US7174353B2 (en) | Method and system for preserving an original table schema | |
US7194486B2 (en) | Method and system for data processing with data replication for the same | |
US8452730B2 (en) | Archiving method and system | |
JP2003162438A (ja) | データベース管理システム | |
JP4306023B2 (ja) | トランザクション処理向けストレージ方法および装置、トランザクショナルストレージ | |
Rastogi et al. | Distributed multi-level recovery in main-memory databases | |
Sears et al. | Segment-based recovery: write-ahead logging revisited | |
Choi et al. | Two-step backup mechanism for real-time main memory database recovery | |
JP3709510B2 (ja) | リレーショナルデータベース管理方法およびリレーショナルデータベースシステム | |
Norvag et al. | Write optimized object-oriented database systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20040128 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050518 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080805 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081105 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081112 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081126 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090106 |