JP2020529673A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2020529673A5 JP2020529673A5 JP2020505357A JP2020505357A JP2020529673A5 JP 2020529673 A5 JP2020529673 A5 JP 2020529673A5 JP 2020505357 A JP2020505357 A JP 2020505357A JP 2020505357 A JP2020505357 A JP 2020505357A JP 2020529673 A5 JP2020529673 A5 JP 2020529673A5
- Authority
- JP
- Japan
- Prior art keywords
- database
- distributed storage
- metadata
- node
- transaction
- 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
Claims (14)
- データベースシステムが、該データベースシステムの現在の状態を、分散ストレージに格納された前記データベースシステムのデータについての要求を処理するように構成される複数のデータベースノードの間で同期させるための方法であって、前記複数のデータベースノードのうちの1つが現在アクティブであり、前記複数のデータベースノードのうちの他のデータベースノードが現在のスタンバイデータベースノードであり、当該方法は、
アクティブデータベースノードにおいて、前記分散ストレージにデータをコミットすることを含む第1トランザクションを実行する要求を受け取るステップと、
前記要求を受け取ったことに応答して、
前記アクティブデータベースノードによって、前記分散ストレージに前記データをコミットして、前記データベースシステムの前記現在の状態を更新するステップと、
前記アクティブデータベースノードによって、トランザクションログに、コミットの指示を提供する第1メタデータを格納させることにより、前記分散ストレージに格納されたトランザクションログを修正するステップであり、前記トランザクションログは、前記スタンバイデータベースノードに対して、前記スタンバイデータベースノードが前記データベースシステムの前記現在の状態を知るための情報を識別する、ステップと、
前記第1メタデータを格納させることに応じて、前記アクティブデータベースノードによって、前記第1メタデータを識別するために、前記データベースシステムのメタデータサーバによって維持されているカタログを更新するステップであり、前記カタログは、前記第1メタデータを見つけるためにスタンバイデータベースノードによって使用可能であり、前記メタデータサーバは、前記カタログが更新されことを前記スタンバイデータベースノードに通知するように動作可能である、ステップと、
を含む、方法。 - 前記スタンバイデータベースノードのうちの1つにおいて、前記トランザクションログが修正されたことの通知を受け取るステップと、
前記通知を受け取ったことに応答して、前記1つのスタンバイデータベースノードによって、該スタンバイデータベースノードで維持されている第2メタデータを更新してクライアントの要求に対応するステップであって、前記の更新は、前記トランザクションログに格納されている前記第1メタデータを読み出すことを含む、ステップと、
を更に含む、請求項1に記載の方法。 - 前記1つのスタンバイデータベースノードによって、前記分散ストレージにも格納されているデータを維持しているエントリを含むキャッシュを維持するステップを更に含み、
前記第2メタデータを更新することは、前記第1メタデータが、前記エントリ内のデータが前記コミットされたデータで置き換えられたことを示すことに応答して、前記1つのスタンバイデータベースノードが前記キャッシュ内のエントリを無効にすることを含む、
請求項2に記載の方法。 - 前記スタンバイデータベースノードのうちの1つは、前記分散ストレージのデータを格納するキャッシュを含み、当該方法は、
前記トランザクションログから、前記1つのスタンバイデータベースノードによって、前記第1トランザクションに関連付けられるキー値ペアのキーを取り出すステップと、
前記1つのスタンバイデータベースノードによって、前記キーに関連付けられる、前記キャッシュ内のエントリを識別するステップと、
前記キー値ペアの前記キーに対応する値で前記エントリを更新するステップと、
を更に含む、請求項1に記載の方法。 - 前記のコミットすることは、前記データを前記分散ストレージ内の前記トランザクションログの外部に格納するステップを含む、
請求項1乃至4のいずれか一項に記載の方法。 - 前記複数のデータベースノードは、前記スタンバイデータベースノードのうちの1つが新たなアクティブデータベースノードになることを可能にするように動作可能な高可用性(HA)アプリケーションを実行するように構成され、当該方法は:
前記1つのスタンバイデータベースノードが前記新たなアクティブデータベースノードになったことに応答して、
前記新たなアクティブデータベースノードによって、第2トランザクションのために、前記分散ストレージにデータをコミットするステップと;
前記新たなアクティブデータベースノードによって、前記トランザクションログに前記第2トランザクションの指示を提供するメタデータを格納させるステップと;
を更に含む、請求項1に記載の方法。 - 前記分散ストレージによって、前記トランザクションログ内の複数のトランザクションについての指示を提供するメタデータのキーを、該指示を提供する第1メタデータが格納されている前記分散ストレージ内の物理的な位置に関連付けるマッピングを維持するステップ、
を更に含む、請求項1乃至6のいずれか一項に記載の方法。 - データベースシステムであって、
データベースを実装するよう構成される複数のデータベースノードと、
前記複数のデータベースノードに対してアクセス可能であり、前記データベースのデータを格納するように構成される分散ストレージと、
前記複数のデータベースノードのスタンバイノードによってアクセス可能であり、かつ、前記分散ストレージに書き込まれたメタデータを識別するために使用可能であるカタログを維持するように構成されるメタデータサーバと、
を備え、前記複数のデータベースノードのうちの第1データベースノードは、現在アクティブなノードであり、
前記分散ストレージにデータをコミットすることを含む第1トランザクションを実行する要求を受け取り、
前記第1トランザクションについて、前記分散ストレージに第1データセットを格納し、
前記分散ストレージによって維持されるトランザクションログに前記第1トランザクションの第1レコードを格納し、前記トランザクションログは、前記データベースに関してトランザクションが実行される順序を定義し、かつ、
前記第1トランザクションを識別するための前記カタログを更新させる、
ように構成されており、
前記メタデータサーバは、前記カタログが更新されことを前記スタンバイノードに通知するように動作可能である、
データベースシステム。 - 前記複数のデータベースノードのうちの第2データベースノードは、
前記分散ストレージから、前記第1レコードを含む前記トランザクションログを読み出し、
前記トランザクションログを読み出したことに基づいて、前記第2データベースノードによって維持されているメタデータを更新することであって、該メタデータは、前記データベースの現在の状態を示す、
ように構成される、請求項8に記載のデータベースシステム。 - 前記第2データベースノードは、
前記メタデータサーバによって維持される前記カタログにアクセスして、前記第1データベースノードによって前記トランザクションログに追加されたレコードを識別し、
前記分散ストレージから前記追加されたレコードを読み出し、
前記読み出したレコードに基づいて、前記維持されているメタデータを更新する、
ように構成される、請求項8または9に記載のデータベースシステム。 - 前記第2データベースノードは、
第2データセットを書き込むことを含む第2トランザクションを実行する要求を受け取り、
該要求に応答して、
前記分散ストレージに第2データセットを格納し、
前記第2トランザクションの第2レコードを、前記分散ストレージによって維持される前記トランザクションログに格納する、
ように構成される、請求項8または9に記載のデータベースシステム。 - 当該データベースシステムは、前記複数のデータベースノードのうちの1つのみを、所与の時点で、前記データベースシステムのアクティブデータベースノードとして動作するように選択するよう構成される、
請求項8乃至11のいずれか一項に記載のデータベースシステム。 - 前記複数のデータベースノードは、高可用性(HA)クラスタを実装するように構成され、前記分散ストレージは、ネットワークを介して前記複数のデータベースノードに結合される複数のストレージデバイスを含む、
請求項8乃至12のいずれか一項に記載のデータベースシステム。 - 請求項1乃至7のいずれか一項に記載の方法を実施するために1つ以上のプロセッサによって実行可能なプログラム命令を有する、非一時的なコンピュータ読取可能媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/666,141 | 2017-08-01 | ||
US15/666,141 US11347774B2 (en) | 2017-08-01 | 2017-08-01 | High availability database through distributed store |
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 JP2020529673A (ja) | 2020-10-08 |
JP2020529673A5 true 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 | 北京阿尔山金融科技有限公司 | 交易数据的同步方法、装置及电子设备 |
US10942852B1 (en) | 2019-09-12 | 2021-03-09 | Advanced New Technologies Co., Ltd. | Log-structured storage systems |
EP3695303B1 (en) * | 2019-09-12 | 2022-11-30 | 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 |
US11741050B2 (en) | 2021-01-29 | 2023-08-29 | Salesforce, Inc. | Cloud storage class-based variable cache availability |
US11622000B2 (en) | 2021-01-29 | 2023-04-04 | Salesforce, Inc. | Grey failure handling in distributed storage systems |
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 | 丝路信息港云计算科技有限公司 | 一种分布式文件系统的高度可靠的元数据服务系统 |
Family Cites Families (19)
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 |
WO2004055674A1 (ja) * | 2002-12-18 | 2004-07-01 | Fujitsu Limited | 分散トランザクション処理装置、分散トランザクション処理プログラム、分散トランザクション処理方法および分散トランザクション処理システム |
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 |
JP2012008934A (ja) * | 2010-06-28 | 2012-01-12 | Kddi Corp | 分散ファイルシステム及び分散ファイルシステムにおける冗長化方法 |
AU2012261986B2 (en) * | 2011-06-03 | 2016-02-04 | Apple Inc. | Cloud storage |
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 |
US10747746B2 (en) * | 2013-04-30 | 2020-08-18 | Amazon Technologies, Inc. | Efficient read replicas |
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 EP EP18755639.4A patent/EP3662390B1/en active Active
- 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
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020529673A5 (ja) | ||
JP7263314B2 (ja) | 分散ストアによる高可用性データベース | |
US10078681B2 (en) | Differentiated secondary index maintenance in log structured NoSQL data stores | |
EP3047397B1 (en) | Mirroring, in memory, data from disk to improve query performance | |
US10261960B2 (en) | Snapshots and forks of storage systems using distributed consistent databases implemented within an object store | |
JP2022534215A (ja) | ハイブリッド・インデックス作成方法、システム、プログラム | |
US9171027B2 (en) | Managing a multi-version database | |
JP5722962B2 (ja) | ストレージ性能の最適化 | |
KR20180021679A (ko) | 일관된 데이터베이스 스냅샷들을 이용한 분산 데이터베이스에서의 백업 및 복원 | |
US11314717B1 (en) | Scalable architecture for propagating updates to replicated data | |
WO2015094179A1 (en) | Abstraction layer between a database query engine and a distributed file system | |
US8832022B2 (en) | Transaction processing device, transaction processing method and transaction processing program | |
JP2014505925A (ja) | マルチテナントストアで横断的ストア結合を行う方法及びシステム | |
CN112513835A (zh) | 用存储器内列式查询处理启用和集成存储器内半结构化数据和文本文档搜索的技术 | |
US10437688B2 (en) | Enhancing consistent read performance for in-memory databases | |
CN102867070A (zh) | 更新key-value分布式存储系统缓存的方法 | |
US20130159339A1 (en) | Data Container Access in a Database System | |
JP5721056B2 (ja) | トランザクション処理装置、トランザクション処理方法およびトランザクション処理プログラム | |
US20190258618A1 (en) | Immediately-consistent lock-free indexing for distributed applications | |
US20230205757A1 (en) | Version control interface for accessing data lakes | |
US10642745B2 (en) | Key invalidation in cache systems | |
US11048728B2 (en) | Dependent object analysis | |
JP2017167654A (ja) | データ管理装置及びデータベースの管理方法 | |
JP4825504B2 (ja) | データ登録・検索システムおよびデータ登録・検索方法 | |
US20170316045A1 (en) | Read-after-write consistency for derived non-relational data |