JP4301937B2 - 分散データベース環境での一貫した読取 - Google Patents
分散データベース環境での一貫した読取 Download PDFInfo
- Publication number
- JP4301937B2 JP4301937B2 JP2003502743A JP2003502743A JP4301937B2 JP 4301937 B2 JP4301937 B2 JP 4301937B2 JP 2003502743 A JP2003502743 A JP 2003502743A JP 2003502743 A JP2003502743 A JP 2003502743A JP 4301937 B2 JP4301937 B2 JP 4301937B2
- Authority
- JP
- Japan
- Prior art keywords
- data item
- clone
- version
- time
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99954—Version management
Description
この出願は、アミット・ガネッシュ(Amit Ganesh)およびロジャー・J・バムフォード(Roger J. Bamford)によって2001年6月1日に出願された「分散データベース環境での一貫した読取(Consistent Read in a Distributed Database Environment)」と題される米国仮特許出願連続番号第60/295,104号(代理人処理番号50277−1621)に関連し、かつこの仮出願から国内優先権を主張し、その内容全体を、ここに十分に記載されるかのように引用により援用する。
この発明は、分散データベース環境で、記憶されたデータにアクセスすることに関し、特に、データ項目を要求するトランザクションにデータ項目のどのバージョンを供給すべきかを判定するための方法および装置に関する。
典型的なデータベースシステムでは、ユーザは、コマンドまたはステートメントをデータベースアプリケーションにサブミットすることによって、情報を更新、検索および選択する。正しく処理されるためには、ステートメントはデータベースアプリケーションによってサポートされるデータベース言語に準拠していなければならない。広く使用されている1つのデータベース言語はStructured Query Language(SQL)として知られている。
結果として、トランザクションは、同時に実行しているトランザクションがコミットするまで、それらトランザクションによって行われた変更を見ることができてはならない。
ない変更が多数あり得るため、ロールバック動作が大量の時間および資源を消費することにつながる。さらに、常に現行バージョンから変更をロールバックすることは、単一ノードシステムでしかうまく作用しない。なぜなら、多重ノードシステムでは、現行バージョンがノードからノードへとクラスタ内で移動しているときにデータ項目の現行バージョンを追跡する状況で、データ項目に対する要求がとらえられ得るためである。
この発明の一局面によると、照会を満足させるのにどのデータ項目のバージョンを使用可能であるかを判定するための技術が提供される。ここに説明される技術は、代替の技術の性能を大きく犠牲にすることなく、クラスタ環境内で使用することができる。さらに、照会の要求を満足させるために必要とする作業量が最も少ないバージョンを判定するための技術が提供される。一実施例によると、この技術は、
1) 第1の新しいフィールドを各クローンに関連付けるステップを伴い、第1の新しいフィールドはデータ項目バージョンが現行であった時間を示し、この技術はさらに、
2) 第2の新しいフィールドを各照会に関連付けるステップを伴い、第2の新しいフィールドは照会が見なければならないトランザクションによって行われた最後の変更を示し、この技術はさらに、
3) クローンの第1の新しいフィールドの値、および照会の第2の新しいフィールドの値を使用して、クローンを照会に供給してもよいかを判定するステップを伴う。
データベースからデータ項目バージョンを供給して照会に答えるための方法およびシステムを説明する。以下の説明では、説明のため、多数の具体的な詳細を示してこの発明を完全に理解できるようにしている。しかしながら、当業者には、これら具体的な詳細なしにこの発明を実現できることが明らかであろう。場合によっては、周知の構造および装置をブロック図の形で示して、不必要にこの発明をわかりにくくするのを避けた。
データベースの一貫したスナップショットを見なければならない照会のために、クラスタ内の複数のノードのうちの1つにあるデータ項目のバージョンを探すための技術が提供される。上述のように、そのような照会は、(1)コミットされたトランザクションの特定のセットによってデータベースにコミットされた変更、および(2)照会が属するトランザクションの以前のステートメントによって行われた変更のみを見なければならない。
グローバルシステム時間は、データベースシステムによって維持されるカウンタである。通常、このカウンタは時とともに増加する。データベースイベントのシーケンスを追跡するため、イベントは、グローバルシステム時間によって示される時間にデータベースシステムで起こったとして印を付けられる。たとえば、グローバルシステム時間10で起こるイベントは、グローバルシステム時間11で起こる何らかの他のイベントより前に起こったと見なされる。詳しく後述するように、グローバルシステム時間は、クローンのクロ
ーン時間、および照会の見るべき最後のタイプスタンプの両方に使用されるタイムスタンプを作成するために使用される。
上述のように、除去されたデータの情報は各クローンとともに記憶されて、そのクローンから除去された変更がある場合は、その変更を示す。しかしながら、除去されたデータの情報は、クローンの作成後に現行バージョンに行われた変更がそのクローンから欠落しているかどうかは示さない。この後者の種類の変更の欠落の追跡を容易にするため、「クローン時間」が各クローンとともに記憶される。
一実施例によると、各クローンにクローン時間を割当てるのに加え、データベースの一貫した表示を見なければならない各照会に、見るべき最後のタイムスタンプが割当てられる。一実施例によると、トランザクションの一部である照会に割当てられる、見るべき最
後のタイムスタンプは、トランザクションが、照会が見なくてはならない最も最近の変更を行なったグローバルシステム時間の値である。
通常、クローンの除去されたデータの情報は、変更がそのクローンに反映されている最も最近のトランザクションのコミット時間を示す。説明のため、以降は、この値を最も最近の取込時間と称する。
上述のように、照会が見る必要がある変更、つまり、1)データ項目バージョンからロールアウトされた変更、および2)データ項目の現行バージョンからそのデータ項目バージョンがクローンされた後にデータ項目の現行バージョンに行われた変更が、データ項目バージョンから欠落するのには2つの過程がある。データ項目バージョンからロールアウトされた変更を「除去されたデータ」と称し、このデータを追跡するのに必要な情報を「
除去されたデータの情報」と称する。
これは、データ項目バージョンから変更が除去されていない最も最近のトランザクションのコミット時間である。データ項目の現行バージョンでは、最も最近の取込時間は常に無限大である。あるデータ項目バージョンから変更がロールアウトされるとき、そのデータ項目バージョンの最も最近の取込時間は、最も最近のトランザクションのコミット時間を反映するために更新され、そのデータ項目バージョンから変更が除去されなかったデータ項目バージョンを変更する。たとえば、トランザクションTXA、TXBおよびTXCが、ある特定のデータ項目バージョンに対し、時間5、10、15でそれぞれ変更をコミットし、次に、TXCからの変更がロールアウトされると、最も最近の取込時間は10にセットされる。TXBからの変更がロールアウトされると、最も最近の取込時間は5にセットされる。
これは、データ項目バージョンから変更が欠落している最後のトランザクションの識別子である。言換えれば、最新の欠落しているトランザクションは、データ項目バージョンから最後に変更がロールアウトされたトランザクションのトランザクション識別である。
これは、最新の欠落しているトランザクションによって行われた最も最近の欠落している変更のシーケンス番号である。たとえば、最新の欠落しているトランザクションが、ある特定のデータ項目に4つの変更を行ない、その4つの変更がシーケンス番号11、25、32および50に関連付けられるとする。そのデータ項目バージョンから変更がロールアウトされない場合、最も最近の欠落している変更のシーケンス番号はゼロにセットされる。変更のすべてが除去された場合、最も最近の欠落している変更のシーケンス番号は11にセットされる。
これは、最新の欠落しているトランザクション以外のトランザクションによって行われた変更がこのデータ項目バージョンからロールアウトされた場合にセットされるビットである。
照会はすべてコンテクストを有し、これは実行環境を記述する。一実施例によると、照会に関連付けられるコンテクスト情報は、次のものを含む。
これは、照会が見なければならないデータベースのスナップショットに関連付けられる時間を示す。たとえば、照会が見なければならない時間を示すスナップショットが10である場合、その照会はT=10の時点かまたはそれ以前にデータベースにコミットされたすべての変更を見なければならず、T=10の後にデータベースにコミットされた変更は見ることはできない。照会が見なければならない時間を示すスナップショットは、通常、照会が開始されたときにセットされ、システムグローバル時間の現在の値にセットされる。
照会がトランザクションの一部である場合、照会が属するトランザクションは、そのトランザクションを識別する。照会がトランザクションの一部でない場合、照会が属するトランザクションは使用されない。
これは、照会が属するトランザクションによって行われ、照会が見なければならない最上位の変更のシーケンス番号である。
クローン時間および見るべき最後のタイムスタンプは、照会に供給するデータ項目バージョンを効率よく識別するため、上述の除去されたデータの情報および照会のコンテクスト情報を維持するシステムで使用することができる。
2.見るべき最後のタイムスタンプ<=クローン時間&&
3.(照会が属するトランザクションは照会に対してトランザクションを示さない||
クローンに対する最新の欠落しているトランザクションはない||
照会が属するトランザクション<>最新の欠落しているトランザクション)よって、
データ項目バージョンを使用することができる。
一実施例によると、分散ロックマネージャ(以降はDLMと称する)が、どのノードが最小の作業量で照会の要求を満足させるデータ項目バージョンを有する最良の候補であるかを判定できるように情報のベクトルが設けられる。ベクトルは特定のデータ項目に関連付けられ、その特定のデータ項目のデータ項目バージョンについての情報を含む。具体的には、ベクトルはクラスタ内のすべてのノードに対してノード識別子のリストを含み、各ノードで、その特定のデータ項目に対するすべてのデータ項目バージョンについて、クローン時間をこれらノード識別子に関連付ける。
時間はベクトル300に反映され、ノード1 310に関連付けられる。具体的には、クローン時間−ノード−ベクトルの関連付け311は、クローン時間1を含み、クローン時間−ノード−ベクトルの関連付け312はクローン時間3を含み、クローン時間−ノード−ベクトルの関連付け313は、クローン時間11を含む。
320に関連付けられる。クローン時間−ノード−ベクトルの関連付け314はクローン時間15を含む。
照会が見なければならないものをすべて含むデータ項目バージョンは、その照会に供給するための候補である。どの候補でも機能するものの、一般に、最良の候補を選ぶことが好ましい。一般に、第1の候補を照会に供給するのに必要とされるオーバーヘッドが、第2の候補を供給するのに必要とされるものより小さい場合、第1の候補は第2の候補よりも優れている。オーバーヘッドの1つの構成要素は、照会が見ることのできない変更をロールアウトすることを伴う。一般に、ロールアウトする必要のある変更が少ないほど、その候補は優れている。図4は、データベースシステム400を示し、これは3つのノード(ノード1 310、ノード2 320、ノード3 330)および分散ロックマネージャ(たとえばDLM)440を有する。各ノードは、DLMに関連付けられたローカルロックマネージャ(以降はLLMと称する)およびキャッシュを有する。
この発明は、上述の例以外にも多くの用途がある。たとえば、ここで説明した技術は、システムのセッションについてデータを維持する状況で用いることができる。また、この技術は、分散したキャッシュを保持し、分散したキャッシュを含むさまざまなキャッシュ内のデータを同期させる必要のある多重ノードシステムでも使用可能である。
図5は、この発明の実施例を実現可能なコンピュータシステム500を示すブロック図である。コンピュータシステム500は、情報を通信するためのバス502またはその他の通信機構、および情報を処理するためのバス502に結合されたプロセッサ503を含む。コンピュータシステム500は、バス500に結合された、ランダムアクセスメモリ(RAM)またはその他の動的記憶装置などのメインメモリ506を含み、プロセッサ503によって実行される情報および命令を記憶する。メインメモリ506も、プロセッサ503によって実行される命令の実行中に一時的な変数またはその他の中間情報を記憶するために使用してもよい。コンピュータシステム500は、バス500に結合された、リードオンリメモリ(ROM)508またはその他の静的記憶装置をさらに含み、プロセッサ503のために静的情報および命令を記憶する。磁気ディスクまたは光ディスクなどの記憶装置510も設けられ、バス502に結合されて情報および命令を記憶する。
発性媒体は、メインメモリ506などの動的メモリを含む。伝送媒体は、バス502を含むワイヤを含め、同軸ケーブル、銅線および光ファイバを含む。伝送媒体は、無線通信中または赤外線データ通信中に生成されるような音波または光波の形も取り得る。
明によると、そのような1つのダウンロードされたアプリケーションによって、トランザクションに与えるべきデータ項目の特定のバージョンを選択することが可能になる。
ここに説明される技術は、以下のステップによって、照会に供給することのできるデータ項目バージョンを判定し、照会を満足させるのに必要とする作業量が最少であるデータ項目を判定することができる。
3) 過度なロールアウトを行なうこと。
Claims (7)
- 少なくとも1つのノードから構成されるデータベースシステムによって実現される方法であって、各ノードはプロセッサおよび記憶装置を含み、前記データベースシステムは、データ項目に行なわれたすべての変更を反映したデータ項目の現行バージョンを含む、前記データ項目の複数のバージョンを前記記憶装置に格納しており、前記方法は、前記トランザクションで実行している照会に応答するために前記データ項目のいずれのバージョンを使用すべきかを判断するものであり、前記方法はコンピュータで実行される以下のステップを含み、前記以下のステップは、
前記照会に関連付けられた、見るべき最後のタイムスタンプを維持するステップを含み、前記見るべき最後のタイムスタンプは、前記照会によって前記記憶装置において見られなければならない前記トランザクション内で行なわれた最後の変更の時間を示し、さらに
複数のデータ項目バージョンのうち各データ項目バージョンに対して、各データ項目バージョンが現行であった時刻を示すクローン時間を維持するステップと、
前記複数のデータ項目バージョンのうち特定のデータ項目バージョンの前記クローン時間と、前記照会の前記見るべき最後のタイムスタンプとを比較して、当該特定のデータ項目バージョンの前記クローン時間が、前記見るべき最後のタイムスタンプと同じ、もしくは前記見るべき最後のタイムスタンプより後であるかを判断するステップと、
前記特定のデータ項目バージョンの前記クローン時間が、前記見るべき最後のタイムスタンプと同じ、もしくは前記見るべき最後のタイムスタンプより後であるとの判断に応答して、当該特定のデータ項目が前記照会に供給され得る候補のデータ項目バージョンであると決定するステップとを含む、方法。 - 前記データ項目バージョンが現行バージョンからクローンされるときに、グローバルクロックに基づいて前記クローン時間をセットするステップをさらに含む、請求項1に記載の方法。
- 前記データ項目バージョンが非現行データ項目バージョンからクローンされるときに、前記非現行データ項目バージョンのクローン時間に基づいて前記クローン時間をセットするステップをさらに含む、請求項1に記載の方法。
- 前記データベースシステムは、分散ロックマネージャおよび複数のノードをから構成されており、
前記複数のノードは、前記データ項目についての複数のデータ項目バージョンのサブセットを格納しており、
前記方法は、
前記複数のノードの各ノードが前記データ項目についてのクローン時間情報を独立に維持するステップと、
前記分散マネージャが、前記クローン時間情報に基づいて、前記データ項目に対する要求を前記複数のノードのうちいずれのノードに送るべきかを選択するステップとをさらに含む、請求項1に記載の方法。 - クローン時間情報を維持する前記ステップは、前記データ項目に対して、ノードをクローン時間に関連付けるベクトルを維持するステップを含み、前記ベクトル内のある所与のノードに関連付けられる前記クローン時間は、所与のノードにあるデータ項目バージョンに関連付けられるクローン時間である、請求項4に記載の方法。
- 前記判断するステップは、
除去されたデータの情報に基づいて、見られなければならない情報が前記データ項目バージョンから除去されたかを判定するステップと、
前記クローン時間に基づいて、データ項目バージョンの作成後に、見られなくてはならない情報がデータ項目の現行バージョンに合わせて作成された可能性があるかを判定するステップとを含む、請求項1に記載の方法。 - 請求項1から6のいずれかに記載の方法を、1つまたは複数のプロセッサに実行させるためのプログラムを格納した、コンピュータ読取可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29510401P | 2001-06-01 | 2001-06-01 | |
US10/119,672 US7334004B2 (en) | 2001-06-01 | 2002-04-09 | Consistent read in a distributed database environment |
PCT/US2002/016886 WO2002099701A2 (en) | 2001-06-01 | 2002-05-29 | Consistent read in a distributed database environment |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2005503606A JP2005503606A (ja) | 2005-02-03 |
JP2005503606A5 JP2005503606A5 (ja) | 2006-01-05 |
JP4301937B2 true JP4301937B2 (ja) | 2009-07-22 |
Family
ID=26817568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003502743A Expired - Lifetime JP4301937B2 (ja) | 2001-06-01 | 2002-05-29 | 分散データベース環境での一貫した読取 |
Country Status (10)
Country | Link |
---|---|
US (1) | US7334004B2 (ja) |
EP (1) | EP1402414B1 (ja) |
JP (1) | JP4301937B2 (ja) |
CN (1) | CN1270261C (ja) |
AT (1) | ATE364872T1 (ja) |
AU (1) | AU2002303900B2 (ja) |
CA (1) | CA2447692C (ja) |
DE (1) | DE60220676T2 (ja) |
HK (1) | HK1059491A1 (ja) |
WO (1) | WO2002099701A2 (ja) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7117491B2 (en) * | 2002-08-29 | 2006-10-03 | International Business Machines Corporation | Method, system, and program for determining whether data has been modified |
US8015161B2 (en) | 2003-09-06 | 2011-09-06 | Oracle International Corporation | Method and mechanism for determining life intervals for a key in an index |
US7480662B2 (en) * | 2003-07-03 | 2009-01-20 | Oracle International Corporation | Fact table storage in a decision support system environment |
US20050108300A1 (en) * | 2003-11-17 | 2005-05-19 | Terrascale Technologies Inc. | Method for the management of local client cache buffers in a clustered computer environment |
US7324995B2 (en) * | 2003-11-17 | 2008-01-29 | Rackable Systems Inc. | Method for retrieving and modifying data elements on a shared medium |
US7281023B2 (en) * | 2003-12-15 | 2007-10-09 | At&T Knowledge Ventures, L.P. | Architecture of database application with robust online recoverability |
CN100388679C (zh) * | 2004-11-30 | 2008-05-14 | 中兴通讯股份有限公司 | 网管系统中查询历史数据的方法 |
CN1904879B (zh) * | 2005-07-27 | 2011-01-12 | 国际商业机器公司 | 电子表格系统及获取电子表格文档的快照/历史信息的方法 |
US7418544B2 (en) * | 2005-10-05 | 2008-08-26 | Oracle International Corporation | Method and system for log structured relational database objects |
US9009116B2 (en) * | 2006-03-28 | 2015-04-14 | Oracle America, Inc. | Systems and methods for synchronizing data in a cache and database |
US20080209260A1 (en) * | 2007-02-27 | 2008-08-28 | Venkateswara Rao Vykunta | Apparatus and method for synchronizing embedded databases of applications in a failover cluster |
US7739547B2 (en) * | 2007-06-07 | 2010-06-15 | International Business Machines Corporation | Failure recovery and error correction techniques for data loading in information warehouses |
US7886124B2 (en) | 2007-07-30 | 2011-02-08 | Oracle International Corporation | Method and mechanism for implementing dynamic space management for large objects |
US8776018B2 (en) * | 2008-01-11 | 2014-07-08 | International Business Machines Corporation | System and method for restartable provisioning of software components |
US7996360B2 (en) * | 2008-06-27 | 2011-08-09 | International Business Machines Corporation | Coordinating updates to replicated data |
US7991775B2 (en) * | 2008-08-08 | 2011-08-02 | Oracle International Corporation | Global checkpoint SCN |
US8756195B2 (en) | 2009-08-27 | 2014-06-17 | The Boeing Company | Universal delta set management |
US8356007B2 (en) * | 2010-10-20 | 2013-01-15 | Microsoft Corporation | Distributed transaction management for database systems with multiversioning |
US8838919B2 (en) | 2010-08-30 | 2014-09-16 | Oracle International Corporation | Controlling data lag in a replicated computer system |
CN102314505B (zh) * | 2011-09-07 | 2016-04-13 | 北京人大金仓信息技术股份有限公司 | 基于偏序关系的缓冲区版本产生方法 |
JP5772458B2 (ja) * | 2011-09-29 | 2015-09-02 | 富士通株式会社 | データ管理プログラム、ノード、および分散データベースシステム |
CN102646127A (zh) * | 2012-02-29 | 2012-08-22 | 浪潮(北京)电子信息产业有限公司 | 分布式文件系统副本选择方法和装置 |
US9774676B2 (en) | 2012-05-21 | 2017-09-26 | Google Inc. | Storing and moving data in a distributed storage system |
US9659038B2 (en) * | 2012-06-04 | 2017-05-23 | Google Inc. | Efficient snapshot read of a database in a distributed storage system |
US9230000B1 (en) | 2012-06-04 | 2016-01-05 | Google Inc. | Pipelining Paxos state machines |
US9449006B2 (en) | 2012-06-04 | 2016-09-20 | Google Inc. | Method and system for deleting obsolete files from a file system |
EP2856356A2 (en) * | 2012-06-04 | 2015-04-08 | Google, Inc. | Systems and methods of increasing database access concurrency using granular timestamps |
US9195611B2 (en) | 2012-06-04 | 2015-11-24 | Google Inc. | Efficiently updating and deleting data in a data storage system |
US9298576B2 (en) | 2012-06-04 | 2016-03-29 | Google Inc. | Collecting processor usage statistics |
WO2013184712A2 (en) | 2012-06-04 | 2013-12-12 | Google Inc. | Systems and methods of increasing database access concurrency using granular timestamps |
CN102855271B (zh) * | 2012-07-05 | 2016-09-21 | 中国电力科学研究院 | 一种多版本电网模型的存储与可追溯管理方法 |
US9767178B2 (en) | 2013-10-30 | 2017-09-19 | Oracle International Corporation | Multi-instance redo apply |
US10795881B2 (en) * | 2015-12-18 | 2020-10-06 | Sap Se | Table replication in a database environment |
US10572510B2 (en) | 2015-12-21 | 2020-02-25 | Sap Se | Distributed database transaction protocol |
JP6924898B2 (ja) * | 2017-06-05 | 2021-08-25 | 華為技術有限公司Huawei Technologies Co.,Ltd. | トランザクション処理方法、装置及びデバイス |
US10977227B2 (en) | 2017-06-06 | 2021-04-13 | Sap Se | Dynamic snapshot isolation protocol selection |
US11940990B1 (en) * | 2017-06-16 | 2024-03-26 | Amazon Technologies, Inc. | Global clock values for consistent queries to replicated data |
CN110413565A (zh) * | 2019-06-28 | 2019-11-05 | 苏州浪潮智能科技有限公司 | 一种多台存储设备同步快照的方法、设备及介质 |
US11880385B1 (en) | 2020-09-29 | 2024-01-23 | Amazon Technologies, Inc. | Ordering updates to secondary indexes using conditional operations |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3516344B2 (ja) * | 1990-10-22 | 2004-04-05 | 株式会社日立製作所 | 分散処理システムの多重データ処理方法 |
US5287496A (en) | 1991-02-25 | 1994-02-15 | International Business Machines Corporation | Dynamic, finite versioning for concurrent transaction and query processing |
US5454102A (en) * | 1993-01-19 | 1995-09-26 | Canon Information Systems, Inc. | Method and apparatus for transferring structured data using a self-generating node network |
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 |
US5574906A (en) * | 1994-10-24 | 1996-11-12 | International Business Machines Corporation | System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing |
CA2227432C (en) * | 1995-07-20 | 2001-05-22 | Novell, Inc. | Transaction synchronization in a disconnectable computer and network |
US5870758A (en) * | 1996-03-11 | 1999-02-09 | Oracle Corporation | Method and apparatus for providing isolation levels in a database system |
US5806076A (en) * | 1996-10-29 | 1998-09-08 | Oracle Corporation | Tracking dependencies between transactions in a database |
US5956731A (en) * | 1997-04-23 | 1999-09-21 | Oracle Corporation | Sharing snapshots for consistent reads |
US6014669A (en) * | 1997-10-01 | 2000-01-11 | Sun Microsystems, Inc. | Highly-available distributed cluster configuration database |
US5924096A (en) * | 1997-10-15 | 1999-07-13 | Novell, Inc. | Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand |
US6192377B1 (en) * | 1998-05-13 | 2001-02-20 | Oracle Corporation | Method and apparatus for determing whether a transaction can use a version of a data item |
US6353835B1 (en) * | 1998-08-03 | 2002-03-05 | Lucent Technologies Inc. | Technique for effectively maintaining materialized views in a data warehouse |
US6393485B1 (en) * | 1998-10-27 | 2002-05-21 | International Business Machines Corporation | Method and apparatus for managing clustered computer systems |
US6516327B1 (en) * | 1998-12-24 | 2003-02-04 | International Business Machines Corporation | System and method for synchronizing data in multiple databases |
US6839751B1 (en) * | 1999-06-30 | 2005-01-04 | Hi/Fn, Inc. | Re-using information from data transactions for maintaining statistics in network monitoring |
US6401104B1 (en) * | 1999-07-03 | 2002-06-04 | Starfish Software, Inc. | System and methods for synchronizing datasets using cooperation among multiple synchronization engines |
US7024656B1 (en) * | 1999-11-29 | 2006-04-04 | Oracle International Corporation | Persistent agents |
US20020165724A1 (en) * | 2001-02-07 | 2002-11-07 | Blankesteijn Bartus C. | Method and system for propagating data changes through data objects |
US6574717B1 (en) * | 2001-05-31 | 2003-06-03 | Oracle Corporation | Techniques for time-based retention of a reusable resource |
-
2002
- 2002-04-09 US US10/119,672 patent/US7334004B2/en not_active Expired - Lifetime
- 2002-05-29 CN CNB028107616A patent/CN1270261C/zh not_active Expired - Lifetime
- 2002-05-29 JP JP2003502743A patent/JP4301937B2/ja not_active Expired - Lifetime
- 2002-05-29 EP EP02731965A patent/EP1402414B1/en not_active Expired - Lifetime
- 2002-05-29 AU AU2002303900A patent/AU2002303900B2/en not_active Expired
- 2002-05-29 CA CA2447692A patent/CA2447692C/en not_active Expired - Lifetime
- 2002-05-29 AT AT02731965T patent/ATE364872T1/de not_active IP Right Cessation
- 2002-05-29 DE DE60220676T patent/DE60220676T2/de not_active Expired - Lifetime
- 2002-05-29 WO PCT/US2002/016886 patent/WO2002099701A2/en active IP Right Grant
-
2004
- 2004-04-01 HK HK04102389A patent/HK1059491A1/xx not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
CN1270261C (zh) | 2006-08-16 |
CN1524239A (zh) | 2004-08-25 |
CA2447692A1 (en) | 2002-12-12 |
US7334004B2 (en) | 2008-02-19 |
WO2002099701A3 (en) | 2004-01-22 |
EP1402414B1 (en) | 2007-06-13 |
AU2002303900B2 (en) | 2008-03-06 |
CA2447692C (en) | 2011-08-02 |
DE60220676D1 (de) | 2007-07-26 |
EP1402414A2 (en) | 2004-03-31 |
DE60220676T2 (de) | 2008-03-06 |
WO2002099701A2 (en) | 2002-12-12 |
JP2005503606A (ja) | 2005-02-03 |
HK1059491A1 (en) | 2004-07-02 |
US20020194206A1 (en) | 2002-12-19 |
ATE364872T1 (de) | 2007-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4301937B2 (ja) | 分散データベース環境での一貫した読取 | |
AU2002303900A1 (en) | Consistent read in a distributed database environment | |
JP4340226B2 (ja) | データ項目の使用可能バージョンの提供 | |
CN111143389B (zh) | 事务执行方法、装置、计算机设备及存储介质 | |
CN109739935B (zh) | 数据读取方法、装置、电子设备以及存储介质 | |
US6012059A (en) | Method and apparatus for replicated transaction consistency | |
US6058389A (en) | Apparatus and method for message queuing in a database system | |
US6738971B2 (en) | Using a resource manager to coordinate the comitting of a distributed transaction | |
US6078930A (en) | Multi-node fault-tolerant timestamp generation | |
US7237147B2 (en) | Method and apparatus for making available data that was locked by a dead transaction before rolling back the entire dead transaction | |
US6353833B1 (en) | Caching of distributed dynamic SQL statements in a multiple node RDBMS | |
US6237001B1 (en) | Managing access to data in a distributed database environment | |
US6058401A (en) | Method for data replication with conflict detection | |
US20080098041A1 (en) | Server supporting a consistent client-side cache | |
US20120254249A1 (en) | Database Management System | |
CN115712670A (zh) | 一种数据源管理系统 | |
JP4126843B2 (ja) | データ管理方法および装置並びにデータ管理プログラムを格納した記録媒体 | |
CN102193987B (zh) | 基于oltp的增加节点数据关系的方法及系统 | |
CN102193989B (zh) | 基于图形数据库的联机事务处理系统及数据插入方法 | |
EP1788496A2 (en) | Consistent read in a distributed database environment | |
CA2249059C (en) | Caching of distributed dynamic sql statements in a multiple node rdbms | |
Lam et al. | Mobile distributed real-time database systems | |
Goyal et al. | Extending Speculation-Based Protocols for Processing Read-Only Transactions in Distributed Database Systems | |
Zaslavsky et al. | Primary copy method and its modifications for database replication in distributed mobile computing environment | |
KR20030068779A (ko) | 데이터베이스 시스템에서 다중 쓰레드로 동작하는클라이언트 라이브러리 동작방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050519 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050519 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080819 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090302 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090407 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090421 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4301937 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130501 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |