JP2013045356A - トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム - Google Patents
トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム Download PDFInfo
- Publication number
- JP2013045356A JP2013045356A JP2011183876A JP2011183876A JP2013045356A JP 2013045356 A JP2013045356 A JP 2013045356A JP 2011183876 A JP2011183876 A JP 2011183876A JP 2011183876 A JP2011183876 A JP 2011183876A JP 2013045356 A JP2013045356 A JP 2013045356A
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- execution
- time
- control system
- until
- 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
- 238000000034 method Methods 0.000 title claims description 13
- 230000006870 function Effects 0.000 claims description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 101100328883 Arabidopsis thaliana COL1 gene Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002688 persistence Effects 0.000 description 2
- 101100328890 Arabidopsis thaliana COL3 gene Proteins 0.000 description 1
- 101100328886 Caenorhabditis elegans col-2 gene Proteins 0.000 description 1
- 206010000210 abortion Diseases 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
- G06F9/467—Transactional memory
-
- 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/1474—Saving, restoring, recovering or retrying in transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】トランザクションの同時実行制御を行うトランザクション同時実行制御システム100において、トランザクション同時実行制御装置2は、トランザクションを実行するトランザクション実行手段21と、トランザクションのコミットが失敗であった場合に、トランザクションの再実行までの待ち時間を計算するバックオフ時間決定手段24と、トランザクションのコミットが失敗であった場合に、待ち時間が経過するまでトランザクションの再実行を待機させるトランザクションプール手段25を備える。
【選択図】図1
Description
次に、本発明を実施するための形態について、図面を参照して詳細に説明する。
図1は、本発明の実施の形態1によるトランザクション同時実行制御システム100の構成を示すブロック図である。図に示すように、トランザクション同時実行制御システム100は、トランザクション発行装置1、トランザクション同時実行制御装置2、およびストレージ(永続化装置)3を備えている。
トランザクション実行時間測定手段22は、トランザクション実行手段21がトランザクション実行を開始してから完了(コミット成功または失敗)するまでの時間を測定する。
バックオフ時間決定手段24は、CAS操作手段23によって当該トランザクションがコミット失敗と判断された場合、トランザクション実行時間測定手段22で測定したトランザクション実行時間に基づき、トランザクション再実行までの待ち時間(バックオフ時間)を計算する。
トランザクションプール手段25は、バックオフ時間決定手段24で計算したバックオフ時間が経過するまで、トランザクション再実行を待機するよう制御する。
ストレージ3は、記憶装置により実装される。
図2は、トランザクション同時実行制御システム100の動作のフローチャートである。
トランザクション同時実行制御装置2は、トランザクション発行装置1からトランザクションを受信すると、トランザクション実行手段21において生成したプランにしたがってトランザクションを実行する(ステップA1)。
トランザクション発行装置1は、WEBサーバ、アプリケーションサーバ等で実現される。トランザクション同時実行制御装置2は、データベースマネージメントシステム、Key−Value−Store(Voldemort,HBase,kumofs等)で実現される。ストレージ3は、DBMS(MySQL)の場合はInnoDB等、KVS(Voldemort)の場合はBerkleyDB等で実現される。
図7は、本発明の実施の形態2によるトランザクション同時実行制御システム200の構成を示すブロック図である。図1と同一の符号は、同様の構成要素を表している。図7に示すように、実施の形態2によるトランザクション同時実行制御システム200は、実施の形態1の構成に加え、トランザクション優先度決定手段31と、インターバル時間決定手段32を備えている。
図8は、トランザクション同時実行制御システム200の動作のフローチャートである。ステップA1〜A3の動作は実施の形態1と同様である。
トランザクション同時実行制御装置2のトランザクション優先度決定手段31は、トランザクション発行装置1がトランザクション毎に指定する優先度(例えば、HIGH,MIDDLE,LOW)を取得する。
バックオフ時間決定手段24は、実施の形態1で用いたバックオフ時間にインターバル時間を加算した値をバックオフ時間として算出する(式3)。
(付記1)トランザクションの同時実行制御を行うトランザクション同時実行制御システムであって、
前記トランザクションを実行するトランザクション実行部と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算するバックオフ時間決定部と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させるトランザクションプール部を備えた、トランザクション同時実行制御システム。
前記バックオフ時間決定部は、
前記トランザクションの再実行のコミットが失敗であった場合に、前回計算した待ち時間から前記実行時間を減算した値を、次回の再実行までの待ち時間とする、付記1または2に記載のトランザクション同時実行制御システム。
前記実行優先度に基づいて、前記トランザクションを再実行するまでのインターバル時間を決定するインターバル時間決定部と、を備え、
前記バックオフ時間決定部は、
前記インターバル時間を用いて前記トランザクションの再実行までの待ち時間を調整する、付記1から3のいずれかに記載のトランザクション同時実行制御システム。
前記トランザクションの再実行のコミットが失敗であった場合に、前回計算した待ち時間に前記インターバル時間を加算した値を、次回の再実行までの待ち時間とする、付記4に記載のトランザクション同時実行制御システム。
前記トランザクションを実行する工程と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算する工程と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させる工程と、を備えた、トランザクション同時実行制御方法。
トランザクションの同時実行制御を行うトランザクション同時実行制御装置として機能させるプログラムであって、
前記コンピュータを、
前記トランザクションを実行するトランザクション実行部と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算するバックオフ時間決定部と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させるトランザクションプール部、として機能させるプログラム。
Claims (8)
- トランザクションの同時実行制御を行うトランザクション同時実行制御システムであって、
前記トランザクションを実行するトランザクション実行部と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算するバックオフ時間決定部と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させるトランザクションプール部を備えた、トランザクション同時実行制御システム。 - 前記バックオフ時間決定部は、所定の上限値および下限値の間に含まれる乱数値を用いて、前記トランザクションの再実行までの待ち時間を計算する、請求項1に記載のトランザクション同時実行制御システム。
- 前記トランザクション実行部がトランザクション実行を開始してから完了するまでの実行時間を測定するトランザクション実行時間測定部を備え、
前記バックオフ時間決定部は、
前記トランザクションの再実行のコミットが失敗であった場合に、前回計算した待ち時間から前記実行時間を減算した値を、次回の再実行までの待ち時間とする、請求項1または2に記載のトランザクション同時実行制御システム。 - 前記トランザクションの実行優先度を決定するトランザクション優先度決定部と、
前記実行優先度に基づいて、前記トランザクションを再実行するまでのインターバル時間を決定するインターバル時間決定部と、を備え、
前記バックオフ時間決定部は、
前記インターバル時間を用いて前記トランザクションの再実行までの待ち時間を調整する、請求項1から3のいずれかに記載のトランザクション同時実行制御システム。 - 前記バックオフ時間決定部は、
前記トランザクションの再実行のコミットが失敗であった場合に、前回計算した待ち時間に前記インターバル時間を加算した値を、次回の再実行までの待ち時間とする、請求項4に記載のトランザクション同時実行制御システム。 - 前記トランザクションの同時実行制御は、楽観的ロックに基づくトランザクション同時実行制御である、請求項1から5のいずれかに記載のトランザクション同時実行制御システム。
- トランザクションの同時実行制御を行うトランザクション同時実行制御方法であって、
前記トランザクションを実行する工程と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算する工程と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させる工程と、を備えた、トランザクション同時実行制御方法。 - コンピュータを、
トランザクションの同時実行制御を行うトランザクション同時実行制御装置として機能させるプログラムであって、
前記コンピュータを、
前記トランザクションを実行するトランザクション実行部と、
前記トランザクションのコミットが失敗であった場合に、前記トランザクションの再実行までの待ち時間を計算するバックオフ時間決定部と、
前記トランザクションのコミットが失敗であった場合に、前記待ち時間が経過するまで前記トランザクションの再実行を待機させるトランザクションプール部、として機能させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011183876A JP5754301B2 (ja) | 2011-08-25 | 2011-08-25 | トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム |
US13/553,765 US9170837B2 (en) | 2011-08-25 | 2012-07-19 | Transaction concurrent execution control system, method and program for carrying out a control of concurrently executing a transaction, including measuring execution time from starting to ending of transaction execution |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011183876A JP5754301B2 (ja) | 2011-08-25 | 2011-08-25 | トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013045356A true JP2013045356A (ja) | 2013-03-04 |
JP5754301B2 JP5754301B2 (ja) | 2015-07-29 |
Family
ID=47745616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011183876A Expired - Fee Related JP5754301B2 (ja) | 2011-08-25 | 2011-08-25 | トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9170837B2 (ja) |
JP (1) | JP5754301B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014192213A1 (ja) * | 2013-05-31 | 2014-12-04 | 日本電気株式会社 | 分散処理システム |
WO2016143095A1 (ja) * | 2015-03-11 | 2016-09-15 | 株式会社日立製作所 | 計算機システム及びトランザクション処理の管理方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015143120A1 (en) | 2014-03-20 | 2015-09-24 | LogicBlox, Inc. | Transaction repair |
CN106155846B (zh) * | 2015-04-15 | 2019-06-28 | 伊姆西公司 | 对块对象执行批量故障回复的方法和装置 |
CA3113389C (en) * | 2017-09-29 | 2023-12-19 | Leverage Rock Llc | Transaction privacy in public distributed ledger systems |
WO2019195086A1 (en) * | 2018-04-03 | 2019-10-10 | Walmart Apollo, Llc | Customized service request permission control system |
US10931450B1 (en) * | 2018-04-27 | 2021-02-23 | Pure Storage, Inc. | Distributed, lock-free 2-phase commit of secret shares using multiple stateless controllers |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1027122A (ja) * | 1996-07-08 | 1998-01-27 | Fuji Xerox Co Ltd | データベース管理システム |
JPH11234269A (ja) * | 1997-12-12 | 1999-08-27 | Ricoh Co Ltd | 分散型データベースシステムの一貫性管理方法およびコンピュータ読み取り可能な記録媒体 |
US20040015510A1 (en) * | 2002-07-16 | 2004-01-22 | Sun Microsystems, Inc. | Obstruction-free synchronization for shared data structures |
US20110107338A1 (en) * | 2009-11-03 | 2011-05-05 | Tatu Ylonen Oy Ltd | Selecting isolation level for an operation based on manipulated objects |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5572546A (en) * | 1994-12-22 | 1996-11-05 | Motorola, Inc. | Data communications system with multilink protocol |
WO2001081829A1 (en) * | 2000-04-27 | 2001-11-01 | Brio Technology, Inc. | Method and apparatus for processing jobs on an enterprise-wide computer system |
US20050028147A1 (en) * | 2003-07-28 | 2005-02-03 | Carlos Bonilla | Emulation and native language interface testing system and method |
US7546335B2 (en) * | 2004-09-02 | 2009-06-09 | Broadway Technology, Llc | System and method for a data protocol layer and the transfer of data objects using the data protocol layer |
JP2007183838A (ja) * | 2006-01-06 | 2007-07-19 | Fujitsu Ltd | クエリーパラメーター出力ページ発見プログラム、クエリーパラメーター出力ページ発見方法およびクエリーパラメーター出力ページ発見装置 |
US20090172674A1 (en) * | 2007-12-28 | 2009-07-02 | International Business Machines Corporation | Managing the computer collection of information in an information technology environment |
JP2009181206A (ja) * | 2008-01-29 | 2009-08-13 | Hitachi Ltd | ストレージシステム及びスナップショット構成の移行方法 |
US8156275B2 (en) * | 2009-05-13 | 2012-04-10 | Apple Inc. | Power managed lock optimization |
US9280444B2 (en) * | 2010-10-11 | 2016-03-08 | Sap Se | System and method for identifying contention of shared resources in a runtime system |
US20120239525A1 (en) * | 2011-03-18 | 2012-09-20 | Hewlett-Packard Company | System and method for generating quantitative guideline for print order |
-
2011
- 2011-08-25 JP JP2011183876A patent/JP5754301B2/ja not_active Expired - Fee Related
-
2012
- 2012-07-19 US US13/553,765 patent/US9170837B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1027122A (ja) * | 1996-07-08 | 1998-01-27 | Fuji Xerox Co Ltd | データベース管理システム |
JPH11234269A (ja) * | 1997-12-12 | 1999-08-27 | Ricoh Co Ltd | 分散型データベースシステムの一貫性管理方法およびコンピュータ読み取り可能な記録媒体 |
US20040015510A1 (en) * | 2002-07-16 | 2004-01-22 | Sun Microsystems, Inc. | Obstruction-free synchronization for shared data structures |
US20110107338A1 (en) * | 2009-11-03 | 2011-05-05 | Tatu Ylonen Oy Ltd | Selecting isolation level for an operation based on manipulated objects |
Non-Patent Citations (2)
Title |
---|
CSNG201100547022; 江藤 正通: 'LogTMにおける適切な競合レベル選択による効率的ロールバック' 情報処理学会研究報告 2011(平成23)年度 ▲2▼ [CD-ROM], 20110815, Vol.2011-ARC-196 No.22, 一般社団法人情報処理学会 * |
JPN6015005597; 江藤 正通: 'LogTMにおける適切な競合レベル選択による効率的ロールバック' 情報処理学会研究報告 2011(平成23)年度 ▲2▼ [CD-ROM], 20110815, Vol.2011-ARC-196 No.22, 一般社団法人情報処理学会 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014192213A1 (ja) * | 2013-05-31 | 2014-12-04 | 日本電気株式会社 | 分散処理システム |
JP6079876B2 (ja) * | 2013-05-31 | 2017-02-15 | 日本電気株式会社 | 分散処理システム |
US10284649B2 (en) | 2013-05-31 | 2019-05-07 | Nec Corporation | Distributed processing system |
WO2016143095A1 (ja) * | 2015-03-11 | 2016-09-15 | 株式会社日立製作所 | 計算機システム及びトランザクション処理の管理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20130055269A1 (en) | 2013-02-28 |
JP5754301B2 (ja) | 2015-07-29 |
US9170837B2 (en) | 2015-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5754301B2 (ja) | トランザクション同時実行制御システム、トランザクション同時実行制御方法、およびプログラム | |
Mehdi et al. | I {Can’t} Believe {It’s} Not Causal! Scalable Causal Consistency with No Slowdown Cascades | |
US10747745B2 (en) | Transaction execution commitment without updating of data row transaction status | |
US10296371B2 (en) | Passive two-phase commit system for high-performance distributed transaction execution | |
US9965359B2 (en) | Log forwarding to avoid deadlocks during parallel log replay in asynchronous table replication | |
CA2981476C (en) | Processing database transactions in a distributed computing system | |
US10157108B2 (en) | Multi-way, zero-copy, passive transaction log collection in distributed transaction systems | |
WO2021042733A1 (zh) | 区块链事务处理方法、装置、计算机设备及存储介质 | |
EP2738698A2 (en) | Locking protocol for partitioned and distributed tables | |
US9652492B2 (en) | Out-of-order execution of strictly-ordered transactional workloads | |
US10706019B2 (en) | Database processing after a lock condition | |
US20130339312A1 (en) | Inter-Query Parallelization of Constraint Checking | |
Chairunnanda et al. | ConfluxDB: Multi-master replication for partitioned snapshot isolation databases | |
WO2022048358A1 (zh) | 数据处理方法、装置及存储介质 | |
CN112231070A (zh) | 数据写入、读取方法、装置及服务器 | |
EP3869377A1 (en) | Method and apparatus for data processing based on smart contract, device and storage medium | |
EP3039534A1 (en) | Generating an idempotent workflow | |
CN110866011B (zh) | 数据表同步方法、装置、计算机设备和存储介质 | |
Choi et al. | Improving database system performance by applying NoSQL | |
CN113296897B (zh) | 一种分布式事务的处理方法、装置、设备和机器可读介质 | |
WO2024098363A1 (zh) | 一种基于多核处理器的并发事务处理方法及其系统 | |
CN116974983A (zh) | 数据处理方法、装置、计算机可读介质及电子设备 | |
WO2015065450A1 (en) | Non-blocking registration in distributed transactions | |
CN112783613B (zh) | 一种单元调度的方法和装置 | |
CN112162988A (zh) | 一种分布式事务的处理方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140710 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150205 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150410 |
|
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: 20150428 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150511 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5754301 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |