JP2020529673A - 分散ストアによる高可用性データベース - Google Patents
分散ストアによる高可用性データベース Download PDFInfo
- Publication number
- JP2020529673A JP2020529673A JP2020505357A JP2020505357A JP2020529673A JP 2020529673 A JP2020529673 A JP 2020529673A JP 2020505357 A JP2020505357 A JP 2020505357A JP 2020505357 A JP2020505357 A JP 2020505357A JP 2020529673 A JP2020529673 A JP 2020529673A
- Authority
- JP
- Japan
- Prior art keywords
- node
- distributed storage
- database
- transaction
- nodes
- 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
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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- 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
-
- 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/2365—Ensuring data consistency and integrity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
データベースノードにまたがってデータコヒーレンシーを維持するために、1つのアプローチは、ノードがデータベースにトランザクションをコミットするときに、他のノードに直接通知させることである。このようなアプローチでは、コミットされたトランザクションの通知は、同期的又は非同期的に伝達され得る。同期アプローチでは、所与のノードは、他のノードに各トランザクションが実行されていることを通知し、トランザクションがコミットされる前に、それらのノードの各々から受け取りの確認を待つ。しかしながら、このアプローチは、所与のノードが、確認を待つのにあまりに多くの時間を費やすため、高性能アプリケーションでは実用的ではない。また、いずれかのノードが確認の送信に失敗した場合(例えばクラッシュしたために)、所与のノードはもはやいかなるトランザクションもコミットすることができない。非同期アプローチでは、所与のノードは周期的なバッチで他のノードに通知するが、他のノードからの受け取り確認は待たない。しかしながら、このアプローチは、所与のノードが、他のノードに最後の通知以降に行われたコミットされたトランザクションの新たなセットに関して他のノードに通知する前にクラッシュした場合、崩壊する。
次に図8に移ると、分散ストレージ110、メタデータサーバ120、アクティブノード130又はスタンバイノード140を実装することができる例示的なコンピュータシステム800のブロック図が示されている。コンピュータシステム800は、相互接続860(例えばシステムバス)を介してシステムメモリ820及びI/Oインタフェース840に結合されるプロセッサ・サブシステム880を含む。I/Oインタフェース840は、1つ以上のI/Oデバイス850に結合される。コンピュータシステム800は、これらに限定されないが、サーバシステム、パーソナルコンピュータシステム、デスクトップコンピュータ、ラップトップ又はノートブックコンピュータ、メインフレームコンピュータシステム、タブレットコンピュータ、ハンドヘルドコンピュータ、ワークステーション、ネットワークコンピュータ、携帯電話や音楽プレーヤ又はパーソナルデータアシスタント(PDA)等の消費者デバイスを含む、種々のタイプのデバイスのいずれかとすることができる。便宜上、図8には単一のコンピュータシステム800が示されているが、システム800は、同時に動作する2つ以上のコンピュータシステムとして実装されてもよい。
1. データベースシステムが、該データベースシステムの現在の状態を、分散ストレージに格納された前記データベースシステムのデータについての要求を処理するように構成される複数のノードの間で同期させるための方法であって、前記複数のノードのうちの1つが現在アクティブであり、前記複数のノードのうちの他のノードが現在スタンバイノードであり、当該方法は:
アクティブノードにおいて、前記分散ストレージにデータをコミットすることを含む第1トランザクションを実行する要求を受け取るステップと;
前記要求を受け取ったことに応答して、
前記アクティブノードによって、前記分散ストレージに前記データをコミットして、前記データベースシステムの前記現在の状態を更新するステップと;
前記アクティブノードによって、前記分散ストレージに格納されたトランザクションログに、コミットの指示を提供する第1メタデータを格納させるステップであって、前記トランザクションログは、前記スタンバイノードに対して、前記スタンバイノードが前記データベースシステムの現在の状態を知るための情報を識別する、ステップと;
を含む、方法。
2. 前記スタンバイノードのうちの1つのスタンバイノードにおいて、前記トランザクションログが修正されたことの通知を受け取るステップと;
前記通知を受け取ったことに応答して、前記1つのスタンバイノードによって、該スタンバイノードで維持されている第2メタデータを更新してクライアントの要求に対応するステップであって、前記の更新は、前記トランザクションログに格納されている前記第1メタデータを読み出すことを含む、ステップと;
を更に含む、例1に記載の方法。
3. 前記複数のノードの間で共有されるカタログを維持するステップであって、前記カタログは、前記分散ストレージに格納されたメタデータを識別し、前記分散ストレージに格納されている前記第1メタデータを見つけるために、前記1つのスタンバイノードによって使用可能である、ステップと;
前記第1メタデータを格納させることに応答して、前記アクティブノードが、前記第1メタデータを識別するよう前記カタログを更新することであって、該更新によって前記1つのスタンバイノードに前記通知を受け取らせる、ステップと;
を更に含む、例2に記載の方法。
4. 前記スタンバイノードのうちの1つのスタンバイノードは、前記分散ストレージのデータを格納するキャッシュを含み、当該方法は:
前記トランザクションログから、前記1つのスタンバイノードによって、前記第1トランザクションに関連付けられるキー値ペアのキーを取り出すステップと;
前記1つのスタンバイノードによって、前記キーに関連付けられる、前記キャッシュ内のエントリを識別するステップと;
前記キー値ペアの前記キーに対応する値で前記エントリを更新するステップと;
を更に含む、例1に記載の方法。
5. 前記のコミットすることは、前記データを前記分散ストレージ内の前記トランザクションログの外部に格納するステップを含む、例1に記載の方法。
6. 前記複数のノードは、前記スタンバイノードのうちの1つのスタンバイノードが新たなアクティブノードになることを可能にするように動作可能な高可用性(HA)アプリケーションを実行するように構成され、当該方法は:
前記1つのスタンバイノードが前記新たなアクティブノードになったことに応答して、
前記新たなアクティブノードによって、第2トランザクションのために、前記分散ストレージにデータをコミットするステップと;
前記新たなアクティブノードによって、前記トランザクションログに前記第2トランザクションの指示を提供するメタデータを格納させるステップと;
を更に含む、例1に記載の方法。
7. 前記分散ストレージによって、前記トランザクションログ内の複数のトランザクションについての指示を提供するメタデータのキーを、該指示を提供する第1メタデータが格納されている前記分散ストレージ内の物理的な位置に関連付けるマッピングを維持するステップを更に含む、例1に記載の方法。
8. データベースシステムであって、
データベースを実装するよう構成される複数のノードと;
前記複数のノードに対してアクセス可能であり、前記データベースのデータを格納するように構成される分散ストレージと;
を備え、前記複数のノードのうちの第1ノードは、
第1トランザクションについて、前記分散ストレージに第1データセットを格納し、
前記分散ストレージによって維持されるトランザクションログに前記第1トランザクションの第1レコードを格納することであって、前記トランザクションログは、前記データベースに関してトランザクションが実行される順序を定義する、
ように構成され、
前記複数のノードのうちの第2ノードは、
前記分散ストレージから、前記第1レコードを含む前記トランザクションログを読み出し、
前記トランザクションログを読み出したことに基づいて、前記第2ノードによって維持されているメタデータを更新することであって、該メタデータは、前記データベースの現在の状態を示す、
ように構成される、データベースシステム。
9. 前記トランザクションログは、前記トランザクションの複数のレコードを含み、当該データベースシステムは、
前記分散ストレージ内に前記複数のレコードを識別するカタログを維持するように構成されるメタデータサーバを更に備え、前記第1ノードは、前記第1レコードが格納されたことを前記メタデータサーバに通知するように構成される、例8に記載のデータベースシステム。
10. 前記第2ノードは、
前記メタデータサーバによって維持される前記カタログにアクセスして、前記第1ノードによって前記トランザクションログに追加されたレコードを識別し、
前記分散ストレージから前記追加されたレコードを読み出し、
前記読み出したレコードに基づいて、前記維持されているメタデータを更新する、
ように構成される、例9に記載のデータベースシステム。
11. 前記第2ノードは、
前記第2ノードにおいてキャッシュを維持するように構成され、前記キャッシュは、前記分散ストレージにも格納されているデータを維持するエントリを含み、
前記メタデータを更新することは、前記エントリ内のデータが前記第1データセットによって置き換えられたことを前記第1レコードが示していることに応答して、前記キャッシュ内のエントリを無効にすることを含む、
例8に記載のデータベースシステム。
12. 前記第2ノードは、
第2データセットを書き込むことを含む第2トランザクションを実行する要求を受け取り、
該要求に応答して、
前記分散ストレージに第2データセットを格納し、
前記第2トランザクションの第2レコードを、前記分散ストレージによって維持される前記トランザクションログに格納する、
ように構成される、例8に記載のデータベースシステム。
13. 当該データベースシステムは、前記複数のノードのうちの1つのみを、所与の時点で、前記データベースシステムのアクティブノードとして動作するように選択するよう構成される、
例8に記載のデータベースシステム。
14. 前記複数のノードは、高可用性(HA)クラスタを実装するように構成され、前記分散ストレージは、ネットワークを介して前記複数のノードに結合される複数のストレージデバイスを含む、
例8に記載のデータベースシステム。
15. データベースシステムの複数のデータベースノードのうちの第1データベースノードに、
前記複数のデータベースノードの間で共有される分散ストレージに格納されたデータのためのキャッシュを維持することであって、前記キャッシュは、第1キー値ペアのためのエントリを含むことと;
トランザクションログを読み出すことであって、前記トランザクションログは、前記データベースシステムのトランザクションが前記分散ストレージにコミットされる順序を識別することと;
前記読み出しに基づいて、前記第1キー値ペアの値を修正する第1トランザクションを、前記複数のデータベースノードのうちの第2データベースノードが前記分散ストレージに対してコミットしたことを決定することと;
前記決定に応答して、前記第1キー値ペアの前記修正された値に基づいて、前記キャッシュに含まれる前記エントリを更新することと;
を含む動作を実行させることができるプログラム命令を有する、非一時的なコンピュータ読み取り可能媒体。
16. 前記動作は、
前記トランザクションログにコミットされた新たなトランザクションを識別する、前記データベースシステムのカタログをモニタリングするステップであって、前記カタログは、前記データベースシステムのデータベース・スキーマを格納することと;
前記トランザクションログを読み出す前に、前記カタログが前記分散ストレージにコミットされた新たなトランザクションを識別することを決定することと;
を更に含む、例15に記載のコンピュータ読み取り可能媒体。
17. 前記動作は、
クライアントデバイスから、前記分散ストレージ内の第2キー値ペアの値を修正することを含む第2トランザクションを実行する要求を受け取ることと;
前記分散ストレージにおいて、前記第2キー値ペアの前記修正された値及び前記第2トランザクションのレコードを格納するステップであって、前記レコードは、前記第2キー値ペアの前記値に対する修正を指定することと;
前記第2トランザクションの前記レコードを識別するように前記カタログを更新することと;
を更に含む、例16に記載のコンピュータ読み取り可能媒体。
18. 前記更新することは、前記エントリ内の値を、前記第1キー値ペアの前記修正された値に置き換えることを含む、
例15に記載のコンピュータ読み取り可能媒体。
19. 前記更新することは、前記キャッシュに含まれる前記エントリを無効にすることを含む、
例15に記載のコンピュータ読み取り可能媒体。
20. 前記動作は、
クライアントデバイスから、前記第1キー値ペアのキーに対応する値についての要求を受け取ることと;
前記値が前記更新されたエントリによって格納されているという決定に応答して、前記更新されたエントリからの前記値を前記クライアントデバイスに提供することと;
をさらに含む、例15に記載のコンピュータ読み取り可能媒体。
Claims (25)
- データベースシステムが、該データベースシステムの現在の状態を、分散ストレージに格納された前記データベースシステムのデータについての要求を処理するように構成される複数のノードの間で同期させるための方法であって、前記複数のノードのうちの1つが現在アクティブであり、前記複数のノードのうちの他のノードが現在スタンバイノードであり、当該方法は:
アクティブノードにおいて、前記分散ストレージにデータをコミットすることを含む第1トランザクションを実行する要求を受け取るステップと;
前記要求を受け取ったことに応答して、
前記アクティブノードによって、前記分散ストレージに前記データをコミットして、前記データベースシステムの前記現在の状態を更新するステップと;
前記アクティブノードによって、前記分散ストレージに格納されたトランザクションログに、コミットの指示を提供する第1メタデータを格納させるステップであって、前記トランザクションログは、前記スタンバイノードに対して、前記スタンバイノードが前記データベースシステムの前記現在の状態を知るための情報を識別する、ステップと;
を含む、方法。 - 前記スタンバイノードのうちの1つのスタンバイノードによって、前記トランザクションログにコミットされた新たなトランザクションを識別する前記データベースシステムのカタログのモニタリングするステップであって、該カタログは、前記データベースシステムについてのデータベース・スキーマを格納する、ステップと;
前記トランザクションログを読み出す前に、前記1つのスタンバイノードが、前記分散ストレージにコミットされた新たなトランザクションを前記カタログが識別すると決定するステップと;
を更に含む、請求項1に記載の方法。 - 前記スタンバイノードのうちの1つのスタンバイノードにおいて、前記トランザクションログが修正されたことの通知を受け取るステップと;
前記通知を受け取ったことに応答して、前記1つのスタンバイノードによって、該スタンバイノードで維持されている第2メタデータを更新してクライアントの要求に対応するステップであって、前記の更新は、前記トランザクションログに格納されている前記第1メタデータを読み出すことを含む、ステップと;
を更に含む、請求項1に記載の方法。 - 前記1つのスタンバイノードによって、前記分散ストレージにも格納されているデータを維持しているエントリを含むキャッシュを維持するステップを更に含み、
前記第2メタデータを更新することは、前記第1メタデータが、前記エントリ内のデータが前記コミットされたデータで置き換えられたことを示すことに応答して、前記1つのスタンバイノードが前記キャッシュ内のエントリを無効にすることを含む、
請求項3に記載の方法。 - 前記複数のノードの間で共有されるカタログを維持するステップであって、前記カタログは、前記分散ストレージに格納されたメタデータを識別し、前記分散ストレージに格納されている前記第1メタデータを見つけるために、前記1つのスタンバイノードによって使用可能である、ステップと;
前記第1メタデータを格納させることに応答して、前記アクティブノードが、前記第1メタデータを識別するよう前記カタログを更新することであって、該更新によって前記1つのスタンバイノードに前記通知を受け取らせる、ステップと;
を更に含む、請求項3に記載の方法。 - 前記スタンバイノードのうちの1つのスタンバイノードは、前記分散ストレージのデータを格納するキャッシュを含み、当該方法は:
前記トランザクションログから、前記1つのスタンバイノードによって、前記第1トランザクションに関連付けられるキー値ペアのキーを取り出すステップと;
前記1つのスタンバイノードによって、前記キーに関連付けられる、前記キャッシュ内のエントリを識別するステップと;
前記キー値ペアの前記キーに対応する値で前記エントリを更新するステップと;
を更に含む、請求項1に記載の方法。 - 前記のコミットすることは、前記データを前記分散ストレージ内の前記トランザクションログの外部に格納するステップを含む、
請求項1乃至6のいずれか一項に記載の方法。 - 前記複数のノードは、前記スタンバイノードのうちの1つのスタンバイノードが新たなアクティブノードになることを可能にするように動作可能な高可用性(HA)アプリケーションを実行するように構成され、当該方法は:
前記1つのスタンバイノードが前記新たなアクティブノードになったことに応答して、
前記新たなアクティブノードによって、第2トランザクションのために、前記分散ストレージにデータをコミットするステップと;
前記新たなアクティブノードによって、前記トランザクションログに前記第2トランザクションの指示を提供するメタデータを格納させるステップと;
を更に含む、請求項1に記載の方法。 - 前記分散ストレージによって、前記トランザクションログ内の複数のトランザクションについての指示を提供するメタデータのキーを、該指示を提供する第1メタデータが格納されている前記分散ストレージ内の物理的な位置に関連付けるマッピングを維持するステップ、
を更に含む、請求項1乃至8のいずれか一項に記載の方法。 - データベースシステムであって、
データベースを実装するよう構成される複数のノードと;
前記複数のノードに対してアクセス可能であり、前記データベースのデータを格納するように構成される分散ストレージと;
を備え、前記複数のノードのうちの第1ノードは、
前記分散ストレージにデータをコミットすることを含む第1トランザクションを実行する要求を受け取り、
前記第1トランザクションについて、前記分散ストレージに第1データセットを格納し、
前記分散ストレージによって維持されるトランザクションログに前記第1トランザクションの第1レコードを格納することであって、前記トランザクションログは、前記データベースに関してトランザクションが実行される順序を定義する、
ように構成される、データベースシステム。 - 前記複数のノードのうちの第2ノードは、
前記分散ストレージから、前記第1レコードを含む前記トランザクションログを読み出し、
前記トランザクションログを読み出したことに基づいて、前記第2ノードによって維持されているメタデータを更新することであって、該メタデータは、前記データベースの現在の状態を示す、
ように構成される、請求項10に記載のデータベースシステム。 - 前記トランザクションログは、前記トランザクションの複数のレコードを含み、当該データベースシステムは、
前記分散ストレージ内に前記複数のレコードを識別するカタログを維持するように構成されるメタデータサーバを更に備え、前記第1ノードは、前記第1レコードが格納されたことを前記メタデータサーバに通知するように構成される、
請求項11に記載のデータベースシステム。 - 前記第2ノードは、
前記メタデータサーバによって維持される前記カタログにアクセスして、前記第1ノードによって前記トランザクションログに追加されたレコードを識別し、
前記分散ストレージから前記追加されたレコードを読み出し、
前記読み出したレコードに基づいて、前記維持されているメタデータを更新する、
ように構成される、請求項12に記載のデータベースシステム。 - 前記第2ノードは、
第2データセットを書き込むことを含む第2トランザクションを実行する要求を受け取り、
該要求に応答して、
前記分散ストレージに第2データセットを格納し、
前記第2トランザクションの第2レコードを、前記分散ストレージによって維持される前記トランザクションログに格納する、
ように構成される、請求項11に記載のデータベースシステム。 - 当該データベースシステムは、前記複数のノードのうちの1つのみを、所与の時点で、前記データベースシステムのアクティブノードとして動作するように選択するよう構成される、
請求項10乃至14のいずれか一項に記載のデータベースシステム。 - 前記複数のノードは、高可用性(HA)クラスタを実装するように構成され、前記分散ストレージは、ネットワークを介して前記複数のノードに結合される複数のストレージデバイスを含む、
請求項10乃至15のいずれか一項に記載のデータベースシステム。 - 請求項1乃至9のいずれか一項に記載の方法を実施するために1つ以上のプロセッサによって実行可能なプログラム命令を有する、非一時的なコンピュータ読取可能媒体。
- データベースシステムの複数のデータベースノードのうちの第1データベースノードによって、前記複数のデータベースノードの間で共有される分散ストレージに格納されたデータのためのキャッシュを維持するステップであって、前記キャッシュは、第1キー値ペアのためのエントリを含む、ステップと;
前記第1データベースノードによって、トランザクションログを読み出すステップであって、前記トランザクションログは、前記データベースシステムのトランザクションが前記分散ストレージにコミットされる順序を識別する、ステップと;
前記読み出したことに基づいて、前記第1データベースノードが、前記第1キー値ペアの値を修正する第1トランザクションを前記複数のデータベースノードのうちの第2データベースノードが前記分散ストレージに対してコミットしたことを決定するステップと;
前記決定したことに応答して、前記第1データベースノードが、前記第1キー値ペアの前記修正された値に基づいて、前記キャッシュに含まれる前記エントリを更新するステップと;
を含む、方法。 - 動作が、
前記第1データベースノードによって、前記トランザクションログにコミットされた新たなトランザクションを識別する、前記データベースシステムのカタログをモニタリングするステップであって、前記カタログは、前記データベースシステムのデータベース・スキーマを格納するステップと;
前記トランザクションログを読み出す前に、前記第1データベースノードが、前記分散ストレージにコミットされた新たなトランザクションを前記カタログが識別することを決定するステップと;
を更に含む、請求項18に記載の方法。 - 動作が、
前記第1データベースノードによって、クライアントデバイスから、前記分散ストレージ内の第2キー値ペアの値を修正することを含む第2トランザクションを実行する要求を受け取るステップと;
前記第1データベースノードによって、前記分散ストレージにおいて、前記第2キー値ペアの前記修正された値及び前記第2トランザクションのレコードを格納するステップであって、前記レコードは、前記第2キー値ペアの前記値に対する修正を指定する、ステップと;
前記第1データベースノードによって、前記第2トランザクションの前記レコードを識別するようにカタログを更新するステップと;
を更に含む、請求項18又は19に記載の方法。 - 前記更新するステップは、前記エントリ内の値を、前記第1キー値ペアの前記修正された値で置き換えることを含む、
請求項18乃至20のいずれか一項に記載の方法。 - 前記更新するステップは、前記キャッシュに含まれる前記エントリを無効にすることを含む、
請求項18乃至20のいずれか一項に記載の方法。 - 動作が、
前記第1データベースノードによって、特定のクライアントデバイスから、前記第1キー値ペアのキーに対応する値についての要求を受け取るステップと;
前記値が前記更新されたエントリによって格納されているという決定に応答して、前記第1データベースノードが、前記更新されたエントリからの前記値を前記特定のクライアントデバイスに提供するステップと;
を更に含む、請求項18乃至22のいずれか一項に記載の方法。 - 請求項18乃至23のいずれか一項に記載の方法を実施するために1つ以上のプロセッサによって実行可能なプログラム命令を有する、非一時的なコンピュータ読取可能媒体。
- データベースシステムであって、
データベースを実装するように構成される複数のノードと;
前記複数のノードに対してアクセス可能であり、前記データベースのデータを格納するように構成される分散ストレージと;
を備え、前記複数のノードのうちの第1ノードは、請求項18乃至23のいずれか一項に記載の方法を実施するように構成される、データベースシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/666,141 US11347774B2 (en) | 2017-08-01 | 2017-08-01 | High availability database through distributed store |
US15/666,141 | 2017-08-01 | ||
PCT/US2018/044787 WO2019028130A1 (en) | 2017-08-01 | 2018-08-01 | HIGH AVAILABILITY DATABASE ACROSS A DISTRIBUTED STORE |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020529673A true JP2020529673A (ja) | 2020-10-08 |
JP2020529673A5 JP2020529673A5 (ja) | 2021-09-02 |
JP7263314B2 JP7263314B2 (ja) | 2023-04-24 |
Family
ID=63209705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020505357A Active JP7263314B2 (ja) | 2017-08-01 | 2018-08-01 | 分散ストアによる高可用性データベース |
Country Status (5)
Country | Link |
---|---|
US (1) | US11347774B2 (ja) |
EP (1) | EP3662390B1 (ja) |
JP (1) | JP7263314B2 (ja) |
CN (1) | CN110998557B (ja) |
WO (1) | WO2019028130A1 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108363641B (zh) * | 2017-01-26 | 2022-01-14 | 华为技术有限公司 | 一种主备机数据传递方法、控制节点以及数据库系统 |
CN110046199A (zh) * | 2019-04-24 | 2019-07-23 | 北京阿尔山金融科技有限公司 | 交易数据的同步方法、装置及电子设备 |
SG11202002021WA (en) * | 2019-09-12 | 2020-04-29 | Alibaba Group Holding Ltd | Log-structured storage systems |
US10942852B1 (en) | 2019-09-12 | 2021-03-09 | Advanced New Technologies Co., Ltd. | Log-structured storage systems |
CN110750517B (zh) * | 2019-10-12 | 2022-06-10 | 浪潮电子信息产业股份有限公司 | 一种本地存储引擎系统的数据处理方法、装置以及设备 |
CN110851407A (zh) * | 2019-11-15 | 2020-02-28 | 南京邮电大学 | 一种数据分布式存储系统及方法 |
US11544232B2 (en) * | 2019-12-11 | 2023-01-03 | Western Digital Technologies, Inc. | Efficient transaction log and database processing |
JP7037595B2 (ja) * | 2020-03-30 | 2022-03-16 | 株式会社日立製作所 | データベース管理システム、及び、データベース管理方法 |
US11119872B1 (en) * | 2020-06-02 | 2021-09-14 | Hewlett Packard Enterprise Development Lp | Log management for a multi-node data processing system |
US11622000B2 (en) | 2021-01-29 | 2023-04-04 | Salesforce, Inc. | Grey failure handling in distributed storage systems |
US11741050B2 (en) | 2021-01-29 | 2023-08-29 | Salesforce, Inc. | Cloud storage class-based variable cache availability |
CN112905696B (zh) * | 2021-02-09 | 2021-11-19 | 掌阅科技股份有限公司 | 基于事务标识的多机房同步方法、计算设备及存储介质 |
CN113407123B (zh) * | 2021-07-13 | 2024-04-30 | 上海达梦数据库有限公司 | 一种分布式事务节点信息存储方法、装置、设备及介质 |
US11914580B2 (en) * | 2021-09-30 | 2024-02-27 | Salesforce, Inc. | Mechanisms for deploying database clusters |
CN115757330A (zh) * | 2022-12-08 | 2023-03-07 | 丝路信息港云计算科技有限公司 | 一种分布式文件系统的高度可靠的元数据服务系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004055674A1 (ja) * | 2002-12-18 | 2004-07-01 | Fujitsu Limited | 分散トランザクション処理装置、分散トランザクション処理プログラム、分散トランザクション処理方法および分散トランザクション処理システム |
JP2012008934A (ja) * | 2010-06-28 | 2012-01-12 | Kddi Corp | 分散ファイルシステム及び分散ファイルシステムにおける冗長化方法 |
JP2014525066A (ja) * | 2011-06-03 | 2014-09-25 | アップル インコーポレイテッド | クラウドストレージ |
JP2016517124A (ja) * | 2013-04-30 | 2016-06-09 | アマゾン・テクノロジーズ・インコーポレーテッド | 効率的な読み取り用レプリカ |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5649089A (en) | 1994-11-30 | 1997-07-15 | Motorola, Inc. | Method and apparatus for maintaining a redundant database system |
US7734580B2 (en) | 2007-01-29 | 2010-06-08 | Oracle International Corporation | Readable physical storage replica and standby database system |
US20080222111A1 (en) | 2007-03-07 | 2008-09-11 | Oracle International Corporation | Database system with dynamic database caching |
US7913050B2 (en) | 2007-06-26 | 2011-03-22 | Oracle International Corporation | Fencing using a hierarchical relationship |
US8145938B2 (en) | 2009-06-01 | 2012-03-27 | Novell, Inc. | Fencing management in clusters |
US8381017B2 (en) | 2010-05-20 | 2013-02-19 | International Business Machines Corporation | Automated node fencing integrated within a quorum service of a cluster infrastructure |
TWI476581B (zh) | 2012-12-28 | 2015-03-11 | Ibm | 主動式/使用中資訊設備叢集中提供高可用性的方法、裝置與電腦程式產品 |
US11030055B2 (en) * | 2013-03-15 | 2021-06-08 | Amazon Technologies, Inc. | Fast crash recovery for distributed database systems |
US20150213049A1 (en) * | 2014-01-30 | 2015-07-30 | Netapp, Inc. | Asynchronous backend global deduplication |
NO2776466T3 (ja) * | 2014-02-13 | 2018-01-20 | ||
US9477519B2 (en) * | 2014-09-18 | 2016-10-25 | Robert D. Pedersen | Distributed activity control systems and methods |
US10235407B1 (en) * | 2015-08-21 | 2019-03-19 | Amazon Technologies, Inc. | Distributed storage system journal forking |
CN108509462B (zh) * | 2017-02-28 | 2021-01-29 | 华为技术有限公司 | 一种同步活动事务表的方法及装置 |
US10585873B2 (en) * | 2017-05-08 | 2020-03-10 | Sap Se | Atomic processing of compound database transactions that modify a metadata entity |
US10884926B2 (en) * | 2017-06-16 | 2021-01-05 | Alibaba Group Holding Limited | Method and system for distributed storage using client-side global persistent cache |
-
2017
- 2017-08-01 US US15/666,141 patent/US11347774B2/en active Active
-
2018
- 2018-08-01 JP JP2020505357A patent/JP7263314B2/ja active Active
- 2018-08-01 WO PCT/US2018/044787 patent/WO2019028130A1/en unknown
- 2018-08-01 CN CN201880050653.7A patent/CN110998557B/zh active Active
- 2018-08-01 EP EP18755639.4A patent/EP3662390B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004055674A1 (ja) * | 2002-12-18 | 2004-07-01 | Fujitsu Limited | 分散トランザクション処理装置、分散トランザクション処理プログラム、分散トランザクション処理方法および分散トランザクション処理システム |
JP2012008934A (ja) * | 2010-06-28 | 2012-01-12 | Kddi Corp | 分散ファイルシステム及び分散ファイルシステムにおける冗長化方法 |
JP2014525066A (ja) * | 2011-06-03 | 2014-09-25 | アップル インコーポレイテッド | クラウドストレージ |
JP2016517124A (ja) * | 2013-04-30 | 2016-06-09 | アマゾン・テクノロジーズ・インコーポレーテッド | 効率的な読み取り用レプリカ |
Also Published As
Publication number | Publication date |
---|---|
WO2019028130A1 (en) | 2019-02-07 |
EP3662390B1 (en) | 2022-04-06 |
CN110998557A (zh) | 2020-04-10 |
US11347774B2 (en) | 2022-05-31 |
CN110998557B (zh) | 2023-11-07 |
EP3662390A1 (en) | 2020-06-10 |
US20190042638A1 (en) | 2019-02-07 |
JP7263314B2 (ja) | 2023-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7263314B2 (ja) | 分散ストアによる高可用性データベース | |
JP7233411B2 (ja) | 分散クラスタシステムにおけるノードのフェンシングアウト | |
US8725951B2 (en) | Efficient flash memory-based object store | |
EP2681660B1 (en) | Universal cache management system | |
US8904117B1 (en) | Non-shared write-back caches in a cluster environment | |
US20230280944A1 (en) | Tiering Data Strategy for a Distributed Storage System | |
EP2879040B1 (en) | Data storage method, data storage apparatus, and storage device | |
JP5722962B2 (ja) | ストレージ性能の最適化 | |
US20060224639A1 (en) | Backup system, program and backup method | |
CN102073739A (zh) | 带有快照功能的分布式文件系统中的数据读与数据写方法 | |
US10176098B2 (en) | Method and apparatus for data cache in converged system | |
CN107341114B (zh) | 一种目录管理的方法、节点控制器和系统 | |
JP2005322237A (ja) | データ・ストレージ・システム間でのポイント・イン・タイム・コピー | |
US8185691B2 (en) | Optimized cache coherency in a dual-controller storage array | |
US7552282B1 (en) | Method, computer readable medium, and data storage system for selective data replication of cached data | |
US11099998B2 (en) | Method and device for optimization of data caching | |
CN112334891A (zh) | 用于搜索服务器的集中式存储 | |
US11455275B2 (en) | Storing a point in time coherently for a distributed storage system | |
US10642745B2 (en) | Key invalidation in cache systems | |
US11609716B2 (en) | Implementing coherency and page cache support for a storage system spread across multiple data centers | |
US10635552B1 (en) | Method for tracking validity of journal copies to allow journal mirroring | |
JP4286857B2 (ja) | ノード間共用ファイル制御方法 | |
JP3866448B2 (ja) | ノード間共用ファイル制御方式 | |
US7130931B2 (en) | Method, system, and article of manufacture for selecting replication volumes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210720 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210720 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220801 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220906 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221129 |
|
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: 20230314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230412 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7263314 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |