JP6127608B2 - 情報処理装置、データベースアクセス方法、及びプログラム - Google Patents
情報処理装置、データベースアクセス方法、及びプログラム Download PDFInfo
- Publication number
- JP6127608B2 JP6127608B2 JP2013051812A JP2013051812A JP6127608B2 JP 6127608 B2 JP6127608 B2 JP 6127608B2 JP 2013051812 A JP2013051812 A JP 2013051812A JP 2013051812 A JP2013051812 A JP 2013051812A JP 6127608 B2 JP6127608 B2 JP 6127608B2
- Authority
- JP
- Japan
- Prior art keywords
- lock
- application
- request
- record
- pessimistic
- 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
Description
テーブルが構成されたデータベースと、
前記テーブルに対するロック要求が生じてからコミット処理が終わるまでの悲観的ロックを用いたアクセスを管理する悲観的ロック管理テーブルと、
前記テーブルに対するロック要求が生じてからコミット処理が終わるまでの楽観的ロックを用いたアクセスを管理する楽観的ロック管理テーブルと、
悲観的ロックを行う第1アプリケーションから前記テーブルへのロック要求時に、前記悲観的ロック管理テーブルを参照して操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記テーブルを更新する悲観的ロック処理部と、
楽観的ロックを行う第2アプリケーションからの前記テーブルへのロック要求時に、前記テーブルから操作対象レコードの更新状態を取得して前記楽観的ロック管理テーブルに反映し、
前記第2アプリケーションからのコミット要求時に前記悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、
ロック中でなく、かつ更新なしと判定した場合には前記テーブルを更新する楽観的ロック処理部と、を備えるものである。
悲観的ロックを行う第1アプリケーションからデータベース内のテーブルへのロック要求時に、操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記テーブルを更新する悲観的ロック処理ステップと、
楽観的ロックを行う第2アプリケーションからの前記テーブルへのロック要求時に、前記テーブルから操作対象レコードの更新状態を取得して前記楽観的ロック管理テーブルに反映し、前記第2アプリケーションからのコミット要求時に前記悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、ロック中でなく、かつ更新なしと判定した場合には前記テーブルを更新する楽観的ロック処理ステップと、
を有する、ものである。
コンピュータに、
悲観的ロックを行う第1アプリケーションからデータベース内のテーブルへのロック要求時に、操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記テーブルを更新する悲観的ロック処理ステップと、
楽観的ロックを行う第2アプリケーションからの前記テーブルへのロック要求時に、前記テーブルから操作対象レコードの更新状態を取得して前記楽観的ロック管理テーブルに反映し、前記第2アプリケーションからのコミット要求時に前記悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、ロック中でなく、かつ更新なしと判定した場合には前記テーブルを更新する楽観的ロック処理ステップと、
を実行させる、ものである。
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施の形態にかかる情報処理装置の構成を示すブロック図である。情報処理装置1は、アプリケーション100、トランザクション処理部200、及びデータベース300が動作する構成である。情報処理装置1は、CPU(Central Processing Unit)やHDD(Hard Disk Drive)を有するいわゆるコンピュータ装置であり、各種のプログラムによる演算処理を行う。なおアプリケーション100、トランザクション処理部200、及びデータベース300は図1に示すように単一コンピュータ装置上のプログラムとして実行されてもよく、インターネットにより接続された複数のコンピュータ装置上で分散して動作するプログラムとして実現されてもよい。
100(AP1〜APn) アプリケーション
200 トランザクション処理部
210(210−1〜210−n) 楽観的ロック管理テーブル
220 悲観的ロック管理テーブル
230 楽観的ロック処理部
240 悲観的ロック処理部
250 データベースアクセス部
300 データベース
Claims (7)
- アクセス対象テーブルを含むデータベースと、
前記アクセス対象テーブルに対するロック要求が生じてからコミット処理が終わるまでの悲観的ロックを用いたアクセスを管理する悲観的ロック管理テーブルと、
前記アクセス対象テーブルに対するロック要求が生じてからコミット処理が終わるまでの楽観的ロックを用いたアクセスを管理する楽観的ロック管理テーブルと、
悲観的ロックを行う第1アプリケーションから前記アクセス対象テーブルへのロック要求時に、前記悲観的ロック管理テーブルを参照して操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記アクセス対象テーブルを更新する悲観的ロック処理部と、
楽観的ロックを行う第2アプリケーションからの前記アクセス対象テーブルへのロック要求時に、前記アクセス対象テーブルから操作対象レコードの更新状態を取得して前記楽観的ロック管理テーブルに反映し、
前記第2アプリケーションからのコミット要求時に前記悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、
ロック中でなく、かつ更新なしと判定した場合には前記アクセス対象テーブルを更新する楽観的ロック処理部と、
を備える情報処理装置。 - 前記悲観的ロック管理テーブルは、前記アクセス対象テーブルを操作するアプリケーションの識別子と、操作対象のレコードを識別する情報と、操作内容と、を管理し、
前記楽観的ロック管理テーブルは、操作対象のレコードを識別する情報と、操作内容と、前記第2アプリケーションからの前記ロック要求が生じた時の前記第2アプリケーションが操作対象とするレコードの更新状態と、を管理する、請求項1に記載の情報処理装置。 - 前記悲観的ロック処理部は、前記第1アプリケーションからロールバック要求が生じた場合に前記悲観的ロック管理テーブルから前記第1アプリケーションにかかるデータ列を削除する、請求項1または請求項2に記載の情報処理装置。
- 前記楽観的ロック処理部は、前記第2アプリケーションからロールバック要求が生じた場合に前記楽観的ロック管理テーブルから前記第2アプリケーションにかかるデータ列を削除する、請求項1〜請求項3のいずれか1項に記載の情報処理装置。
- 前記更新状態は、最終更新日時または更新順序を示す通番である、請求項2に記載の情報処理装置。
- 悲観的ロックを行う第1アプリケーションからデータベース内のアクセス対象テーブルへのロック要求時に、操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記アクセス対象テーブルを更新する悲観的ロック処理ステップと、
楽観的ロックを行う第2アプリケーションからの前記アクセス対象テーブルへのロック要求時に、前記アクセス対象テーブルから操作対象レコードの更新状態を取得して楽観的ロック管理テーブルに反映し、前記第2アプリケーションからのコミット要求時に悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、ロック中でなく、かつ更新なしと判定した場合には前記アクセス対象テーブルを更新する楽観的ロック処理ステップと、
を有するデータベースアクセス方法。 - コンピュータに、
悲観的ロックを行う第1アプリケーションからデータベース内のアクセス対象テーブルへのロック要求時に、操作対象レコードがロック中かを判定し、ロック中でない場合にはコミット要求に応じて前記アクセス対象テーブルを更新する悲観的ロック処理ステップと、
楽観的ロックを行う第2アプリケーションからの前記アクセス対象テーブルへのロック要求時に、前記アクセス対象テーブルから操作対象レコードの更新状態を取得して楽観的ロック管理テーブルに反映し、前記第2アプリケーションからのコミット要求時に悲観的ロック管理テーブルを参照して前記操作対象レコードがロック中かを判定するとともに、前記第2アプリケーションによる前記ロック要求からコミット要求までの間に前記操作対象レコードに更新が無いかを前記楽観的ロック管理テーブルを参照して判定し、ロック中でなく、かつ更新なしと判定した場合には前記アクセス対象テーブルを更新する楽観的ロック処理ステップと、
を実行させる、プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013051812A JP6127608B2 (ja) | 2013-03-14 | 2013-03-14 | 情報処理装置、データベースアクセス方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013051812A JP6127608B2 (ja) | 2013-03-14 | 2013-03-14 | 情報処理装置、データベースアクセス方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014178831A JP2014178831A (ja) | 2014-09-25 |
JP6127608B2 true JP6127608B2 (ja) | 2017-05-17 |
Family
ID=51698732
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013051812A Active JP6127608B2 (ja) | 2013-03-14 | 2013-03-14 | 情報処理装置、データベースアクセス方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6127608B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6442996B2 (ja) | 2014-11-13 | 2018-12-26 | 日本電気株式会社 | トランザクション処理装置、トラザクション処理方法、及びプログラム |
CN111400283B (zh) * | 2020-03-19 | 2024-02-06 | 中国建设银行股份有限公司 | 一种数据处理方法、系统、电子设备及存储介质 |
CN111797107B (zh) * | 2020-07-08 | 2024-02-09 | 贵州易鲸捷信息技术有限公司 | 混合乐观锁和悲观锁的数据库事务并发控制方法 |
CN114598559A (zh) * | 2021-07-22 | 2022-06-07 | 湖南亚信软件有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0619769A (ja) * | 1992-06-30 | 1994-01-28 | Oki Electric Ind Co Ltd | レコードロック制御方法 |
AU7704696A (en) * | 1995-12-01 | 1997-06-27 | British Telecommunications Public Limited Company | Database access |
JP3450154B2 (ja) * | 1997-04-18 | 2003-09-22 | 日本電気株式会社 | ファイルアクセス処理システム |
US6850938B1 (en) * | 2001-02-08 | 2005-02-01 | Cisco Technology, Inc. | Method and apparatus providing optimistic locking of shared computer resources |
-
2013
- 2013-03-14 JP JP2013051812A patent/JP6127608B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014178831A (ja) | 2014-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10579364B2 (en) | Upgrading bundled applications in a distributed computing system | |
US11099937B2 (en) | Implementing clone snapshots in a distributed storage system | |
US9058351B2 (en) | Apparatus and method for read optimized bulk data storage | |
US11132350B2 (en) | Replicable differential store data structure | |
EP3465473B1 (en) | Versioning and non-disruptive servicing of in-memory units in a database | |
CN108021338B (zh) | 用于实现两层提交协议的系统和方法 | |
US20140149700A1 (en) | Managing write operations to an extent of tracks migrated between storage devices | |
US9009125B2 (en) | Creating and maintaining order of a log stream | |
US8832022B2 (en) | Transaction processing device, transaction processing method and transaction processing program | |
US9734157B1 (en) | Method for sub-block operations on a journal block using ranged locking | |
US11847034B2 (en) | Database-level automatic storage management | |
JP2019204278A (ja) | 情報処理システム、情報処理装置およびプログラム | |
JP5357068B2 (ja) | 情報処理装置、情報処理システム、データ・アーカイブ方法およびデータ削除方法 | |
JP5439236B2 (ja) | 計算機システムおよびアプリケーションプログラムの実行方法 | |
JP6127608B2 (ja) | 情報処理装置、データベースアクセス方法、及びプログラム | |
JP2005532615A (ja) | データ項目の使用可能バージョンの提供 | |
US10664450B2 (en) | Decoupling the commit and replay of metadata updates in a clustered file system | |
US10346362B2 (en) | Sparse file access | |
US10922280B2 (en) | Policy-based data deduplication | |
US11275795B2 (en) | System and method for in-place record content management | |
US11599504B2 (en) | Executing a conditional command on an object stored in a storage system | |
US20110093688A1 (en) | Configuration management apparatus, configuration management program, and configuration management method | |
JP4930553B2 (ja) | データ移行機能を有した装置及びデータ移行方法 | |
US10409651B2 (en) | Incremental workflow execution | |
US11748203B2 (en) | Multi-role application orchestration in a distributed storage system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170308 |
|
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: 20170314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170327 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6127608 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |