JP2008287548A - データベースの制御方法及びプログラム - Google Patents
データベースの制御方法及びプログラム Download PDFInfo
- Publication number
- JP2008287548A JP2008287548A JP2007132571A JP2007132571A JP2008287548A JP 2008287548 A JP2008287548 A JP 2008287548A JP 2007132571 A JP2007132571 A JP 2007132571A JP 2007132571 A JP2007132571 A JP 2007132571A JP 2008287548 A JP2008287548 A JP 2008287548A
- Authority
- JP
- Japan
- Prior art keywords
- data
- transaction
- instruction
- log
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 106
- 239000000872 buffer Substances 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims description 63
- 230000006870 function Effects 0.000 claims description 5
- 230000007717 exclusion Effects 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims 2
- 230000007246 mechanism Effects 0.000 abstract description 122
- 238000007726 management method Methods 0.000 description 47
- 238000013500 data storage Methods 0.000 description 18
- 230000004044 response Effects 0.000 description 15
- 230000008859 change Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 2
- 239000002253 acid Substances 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/23—Updating
- G06F16/2308—Concurrency control
- G06F16/2336—Pessimistic concurrency control approaches, e.g. locking or multiple versions without time stamps
- G06F16/2343—Locking methods, e.g. distributed locking or locking implementation details
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】データベースが操作端末等からトランザクション完了の指示を受け付けたことを契機に、トランザクションが保持するデータのロックを解除するデータベースの制御方法を提供する。データベースは、排他制御機構とログ出力機構とログバッファを含み、ログ出力機構は、操作端末からのトランザクション完了の指示を契機にトランザクション完了のログをログバッファに格納する。排他制御機構は、トランザクション完了のログがログバッファに格納されたことを契機に該トランザクションが保持するロックを解除する。
【選択図】図1
Description
また、ログの多重転送を用いる場合、ログ出力機構は、先行する全てのログ出力の完了している場合に、当該ログ出力が完了したと判断する。
図15は、第2の実施形態を示し、前記第1実施形態のメモリ105の所定の領域に、一時的にデータを格納するデータ退避領域1301を設けたものである。その他の構成は前記第1実施形態と同様であり、同一のものに同一の符号を付した。
図20は、第3の実施形態を示し、前記第1実施形態のストレージ103にリモートコピー機能を加えて、このリモートコピー機能を利用したデータのリモートバックアップシステムに、本発明を適用した場合のシステム構成図である。なお、前記第1実施形態と同一のものには、同一の符号を付して重複した説明を省略する。サーバ102のメモリ105に設定されるログバッファは、前記第1実施形態に示したログバッファ115を、複数のログバッファ115a〜115cで構成する。
102 サーバ
103 ストレージ
106 データベース
107 入出力機構
108 SQL実行機構
109 排他制御機構
110 ログ出力機構
113 トランザクション管理テーブル
114 ロック管理テーブル
115 ログバッファ
116 ログ格納部
117 データ格納部
Claims (13)
- 計算機によって実行され、トランザクションの実行指示に従いデータの管理を行うデータベースの制御方法であって、
前記トランザクションの実行指示を受け付ける処理と、
前記トランザクションの実行指示で指定されたデータ更新を実行する処理と、
前記データ更新のログを出力する処理と、
前記更新したデータを排他的にロックする処理と、
前記トランザクションを完了させるトランザクション完了の指示を受け付ける処理と、
前記トランザクション完了の指示を受け付けたことを契機に、前記トランザクションが更新したデータのロックを解除する処理と、
を含むことを特徴とするデータベースの制御方法。 - 前記トランザクション完了の指示を受け付ける処理は、
前記受け付けたトランザクション完了のログを前記計算機に設定されたログバッファに格納する処理を含み、
前記トランザクションが更新したデータのロックを解除する処理は、
前記トランザクション完了のログをログバッファに格納したことを契機に前記トランザクションが更新したデータのロックを解除することを特徴とする請求項1に記載のデータベースの制御方法。 - 前記更新したデータを排他的にロックする処理は、
前記ロックに対してロック中を示す属性を設定して排他制御を行い、
前記トランザクションが更新したデータのロックを解除する処理は、
前記ロックに対して解除中を示す属性を設定して部分的な排他制御を行うことを特徴とする請求項2に記載のデータベースの制御方法。 - 前記更新したデータを排他的にロックする処理は、
前記ロックに対してロック中を示す属性を設定して排他制御を行う処理を含み、
前記トランザクションが更新したデータのロックを解除する処理は、
前記トランザクション完了のログをログバッファに格納したことを契機に、前記トランザクションが更新したデータのロックに対して解除中を示す属性を設定して部分的な排他制御を行う処理と、
前記ログバッファに格納されたトランザクション完了のログを前記計算機に接続された記憶装置に格納したことを契機に、前記トランザクションが更新したデータのロックを解除する処理と、
を含むことを特徴とする請求項2に記載のデータベースの制御方法。 - 前記トランザクションの実行中に、新たなトランザクションの実行指示を受け付ける処理と、
前記受け付けた新たなトランザクションの実行指示が参照指示または更新指示の何れであるかを判定する処理と、
前記判定した新たなトランザクションの実行指示が参照指示の場合には、前記参照指示で指定されるデータのロックが解除されるまで待機する処理と、
前記判定した新たなトランザクションの実行指示が更新指示の場合には、前記更新指示で指定されるデータのロックの属性が解除中であっても更新を実行する処理と、
を含むことを特徴とする請求項3に記載のデータベースの制御方法。 - 前記参照指示に対して、ロック解除中のデータの参照を許可する参照許可属性を設定可能であって、
前記判定した新たなトランザクションの実行指示が参照指示の場合に、前記参照指示で指定されるデータのロックが解除されるまで待機する処理は、
前記参照指示に参照許可属性が付与されているか否かを判定する処理と、
前記参照指示に参照許可属性が付与されている場合には、参照指示の対象データのロックの属性が解除中の場合であってもデータの参照を実行する処理と、
を含むことを特徴とする請求項5に記載のデータベースの制御方法。 - 前記データベースが管理するデータに対して、ロック解除中のデータの参照を許可する参照許可属性を設定可能であって、
前記判定した新たなトランザクションが参照指示の場合に、前記参照指示で指定されるデータのロックが解除されるまで待機する処理は、
前記参照指示で指定されたデータに参照許可属性が付与されているか否かを判定する処理と、
前記データに参照許可属性が付与されている場合には、参照指示の対象データのロックの属性が解除中の場合であってもデータの参照を実行する処理と、
を含むことを特徴とする請求項5に記載のデータベースの制御方法。 - 前記データベースに対して、ロック解除中のデータに対する参照許可の属性を設定可能であって、
前記判定した新たなトランザクションの実行指示が参照指示の場合には、前記参照指示で指定されるデータのロックが解除されるまで待機する処理は、
前記参照指示の対象データのロックの属性が解除中の場合であってもデータの参照を実行することを特徴とする請求項5に記載のデータベースの制御方法。 - 前記計算機は、データベースが管理するデータを退避する退避領域をさらに有し、
前記トランザクションで指定されたデータを更新する処理は、
更新前のデータを前記退避領域へ退避する処理を含み、
前記データを更新するトランザクションの実行中に、参照指示を含む新たなトランザクションを受け付ける処理と、
前記退避領域に退避されたデータのうち、トランザクション完了ログの出力が完了したトランザクションのデータを用いて、参照指示を実行する処理と、
を含むことを特徴とする請求項3に記載のデータベースの制御方法。 - 計算機によって実行されるデータベースが、前記データベースに対するトランザクションの実行指示を受信し、前記トランザクションを実行し、このトランザクションの実行結果を示すログを生成し、複数のログバッファを使用して、前記ログを前記計算機に接続された記憶装置へ格納するデータベースの制御方法であって、
前記計算機に設定されたログバッファに、トランザクションのログを格納する処理と、
前記ログバッファに格納されたログを前記計算機に接続された記憶装置に書き込む処理と、を含み、
前記各ログバッファに格納されたログを前記計算機に接続された記憶装置に書き込む処理は、
先行して書き込まれた全てのログの書き込みが完了したか否かを判定する処理と、
先行して書き込まれた全てのログの書き込みが完了している場合に、当該ログの書き込みが完了したと判定する処理と、
を含むことを特徴とするデータベースの制御方法。 - プロセッサとメモリを備えた計算機によって実行され、トランザクションの実行指示に従いデータの管理を行うプログラムであって、
前記データベースがトランザクションの実行指示を受け付ける手順と、
前記トランザクションの実行指示で指定されたデータ更新を実行する手順と、
前記データ更新のログを前記メモリに設定されたログバッファへ出力する手順と、
前記更新したデータを排他的にロックする手順と、
前記トランザクションを完了させるトランザクション完了の指示を受け付ける手順と、
前記トランザクション完了の指示を受け付けたことを契機に、前記トランザクションが更新したデータのロックを解除する手順と、
を計算機に機能させることを特徴とするプログラム。 - 前記トランザクション完了指示を受け付ける手順は、
前記受け付けたトランザクション完了のログを前記ログバッファに格納する手順を含み、
前記トランザクションが更新したデータのロックを解除する手順は、
前記トランザクション完了のログをログバッファに格納したことを契機に前記トランザクションが更新したデータのロックを解除することを特徴とする請求項11に記載のプログラム。 - 前記更新したデータを排他的にロックする手順は、
前記ロックに対してロック中を示す属性を設定して排他制御を行い、
前記トランザクションが更新したデータのロックを解除する手順は、
前記ロックに対して解除中を示す属性を設定して部分的な排他制御を行うことを特徴とする請求項12に記載のプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007132571A JP4295333B2 (ja) | 2007-05-18 | 2007-05-18 | データベースの制御方法及びプログラム |
US11/819,310 US8131679B2 (en) | 2007-05-18 | 2007-06-26 | Exclusive control method for database and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007132571A JP4295333B2 (ja) | 2007-05-18 | 2007-05-18 | データベースの制御方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008287548A true JP2008287548A (ja) | 2008-11-27 |
JP4295333B2 JP4295333B2 (ja) | 2009-07-15 |
Family
ID=40028584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007132571A Expired - Fee Related JP4295333B2 (ja) | 2007-05-18 | 2007-05-18 | データベースの制御方法及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8131679B2 (ja) |
JP (1) | JP4295333B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160050930A (ko) * | 2014-10-31 | 2016-05-11 | 에스케이텔레콤 주식회사 | 대용량 분산 파일 시스템에서 데이터의 수정을 포함하는 트랜잭션 처리 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
WO2018056267A1 (ja) * | 2016-09-20 | 2018-03-29 | 日本電気株式会社 | データベース管理装置、データベース管理方法、及びコンピュータ読み取り可能な記録媒体 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8073778B2 (en) * | 2008-09-11 | 2011-12-06 | Linden Research, Inc. | Scalable distributed transaction manager for multi-host transactions |
US8134793B1 (en) | 2010-06-17 | 2012-03-13 | Western Digital Technologies, Inc. | Methods and systems for fast release of data from a host by a disk drive |
CN102110167B (zh) * | 2011-03-01 | 2013-07-31 | 上海维宏电子科技股份有限公司 | 数控系统中实现日志信息管理的方法 |
US10332129B2 (en) * | 2013-11-01 | 2019-06-25 | Salesforce.Com, Inc. | Methods and systems for processing a log file |
US20160034210A1 (en) * | 2014-07-31 | 2016-02-04 | International Business Machines Corporation | Committing data across multiple, heterogeneous storage devices |
US10339126B2 (en) | 2014-08-11 | 2019-07-02 | Salesforce.Com, Inc. | Processing log files using a database system |
US10467198B2 (en) * | 2016-09-15 | 2019-11-05 | Oracle International Corporation | Network partition tolerance in a high available centralized VCS implementation |
CN107977376B (zh) * | 2016-10-24 | 2020-07-07 | 腾讯科技(深圳)有限公司 | 分布式数据库系统及事务处理方法 |
WO2021086875A1 (en) * | 2019-10-31 | 2021-05-06 | Pronto Technology, Inc. | Data enrichment and matching |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5347648A (en) * | 1990-06-29 | 1994-09-13 | Digital Equipment Corporation | Ensuring write ordering under writeback cache error conditions |
JP2737765B2 (ja) | 1995-04-21 | 1998-04-08 | 日本電気株式会社 | 排他制御方式 |
JP2001229063A (ja) | 2000-02-17 | 2001-08-24 | Mitsubishi Electric Corp | データ管理システム |
JP2003140951A (ja) | 2001-11-05 | 2003-05-16 | Ricoh Co Ltd | トランザクション同時実行制御方法およびトランザクション同時実行制御装置 |
JP4331970B2 (ja) | 2003-05-07 | 2009-09-16 | 株式会社日立製作所 | データベースのスナップショット方法及びシステム |
JP4484618B2 (ja) * | 2004-07-30 | 2010-06-16 | 株式会社日立製作所 | ディザスタリカバリシステム、プログラム及びデータの複製方法 |
US20060206538A1 (en) | 2005-03-09 | 2006-09-14 | Veazey Judson E | System for performing log writes in a database management system |
-
2007
- 2007-05-18 JP JP2007132571A patent/JP4295333B2/ja not_active Expired - Fee Related
- 2007-06-26 US US11/819,310 patent/US8131679B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160050930A (ko) * | 2014-10-31 | 2016-05-11 | 에스케이텔레콤 주식회사 | 대용량 분산 파일 시스템에서 데이터의 수정을 포함하는 트랜잭션 처리 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
KR102253841B1 (ko) | 2014-10-31 | 2021-05-18 | 에스케이텔레콤 주식회사 | 대용량 분산 파일 시스템에서 데이터의 수정을 포함하는 트랜잭션 처리 장치 및 컴퓨터로 읽을 수 있는 기록매체 |
WO2018056267A1 (ja) * | 2016-09-20 | 2018-03-29 | 日本電気株式会社 | データベース管理装置、データベース管理方法、及びコンピュータ読み取り可能な記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP4295333B2 (ja) | 2009-07-15 |
US8131679B2 (en) | 2012-03-06 |
US20080288497A1 (en) | 2008-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4295333B2 (ja) | データベースの制御方法及びプログラム | |
KR101805948B1 (ko) | 파일 시스템에 대한 체크포인트 | |
EP3117348B1 (en) | Systems and methods to optimize multi-version support in indexes | |
JP3593366B2 (ja) | デ−タベ−ス管理方法 | |
KR101573965B1 (ko) | 분산형 저장 시스템 내의 데이터의 원자 다중 변경 | |
JP4237354B2 (ja) | トランザクション処理方法及びトランザクション処理システム | |
US11132350B2 (en) | Replicable differential store data structure | |
KR100862661B1 (ko) | 지연된 로깅 방법 및 그 장치 | |
JP5343399B2 (ja) | 管理プログラム、管理方法、及び管理装置 | |
EP3493071B1 (en) | Multi-version concurrency control (mvcc) in non-volatile memory | |
US8832022B2 (en) | Transaction processing device, transaction processing method and transaction processing program | |
JP2000284995A (ja) | データ処理装置及び記録媒体 | |
CN108021338B (zh) | 用于实现两层提交协议的系统和方法 | |
CN102024015A (zh) | 用于批量删除数据库系统的数据记录的方法 | |
JP6361223B2 (ja) | トランザクションシステム | |
US20130085988A1 (en) | Recording medium, node, and distributed database system | |
JP6293709B2 (ja) | ストレージシステムおよびストレージシステム用プログラム | |
TWI815622B (zh) | 資訊處理裝置 | |
JP3785004B2 (ja) | トランザクション管理方法及びトランザクション管理装置 | |
JP2023511743A (ja) | 確率的データ構造を使用した要求の低減 | |
JPH05307478A (ja) | データベース管理システムの構成法 | |
JP4139642B2 (ja) | データベース管理方法およびシステム | |
WO1993003436A1 (en) | Method and apparatus for reducing lock period of shared buffer | |
WO2017060941A1 (ja) | 複数のデータの整合性を維持するデータ管理システム及びデータ管理方法 | |
WO2018193638A1 (ja) | 計算機及びトランザクション処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081216 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090216 |
|
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: 20090407 |
|
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: 20090409 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120417 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4295333 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: 20120417 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140417 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |