JP4476011B2 - データベースシステム、データベース不整合回避方法およびプログラム - Google Patents
データベースシステム、データベース不整合回避方法およびプログラム Download PDFInfo
- Publication number
- JP4476011B2 JP4476011B2 JP2004129170A JP2004129170A JP4476011B2 JP 4476011 B2 JP4476011 B2 JP 4476011B2 JP 2004129170 A JP2004129170 A JP 2004129170A JP 2004129170 A JP2004129170 A JP 2004129170A JP 4476011 B2 JP4476011 B2 JP 4476011B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- database
- transaction
- update
- lock
- 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 - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
同一の内容が複製されている複数のデータベースを格納するデータベースシステムであって、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データを更新するトランザクションを受け付ける受け付け手段と、
前記受け付け手段で受け付けたトランザクションで指定されたデータに対応する各データベース上のデータを指定された順序でデータベース毎にロックする排他制御手段と、
前記排他制御手段でデータがロックされた場合に、ロックされたデータを更新するデータ更新手段と、
を備え、
前記排他制御手段は、
前記受け付け手段において、ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションがデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
該複数のトランザクションのデータをロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
ことを特徴とする。
また、この発明によれば、データのロックに関し、1つのデータベースのタイムアウト時間が他のデータベースのタイムアウト時間より、短く設定されている。このため、あるデータベースでタイムアウトが発生すると、本データベースシステムは複数のトランザクションのデータをロックする順序が異なっていることが判別できる。この場合、タイムアウト時間が最も短く設定されているデータをロックしたトランザクションが、データを更新する。
前記排他制御手段は、該更新を許可すべきトランザクションでないトランザクションが前記データをロックしている場合には、そのロックを解除した後に、更新を許可すべきトランザクションのために前記データをロックする、ことが望ましい。
同一の内容が複製されている複数のデータベースを格納するデータベースシステムが実行するデータベース不整合回避方法であって、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データを更新するトランザクションを受け付ける受け付けステップと、
前記受け付けステップで受け付けたトランザクションで指定されたデータに対応する各データベース上のデータを指定された順序でデータベース毎にロックする排他制御ステップと、
前記排他制御ステップでデータがロックされた場合に、ロックされたデータを更新するデータ更新ステップと、
を備え、
前記排他制御ステップにおいては、
前記受け付けステップにおいて、ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションがデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
該複数のトランザクションのデータをロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
ことを特徴とする。
同一の内容が複製されている複数のデータベースを格納するコンピュータ装置を、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データベースに格納されているデータを更新するトランザクションを受け付け、
前記トランザクションで指定されたデータベース上のデータを指定された順序でロックして、
ロックされたデータを更新する、
データベース装置であって、
ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションのデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
ロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
データベース装置として機能させる。
以下、データベースの更新とは、フィールド値の更新、テーブルやレコード、フィールドの生成・追加・削除などのデータベースに格納されているデータの内容を変更すること一般を指すものとする。
トランザクション管理部111は、通信ネットワークCと通信制御部150とを介して、クライアント端末200と201とから送信されたトランザクションを受け付け、トランザクションの処理結果を送信してきたクライアント端末200あるいは201に返信する。参照トランザクションの場合には、トランザクション管理部111は、DB160からこの参照トランザクションで必要となるデータを読み出し、クライアント端末200あるいは201に送信する。更新トランザクションの場合には、DB160内の更新トランザクションで指定されたデータに対し、ロックをかけ、かけたロックをロック管理部112に管理させる。
クライアント端末201の構成はクライアント端末200の構成と同一である。
第1の動作例では、サーバ100の動作とサーバ101の動作とは同一である。
まず、端末200は、通信ネットワークCを介して、更新対象のデータのロックをサーバ100と101とに指示を出すとともに(図5:ステップS101)、更新するデータをサーバ100と101とに送信する。
第2の動作例は、第1の動作例で使用した図5、6と共に、図7を参照して説明する。図7は、サーバ101のデータ更新処理時の動作を示したフローチャートである。図7の各ステップにおいて、図6に示したステップと同じ処理には、下2桁に同じ数字を付している。以下、動作例1で説明したステップについては説明を省略する。
100、101 データベースサーバ
110 制御部
120 プログラム格納部
13 入力装置
130 入力制御部
14 出力装置
140 出力制御部
150 通信制御部
160 データベース
200、201 クライアント端末
21 制御部
22 記憶部
23 入力部
24 出力部
25 通信制御部
Claims (4)
- 同一の内容が複製されている複数のデータベースを格納するデータベースシステムであって、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データを更新するトランザクションを受け付ける受け付け手段と、
前記受け付け手段で受け付けたトランザクションで指定されたデータに対応する各データベース上のデータを指定された順序でデータベース毎にロックする排他制御手段と、
前記排他制御手段でデータがロックされた場合に、ロックされたデータを更新するデータ更新手段と、
を備え、
前記排他制御手段は、
前記受け付け手段において、ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションがデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
該複数のトランザクションのデータをロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
ことを特徴とするデータベースシステム。 - 前記排他制御手段は、該更新を許可すべきトランザクションでないトランザクションが前記データをロックしている場合には、そのロックを解除した後に、更新を許可すべきトランザクションのために前記データをロックする、ことを特徴とする請求項1に記載のデータベースシステム。
- 同一の内容が複製されている複数のデータベースを格納するデータベースシステムが実行するデータベース不整合回避方法であって、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データを更新するトランザクションを受け付ける受け付けステップと、
前記受け付けステップで受け付けたトランザクションで指定されたデータに対応する各データベース上のデータを指定された順序でデータベース毎にロックする排他制御ステップと、
前記排他制御ステップでデータがロックされた場合に、ロックされたデータを更新するデータ更新ステップと、
を備え、
前記排他制御ステップにおいては、
前記受け付けステップにおいて、ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションがデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
該複数のトランザクションのデータをロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
ことを特徴とするデータベース不整合回避方法。 - 同一の内容が複製されている複数のデータベースを格納するコンピュータ装置を、
1つのデータベースに対し、データのロックに関し、他のデータベースと比較して短いタイムアウト時間が設定されており、
データベースに格納されているデータを更新するトランザクションを受け付け、
前記トランザクションで指定されたデータベース上のデータを指定された順序でロックして、
ロックされたデータを更新する、
データベース装置であって、
ロックに関する排他制御処理のデータ単位が同じである、同一のデータを更新する複数のトランザクションが受け付けられた場合に、該複数のトランザクションのデータをロックする順序が異なるか否かを、タイムアウトが発生したか否かにより判別し、
ロックする順序が異なると判別した場合に、さらに該複数のトランザクションのうち、最も短いタイムアウト時間が設定されているデータベース上のデータをロックしているトランザクションを、データの更新を許可すべきトランザクションに設定し、該更新を許可すべきトランザクションのために前記データをロックする、
データベース装置として機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004129170A JP4476011B2 (ja) | 2004-04-26 | 2004-04-26 | データベースシステム、データベース不整合回避方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004129170A JP4476011B2 (ja) | 2004-04-26 | 2004-04-26 | データベースシステム、データベース不整合回避方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005310012A JP2005310012A (ja) | 2005-11-04 |
JP4476011B2 true JP4476011B2 (ja) | 2010-06-09 |
Family
ID=35438682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004129170A Expired - Fee Related JP4476011B2 (ja) | 2004-04-26 | 2004-04-26 | データベースシステム、データベース不整合回避方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4476011B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4486108B2 (ja) * | 2007-04-27 | 2010-06-23 | 株式会社大和証券グループ本社 | データ処理システム、端末装置及びプログラム |
US8701111B2 (en) | 2008-07-09 | 2014-04-15 | International Business Machines Corporation | Lock windows for reducing contention |
-
2004
- 2004-04-26 JP JP2004129170A patent/JP4476011B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005310012A (ja) | 2005-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4241940B2 (ja) | 分散形データベース内でトランザクションをするための方法 | |
US5802062A (en) | Preventing conflicts in distributed systems | |
CN107771321B (zh) | 数据中心中的恢复 | |
US9229827B2 (en) | Storage management system for preserving consistency of remote copy data | |
EP0684558A1 (en) | Distributed data processing system | |
US20170177617A1 (en) | Three phase commit for a distributed file system | |
US20070078911A1 (en) | Replicating data across the nodes in a cluster environment | |
EP3193256B1 (en) | A fault-tolerant data processing computer system and method for implementing a distributed two-tier state machine | |
EP1386234A2 (en) | Resource action in clustered computer system incorporating prepare operation | |
EP4276651A1 (en) | Log execution method and apparatus, and computer device and storage medium | |
JP4549793B2 (ja) | データ処理方法、データベースシステム及びストレージ装置 | |
US6944787B2 (en) | System-managed duplexing of coupling facility structures | |
CN115098229A (zh) | 事务处理方法、装置、节点设备及存储介质 | |
JP3445797B2 (ja) | 最適化された同期化プロシージャ | |
KR20140047230A (ko) | 분산 시스템에서 분산 트랜잭션의 최적화를 위한 방법 및 트랜잭션을 최적화한 분산 시스템 | |
US6842763B2 (en) | Method and apparatus for improving message availability in a subsystem which supports shared message queues | |
EP0834122A1 (en) | Synchronisation procedure in a routing node | |
US8479044B2 (en) | Method for determining a state associated with a transaction | |
JP4476011B2 (ja) | データベースシステム、データベース不整合回避方法およびプログラム | |
CN115495495A (zh) | 事务处理方法、分布式数据库系统、集群及介质 | |
JP2009169449A (ja) | 高信頼化データベースシステムおよびその同期方法、仲介方法、仲介装置、仲介プログラム | |
JP2007264770A (ja) | データベースアクセス方法及び装置 | |
JP5240861B2 (ja) | 制御装置、データ移行システム、データ移行方法およびプログラム | |
CN101488134A (zh) | 数据库系统的复制环境内的高性能修改事务的方法及系统 | |
Arika et al. | A survey on efficient concurrency control algorithm in distributed database systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070131 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091006 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091020 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091218 |
|
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: 20100309 |
|
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: 20100309 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4476011 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: 20130319 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140319 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 |
|
LAPS | Cancellation because of no payment of annual fees |