JP6924898B2 - トランザクション処理方法、装置及びデバイス - Google Patents
トランザクション処理方法、装置及びデバイス Download PDFInfo
- Publication number
- JP6924898B2 JP6924898B2 JP2020517246A JP2020517246A JP6924898B2 JP 6924898 B2 JP6924898 B2 JP 6924898B2 JP 2020517246 A JP2020517246 A JP 2020517246A JP 2020517246 A JP2020517246 A JP 2020517246A JP 6924898 B2 JP6924898 B2 JP 6924898B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- data
- partition
- write
- snapshot
- 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.)
- Active
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/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1865—Transactional file systems
-
- 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/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- 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
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1466—Management of the backup or restore process to make the backup process non-disruptive
-
- 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/2379—Updates performed during online database operations; commit processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
処理対象トランザクションを受信するステップであり、処理対象トランザクションは、少なくとも2つのデータパーティションにおいて操作を実行するトランザクションである、ステップと、少なくとも2つのデータパーティションに対応し且つ一貫性を満たすデータスナップショットを取得するステップと、少なくとも2つのデータパーティションに対応し且つ一貫性を満たすデータスナップショットに基づいて、処理対象トランザクションに対応する操作を実行するステップとを含む。
少なくとも2つのデータパーティションに対応し且つ一貫性を満たすデータスナップショット内の処理対象トランザクションに対応する書き込み操作を実行するステップと、対応するデータパーティションにおけるデータとして、処理対象トランザクションに対応する書き込み操作が実行された後に取得されたデータスナップショットを記憶するステップとを含む。
処理対象トランザクションに対応する書き込み操作が、少なくとも2つのデータパーティションにそれぞれ対応し且つ一貫性を満たすデータスナップショットに基づいてうまく実行された後に、少なくとも2つのデータパーティションにそれぞれ対応するバージョン情報を処理対象トランザクションの識別子で更新するステップを更に含む。
Claims (15)
- トランザクション処理装置が実行するトランザクション処理方法であって、
処理対象トランザクションを受信するステップであり、前記処理対象トランザクションは、少なくとも2つのデータパーティションにおいて操作を実行するトランザクションである、ステップと、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョン情報を有するデータスナップショットを取得するステップと、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョン情報を有する前記データスナップショットに基づいて、前記処理対象トランザクションに対応する前記操作を実行するステップと
を含み、
前記処理対象トランザクションは、前記処理対象トランザクションのトランザクションタイプに基づいて読み取りトランザクションキュー又は書き込みトランザクションキューに追加され、
前記読み取りトランザクションキュー及び前記書き込みトランザクションキューは並列に処理される、方法。 - 前記処理対象トランザクションは、前記少なくとも2つのデータパーティションにおいて読み取り操作を実行するトランザクションであり、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョン情報を有するデータスナップショットを取得するステップは、
前記少なくとも2つのデータパーティションのそれぞれのデータスナップショットと、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットのバージョン情報とを取得するステップと、
前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットの前記バージョン情報に基づいて、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョン情報を有するか否かを検出するステップと、
検出結果が、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョンを有するものであることに応じて、前記少なくとも2つのデータパーティションにそれぞれ対応し且つ同じバージョン情報を有する前記データスナップショットが成功して取得されたと決定するステップと
を含む、請求項1に記載の方法。 - 前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有するデータスナップショットを取得するステップは、
前記検出結果が、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョンを有さないものである場合、以前のバージョンを有するデータパーティションのデータスナップショットと、再取得される前記データスナップショットのバージョン情報とを再取得するステップと、
再取得された前記データスナップショットの前記バージョン情報に基づいて、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョン情報を有すると決定するステップと
を更に含む、請求項2に記載の方法。 - 前記データスナップショットの前記バージョン情報は、前記データスナップショットが生成されたときに前記データスナップショットに対応するデータパーティションへの最新の書き込みを実行する複数パーティション書き込みトランザクションの識別子を含み、前記複数パーティション書き込みトランザクションは、前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションである、請求項2又は3に記載の方法。
- 前記処理対象トランザクションは、前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションであり、前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有する前記データスナップショットに基づいて、前記処理対象トランザクションに対応する前記操作を実行するステップは、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有する前記データスナップショット内の前記処理対象トランザクションに対応する前記書き込み操作を実行するステップと、
対応するデータパーティションにおけるデータとして、前記処理対象トランザクションに対応する前記書き込み操作が実行された後に取得されたデータスナップショットを記憶するステップと
を含む、請求項1に記載の方法。 - 前記処理対象トランザクションは、前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションであり、当該方法は、
前記処理対象トランザクションに対応する前記書き込み操作が、前記少なくとも2つのデータパーティションにそれぞれ対応し且つ同じバージョンを有する前記データスナップショットに基づいてうまく実行された後に、前記少なくとも2つのデータパーティションにそれぞれ対応するバージョン情報を前記処理対象トランザクションの識別子で更新するステップを更に含む、請求項1に記載の方法。 - トランザクション処理装置であって、
処理対象トランザクションを受信するように構成されたトランザクション受信ユニットであり、前記処理対象トランザクションは、少なくとも2つのデータパーティションにおいて操作を実行するトランザクションである、トランザクション受信ユニットと、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有するデータスナップショットを取得するように構成されたスナップショット取得ユニットと、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有する前記データスナップショットに基づいて、前記処理対象トランザクションに対応する前記操作を実行するように構成された実行ユニットと
を含み、
前記処理対象トランザクションは、前記処理対象トランザクションのトランザクションタイプに基づいて読み取りトランザクションキュー又は書き込みトランザクションキューに追加され、
前記読み取りトランザクションキュー及び前記書き込みトランザクションキューは並列に処理される、装置。 - 前記処理対象トランザクションは、前記少なくとも2つのデータパーティションにおいて読み取り操作を実行するトランザクションであり、
前記スナップショット取得ユニットは、
前記少なくとも2つのデータパーティションのそれぞれのデータスナップショットと、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットのバージョン情報とを取得し、
前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットの前記バージョン情報に基づいて、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョン情報を有するか否かを検出し、
検出結果が、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョンを有するものであることに応じて、前記少なくとも2つのデータパーティションにそれぞれ対応し且つ同じバージョン情報を有する前記データスナップショットが成功して取得されたと決定する
ように構成される、請求項7に記載の装置。 - 前記スナップショット取得ユニットは、
前記検出結果が、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョンを有さないものである場合、以前のバージョンに対応するデータパーティションのデータスナップショットと、再取得される前記データスナップショットのバージョン情報とを再取得し、
再取得された前記データスナップショットの前記バージョン情報に基づいて、前記少なくとも2つのデータパーティションの前記それぞれのデータスナップショットが同じバージョン情報を有すると決定する
ように更に構成される、請求項8に記載の装置。 - 前記データスナップショットの前記バージョン情報は、前記データスナップショットが生成されたときに前記データスナップショットに対応するデータパーティションへの最新の書き込みを実行する複数パーティション書き込みトランザクションの識別子を含み、前記複数パーティション書き込みトランザクションは、前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションである、請求項8又は9に記載の装置。
- 前記処理対象トランザクションは、前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションであり、前記実行ユニットは、
前記少なくとも2つのデータパーティションに対応し且つ同じバージョンを有する前記データスナップショット内の前記処理対象トランザクションに対応する前記書き込み操作を実行し、
対応するデータパーティションにおけるデータとして、前記処理対象トランザクションに対応する前記書き込み操作が実行された後に取得されたデータスナップショットを記憶する
ように具体的に構成される、請求項7に記載の装置。 - 当該装置は、
前記処理対象トランザクションが前記少なくとも2つのデータパーティションにおいて書き込み操作を実行するトランザクションであるとき、前記処理対象トランザクションに対応する前記書き込み操作が、前記少なくとも2つのデータパーティションにそれぞれ対応し且つ同じバージョンを有する前記データスナップショットに対してうまく実行された後に、前記少なくとも2つのデータパーティションにそれぞれ対応するバージョン情報を前記処理対象トランザクションの識別子で更新するように構成された更新ユニット
を更に含む、請求項7に記載の装置。 - トランザクション処理デバイスであって、
当該デバイスは、通信インタフェースと、プロセッサと、メモリとを含み、
前記メモリは、前記プロセッサにより実行できるプログラム又は命令を記憶し、
前記プロセッサは、前記メモリに記憶された前記プログラム又は前記命令を実行することにより、請求項1乃至6のうちいずれか1項に記載のトランザクション処理方法を実現するように、前記通信インタフェースを制御する、トランザクション処理デバイス。 - コンピュータ読み取り可能記憶媒体であって、
前記コンピュータ読み取り可能記憶媒体は、実行可能プログラムを記憶し、前記実行可能プログラムは、請求項1乃至6のうちいずれか1項に記載のトランザクション処理方法を実現するように、プロセッサにより実行される、コンピュータ読み取り可能記憶媒体。 - コンピュータに請求項1乃至6のうちいずれか1項に記載の方法を実行させるプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/087194 WO2018223262A1 (zh) | 2017-06-05 | 2017-06-05 | 一种事务处理方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020522830A JP2020522830A (ja) | 2020-07-30 |
JP6924898B2 true JP6924898B2 (ja) | 2021-08-25 |
Family
ID=64565652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020517246A Active JP6924898B2 (ja) | 2017-06-05 | 2017-06-05 | トランザクション処理方法、装置及びデバイス |
Country Status (6)
Country | Link |
---|---|
US (1) | US20200110739A1 (ja) |
EP (1) | EP3627359B1 (ja) |
JP (1) | JP6924898B2 (ja) |
KR (1) | KR102353141B1 (ja) |
CN (1) | CN110168514B (ja) |
WO (1) | WO2018223262A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475262B (zh) * | 2020-04-02 | 2024-02-06 | 百度国际科技(深圳)有限公司 | 区块链中事务请求处理方法、装置、设备和介质 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5287496A (en) * | 1991-02-25 | 1994-02-15 | International Business Machines Corporation | Dynamic, finite versioning for concurrent transaction and query processing |
WO2001006374A2 (en) * | 1999-07-16 | 2001-01-25 | Intertrust Technologies Corp. | System and method for securing an untrusted storage |
US7334004B2 (en) * | 2001-06-01 | 2008-02-19 | Oracle International Corporation | Consistent read in a distributed database environment |
US8949220B2 (en) * | 2003-12-19 | 2015-02-03 | Oracle International Corporation | Techniques for managing XML data associated with multiple execution units |
US8375290B1 (en) * | 2004-02-25 | 2013-02-12 | Avaya Inc. | Document version marking and access method and apparatus |
US7653665B1 (en) | 2004-09-13 | 2010-01-26 | Microsoft Corporation | Systems and methods for avoiding database anomalies when maintaining constraints and indexes in presence of snapshot isolation |
US8713046B2 (en) | 2011-11-08 | 2014-04-29 | Sybase, Inc. | Snapshot isolation support for distributed query processing in a shared disk database cluster |
US8935205B2 (en) | 2011-11-16 | 2015-01-13 | Sap Ag | System and method of performing snapshot isolation in distributed databases |
CN102819615A (zh) * | 2012-08-30 | 2012-12-12 | 天津火星科技有限公司 | 一种基于应用快照的数据库持续数据保护方法 |
US9098522B2 (en) | 2012-11-29 | 2015-08-04 | Sap Se | Version garbage collection using snapshot lists |
US9411533B2 (en) * | 2013-05-23 | 2016-08-09 | Netapp, Inc. | Snapshots and versioning of transactional storage class memory |
US9632878B1 (en) * | 2013-09-20 | 2017-04-25 | Amazon Technologies, Inc. | Verification of database table partitions during backup |
CN104461768B (zh) * | 2013-09-22 | 2018-08-14 | 华为技术有限公司 | 副本存储装置及副本存储方法 |
US9779128B2 (en) * | 2014-04-10 | 2017-10-03 | Futurewei Technologies, Inc. | System and method for massively parallel processing database |
US9990224B2 (en) * | 2015-02-23 | 2018-06-05 | International Business Machines Corporation | Relaxing transaction serializability with statement-based data replication |
CN106598992B (zh) * | 2015-10-15 | 2020-10-23 | 南京中兴软件有限责任公司 | 数据库的操作方法及装置 |
CN106610876B (zh) * | 2015-10-23 | 2020-11-03 | 中兴通讯股份有限公司 | 数据快照的恢复方法及装置 |
US20170139980A1 (en) * | 2015-11-17 | 2017-05-18 | Microsoft Technology Licensing, Llc | Multi-version removal manager |
-
2017
- 2017-06-05 KR KR1020197036437A patent/KR102353141B1/ko active IP Right Grant
- 2017-06-05 EP EP17912603.2A patent/EP3627359B1/en active Active
- 2017-06-05 WO PCT/CN2017/087194 patent/WO2018223262A1/zh unknown
- 2017-06-05 JP JP2020517246A patent/JP6924898B2/ja active Active
- 2017-06-05 CN CN201780002963.7A patent/CN110168514B/zh active Active
-
2019
- 2019-12-04 US US16/703,362 patent/US20200110739A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
KR20200006098A (ko) | 2020-01-17 |
JP2020522830A (ja) | 2020-07-30 |
WO2018223262A1 (zh) | 2018-12-13 |
KR102353141B1 (ko) | 2022-01-19 |
CN110168514B (zh) | 2022-06-10 |
EP3627359A4 (en) | 2020-04-22 |
CN110168514A (zh) | 2019-08-23 |
EP3627359A1 (en) | 2020-03-25 |
US20200110739A1 (en) | 2020-04-09 |
EP3627359B1 (en) | 2023-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5191062B2 (ja) | ストレージ制御システム、ストレージ制御システムに関する操作方法、データ・キャリア及びコンピュータ・プログラム | |
CN106843749B (zh) | 写入请求处理方法、装置及设备 | |
US8352681B2 (en) | Storage system and a control method for accelerating the speed of copy processing | |
US10152500B2 (en) | Read mostly instances | |
EP3580649B1 (en) | Optimizing content storage through stubbing | |
US20130055371A1 (en) | Storage control method and information processing apparatus | |
US11544232B2 (en) | Efficient transaction log and database processing | |
JP2008097214A (ja) | アクセス権管理方法、管理計算機、及び管理プログラム | |
EP3722973A1 (en) | Data processing method and device for distributed database, storage medium, and electronic device | |
CN110520844A (zh) | 云管理平台、虚拟机管理方法及其系统 | |
WO2017008506A1 (zh) | 一种命令处理的方法以及服务器 | |
JP2023541298A (ja) | トランザクション処理方法、システム、装置、機器、及びプログラム | |
JPWO2015118865A1 (ja) | 情報処理装置、情報処理システム及びデータアクセス方法 | |
JP2019503534A (ja) | データベース操作方法及び装置 | |
US20160034191A1 (en) | Grid oriented distributed parallel computing platform | |
CN117321581A (zh) | 用于加速sql查询的确定性分布式高速缓存的技术 | |
US8812468B2 (en) | Database management method | |
US10127270B1 (en) | Transaction processing using a key-value store | |
JP6924898B2 (ja) | トランザクション処理方法、装置及びデバイス | |
JP2022521412A (ja) | 分散システムにおける非同期ストレージ管理 | |
KR101989074B1 (ko) | 데이터베이스 샤딩 환경에서의 복제 로그 기반의 마이그레이션 | |
CN114365109A (zh) | 启用rdma的键-值存储库 | |
CN109976881B (zh) | 事务识别方法和装置、存储介质以及电子装置 | |
US11615092B1 (en) | Lightweight database pipeline scheduler | |
CN115113989A (zh) | 事务执行方法、装置、计算设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191218 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210209 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210423 |
|
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: 20210706 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210802 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6924898 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |