JP2002297423A - Write delay database management method, device, program and recording medium - Google Patents
Write delay database management method, device, program and recording mediumInfo
- Publication number
- JP2002297423A JP2002297423A JP2001101024A JP2001101024A JP2002297423A JP 2002297423 A JP2002297423 A JP 2002297423A JP 2001101024 A JP2001101024 A JP 2001101024A JP 2001101024 A JP2001101024 A JP 2001101024A JP 2002297423 A JP2002297423 A JP 2002297423A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data holding
- search
- deletion
- database management
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 71
- 238000003780 insertion Methods 0.000 claims abstract description 106
- 230000037431 insertion Effects 0.000 claims abstract description 105
- 238000012217 deletion Methods 0.000 claims abstract description 99
- 238000012545 processing Methods 0.000 claims abstract description 68
- 238000013500 data storage Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000012546 transfer Methods 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 34
- 230000037430 deletion Effects 0.000 claims description 94
- 230000008859 change Effects 0.000 claims description 56
- 238000010923 batch production Methods 0.000 claims description 6
- 230000003111 delayed effect Effects 0.000 claims description 5
- 238000013523 data management Methods 0.000 claims 1
- 230000004044 response Effects 0.000 abstract description 18
- 238000012986 modification Methods 0.000 abstract 2
- 230000004048 modification Effects 0.000 abstract 2
- 230000006870 function Effects 0.000 description 7
- 238000002955 isolation Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、データベース管理
方法、システム、プログラム、及び記録媒体に関し、よ
り詳細には、例えば文書管理システムのように更新と検
索が頻繁に発生するデータベースシステムに適用可能
な、データベースの更新及び検索の処理を行うためのデ
ータベース管理方法、システム、プログラム、及び記録
媒体に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a database management method, system, program, and recording medium, and more particularly, to a database system in which updating and retrieval frequently occur, such as a document management system. The present invention relates to a database management method, system, program, and recording medium for performing database update and search processing.
【0002】[0002]
【従来の技術】リレーショナルデータベースはデータを
表で表現して扱う。表はタプルの集合であり、タプルは
属性値の並びである。表の実体はファイルに格納され
る。データベースに対する操作は、検索操作、挿入操
作、更新操作、及び削除操作に分けることができる。検
索操作は属性値に関する条件を検索条件として与えてそ
れに合致するタプルの集合を得る操作である。挿入操作
は与えられた属性値を持った新たなタプルを表に挿入す
る操作である。更新操作は表から選び出されたタプルの
属性値を新たな値に変更する操作である。削除操作は表
から選び出されたタプルを削除する操作である。挿入
(Insert)操作、更新(Update)操作、削
除(Delete)操作をまとめてここでは変更操作と
呼ぶことにする。2. Description of the Related Art A relational database handles data by expressing it in a table. A table is a set of tuples, and a tuple is a sequence of attribute values. The entity of the table is stored in the file. Operations on the database can be divided into search operations, insert operations, update operations, and delete operations. The search operation is an operation of giving a condition regarding an attribute value as a search condition and obtaining a set of tuples that match the condition. The insert operation is an operation for inserting a new tuple having a given attribute value into a table. The update operation is an operation for changing the attribute value of the tuple selected from the table to a new value. The delete operation is an operation for deleting the tuple selected from the table. The insert (Insert) operation, the update (Update) operation, and the delete (Delete) operation are collectively referred to herein as a change operation.
【0003】リレーショナルデータベースで代表される
データベースを用いたシステムで重要視される性能のひ
とつは検索操作に対する応答時間である。検索操作に対
する応答時間を短縮するために用いられる方法は索引フ
ァイルの導入である。索引ファイルはひとつ又は複数の
属性値を特定の構造に変換することでそれらの属性値に
関する条件を高速に評価できるようにしたものとして一
般化することができる。One of the important performances in a system using a database represented by a relational database is a response time to a search operation. A method used to reduce the response time to a search operation is the introduction of an index file. The index file can be generalized as one that converts one or a plurality of attribute values into a specific structure so that conditions relating to those attribute values can be quickly evaluated.
【0004】一方、変更操作においては索引ファイルの
更新にかかる時間が性能を低下させる原因となってい
る。これまでは変更操作に対する応答時間で測られる性
能は重要視されてこなかった。それは検索操作に比べて
変更操作の要求頻度が少ないこと、利用形態として通常
はおもに検索操作のみが実行され、大量の変更操作は夜
間などにシステムを停止した状態で行うことができるこ
と、などの状況によっている。[0004] On the other hand, in the change operation, the time required for updating the index file causes the performance to deteriorate. Until now, performance measured by response time to a change operation has not been valued. That is, the frequency of requesting change operations is lower than that of search operations, and as a usage form, usually only search operations are performed, and a large amount of change operations can be performed with the system stopped at night etc. Depending on.
【0005】しかし、オンラインシステムのようにリア
ルタイム性が求められる場合においては変更操作に対す
る応答時間が重要視される。このような問題に対し、例
えば、特開平10−143412号公報の「データベー
ス管理システム」では、データベースへの書き込みを磁
気ディスクに反映する前に不揮発性メモリに一時的に保
持して、該当データの参照には磁気ディスクの代わりに
不揮発性メモリをディスクキャッシュとして用いてい
る。しかしながら、ディスクキャッシュには構造が単純
なデータしかおくことができず、高機能の索引ファイル
を用いることはできないという問題が生じる。However, when real-time properties are required as in an online system, response time to a change operation is regarded as important. To deal with such a problem, for example, in a “database management system” disclosed in Japanese Patent Application Laid-Open No. H10-143412, a write to a database is temporarily stored in a non-volatile memory before being reflected on a magnetic disk, and For reference, a non-volatile memory is used as a disk cache instead of a magnetic disk. However, there is a problem that only data having a simple structure can be stored in the disk cache, and a high-performance index file cannot be used.
【0006】データベースシステムを複数のユーザが同
時に利用する場合、検索操作と変更操作が非同期に要求
される。このときにデータの一貫性を保つためにトラン
ザクション処理が用いられる。トランザクション処理に
ついては[1]「“トランザクション処理システム入
門” フィリップ・A・バーンスタイン、エリック・ニ
ューカマー 日経BP社」に詳しく説明されている。When a plurality of users simultaneously use a database system, a search operation and a change operation are requested asynchronously. At this time, transaction processing is used to maintain data consistency. The transaction processing is described in detail in [1] "Introduction to Transaction Processing System" by Philip A. Bernstein and Eric Newcomer Nikkei BP.
【0007】トランザクションを完全に隔離するとデー
タの一貫性がどの時点においても保証されるようになる
が、同時実行性の低下によって全体のスループットが著
しく低下する場合がある。この問題を回避するためにア
イソレーションレベルの概念が用いられる。アイソレー
ションレベルについては[2]「“A Critiqu
e of ANSI SQL Isolation L
evels” HalBerenson, Phili
p A Bernstein, Jim Gray,
Jim Melton, Elizabeth J.
O’Neil, Patrick E. O,Neil
Proc. ACM SIGMODConf. (J
un. 1995) p.1−10」に詳しく説明され
ている。While complete isolation of transactions ensures data consistency at any point in time, reduced concurrency can significantly reduce overall throughput. To avoid this problem, the concept of isolation level is used. For the isolation level, refer to [2] “A Criticu
e of ANSI SQL Isolation L
evels "HalBerenson, Phili
pA Bernstein, Jim Gray,
Jim Melton, Elizabeth J.
O'Neil, Patrick E.L. O, Neil
Proc. ACM SIGMOD Conf. (J
un. 1995) p. 1-10 ".
【0008】上述したごとくに、データベースの扱うデ
ータが大量になるなかで、システムを停止することなく
稼動させつづけることが求められるようになり、本出願
人は、特願2000−252472号明細書において、
高度な検索要求に高速に応答できる性能を維持しつつ、
システム稼働中の更新性能を向上させることができるデ
ータベース管理方式及びシステムを提案した。[0008] As described above, as the amount of data handled by the database becomes large, it is required that the system be continuously operated without stopping. ,
While maintaining the ability to respond quickly to advanced search requests,
We proposed a database management system and system that can improve the update performance during system operation.
【0009】しかしながら、特願2000−25247
2号明細書におけるデータベース管理方式及びシステム
においては、変更処理(挿入、更新、削除)を一つのデ
ータ保持手段で処理している。そのため削除されたタプ
ルを識別するために削除フラグという属性値を用意して
いる。検索結果を求める際には求まった結果集合のすべ
てのタプルの削除フラグを調べて結果から取り除く処理
が必要であった。However, Japanese Patent Application No. 2000-25247.
In the database management system and system in the specification of Japanese Patent No. 2, change processing (insertion, update, deletion) is processed by one data holding unit. Therefore, an attribute value called a deletion flag is prepared to identify a deleted tuple. When obtaining the search results, it is necessary to check the deletion flags of all the tuples of the obtained result set and remove them from the results.
【0010】[0010]
【発明が解決しようとする課題】本発明は、上述のごと
き実情に鑑みてなされたものであり、高度な検索要求に
高速に応答できる性能を維持しつつ、システム稼働中の
更新性能をさらに向上させることができるデータベース
管理方法、システム、プログラム、及び記録媒体を提供
することをその目的とする。SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and further improves update performance during system operation while maintaining performance capable of responding to advanced search requests at high speed. It is an object of the present invention to provide a database management method, system, program, and recording medium that can be made to operate.
【0011】[0011]
【課題を解決するための手段】本発明に係るデータベー
ス管理方法、システム、プログラム、及び記録媒体にお
いては、削除処理のために別の削除向けデータ保持手段
を使用する。このデータ保持手段には挿入向けデータ保
持手段(特願2000−252472号明細書に記載の
発明における変更向けデータ保持手段)と同じ機構を使
用することができる。検索結果を求める際には検索向
け,挿入向け,削除向けのデータ保持手段から求まった
タプルIDの集合に対する集合演算のみでよくタプルの
属性値を参照する必要がなくなり処理が効率よく行え
る。In the database management method, system, program, and recording medium according to the present invention, another data holding means for deletion is used for deletion processing. The same mechanism as the insertion data holding means (change data holding means in the invention described in Japanese Patent Application No. 2000-252472) can be used for this data holding means. When the search result is obtained, only the set operation for the set of tuple IDs obtained from the data holding means for search, insertion, and deletion is sufficient, and it is not necessary to refer to the attribute value of the tuple, and the processing can be performed efficiently.
【0012】請求項1の発明は、データベースを管理す
るためのデータベース管理装置において、データの検索
操作の処理は高速だがデータの変更操作の処理は低速な
検索向けデータ保持手段と、データの変更操作の処理は
高速な第1及び第2の挿入向けデータ保持手段と、デー
タの変更操作の処理は高速な第1及び第2の削除向けデ
ータ保持手段と、前記第1及び第2の挿入向けデータ保
持手段及び前記第1及び第2の削除向けデータ保持手段
で処理されたデータの反映を行うために、前記第1及び
第2の挿入向けデータ保持手段及び前記第1及び第2の
削除向けデータ保持手段から前記検索向けデータ保持手
段へデータを転送するデータ転送手段と、データベース
に対する操作要求を該操作要求の内容に応じて、前記第
1及び第2の挿入向けデータ保持手段及び前記第1及び
第2の削除向けデータ保持手段と前記検索向けデータ保
持手段のそれぞれに振り分けて実行するデータベース操
作要求処理手段と、前記データ転送手段と前記データベ
ース操作要求処理手段との間でデータの一貫性を保証す
るトランザクション処理手段と、を有することを特徴と
したものである。According to a first aspect of the present invention, there is provided a database management apparatus for managing a database, comprising: a search data holding unit that performs high-speed data search operations but low-speed data change operations; Is a high-speed first and second insertion data holding unit; a data change operation is a high-speed first and second deletion data holding unit; and the first and second insertion data are In order to reflect the data processed by the holding unit and the first and second data for deletion, the first and second data for insertion and the first and second data for deletion are reflected. A data transfer unit for transferring data from a holding unit to the search data holding unit; and a first and second insertion request for an operation request for the database according to the content of the operation request. A database operation request processing means for executing the data transfer means separately to each of the first and second data storage means for deletion and the data storage means for search; the data transfer means and the database operation request processing means; And transaction processing means for guaranteeing data consistency between the two.
【0013】請求項2の発明は、データベースを管理す
るためのデータベース管理装置において、複数のユーザ
からのデータベース操作要求を入力するデータベース操
作要求入力手段と、データの検索操作の処理は高速だが
データの変更操作の処理は低速な検索向けデータ保持手
段と、データの変更操作の処理は高速な第1及び第2の
挿入向けデータ保持手段と、データの変更操作の処理は
高速な第1及び第2の削除向けデータ保持手段と、前記
第1及び第2の挿入向けデータ保持手段及び前記第1及
び第2の削除向けデータ保持手段で処理されたデータの
反映を行うために、前記第1及び第2の挿入向けデータ
保持手段及び前記第1及び第2の削除向けデータ保持手
段から前記検索向けデータ保持手段へデータを転送する
データ転送手段と、前記データベース操作要求入力手段
に入力されたデータベースに対する操作要求を、該操作
要求の内容に応じて、前記第1及び第2の挿入向けデー
タ保持手段及び前記第1及び第2の削除向けデータ保持
手段と前記検索向けデータ保持手段のそれぞれに振り分
けて実行するデータベース操作要求処理手段と、前記デ
ータ転送手段と前記データベース操作要求処理手段との
間でデータの一貫性を保証するトランザクション処理手
段と、を有することを特徴としたものである。According to a second aspect of the present invention, in a database management apparatus for managing a database, a database operation request input means for inputting a database operation request from a plurality of users, and a high-speed data retrieval operation process, The process of the change operation is a low-speed search data holding unit, the process of the data change operation is a high-speed first and second insertion data hold unit, and the process of the data change operation is the first and second high-speed process. , And the first and second data storage means for reflecting the data processed by the first and second data storage means for insertion and the first and second data storage means for deletion. 2 data transfer means for transferring data from the data holding means for insertion to the data holding means for search from the first and second data holding means for deletion; An operation request for the database input to the database operation request input means is transmitted to the first and second insertion data holding means and the first and second deletion data holding means in accordance with the content of the operation request. And a database operation request processing unit that executes the operation by distributing the data to each of the search data holding units, and a transaction processing unit that guarantees data consistency between the data transfer unit and the database operation request processing unit. It is characterized by the following.
【0014】請求項3の発明は、請求項1又は2の発明
において、前記第1の挿入向けデータ保持手段のデータ
を検索向けデータ保持手段に挿入中に、データの挿入要
求があった場合に、前記第2の挿入向けデータ保持手段
に該挿入要求があったデータを挿入することを特徴とし
たものである。According to a third aspect of the present invention, in the first or the second aspect of the present invention, when the data insertion request is received while the data of the first insertion data holding unit is being inserted into the search data holding unit. And inserting the data requested to be inserted into the second data storage unit for insertion.
【0015】請求項4の発明は、請求項1又は2の発明
において、前記第1の削除向けデータ保持手段のデータ
を検索向けデータ保持手段から削除中に、データの削除
要求があった場合に、前記第2の削除向けデータ保持手
段に該削除要求があったデータを挿入することを特徴と
したものである。According to a fourth aspect of the present invention, in the first or the second aspect of the present invention, when there is a data deletion request while deleting the data of the first data holding means for deletion from the data holding means for search. And inserting the data requested to be deleted into the second data-for-deletion holding means.
【0016】請求項5の発明は、請求項1乃至4のいず
れか1の発明において、前記検索向けデータ保持手段、
前記第1の挿入向けデータ保持手段、前記第2の挿入向
けデータ保持手段、前記第1の削除向けデータ保持手
段、前記第2の削除向けデータ保持手段、のいずれか1
又は複数は、それ自体が独立して動作可能にデータベー
ス管理システムを構成することができることを特徴とし
たものである。According to a fifth aspect of the present invention, in the first aspect of the present invention, the search data holding means comprises:
Any one of the first insertion data holding unit, the second insertion data holding unit, the first deletion data holding unit, and the second deletion data holding unit.
Alternatively, the plurality is characterized in that the database management system itself can be configured to operate independently.
【0017】請求項6の発明は、請求項1乃至4のいず
れか1の発明において、前記第1の挿入向けデータ保持
手段、前記第2の挿入向けデータ保持手段、前記第1の
削除向けデータ保持手段、前記第2の削除向けデータ保
持手段、のいずれか1又は複数が、メモリ上にあること
を特徴としたものである。According to a sixth aspect of the present invention, in the first aspect of the present invention, the first insertion data holding unit, the second insertion data holding unit, and the first deletion data are stored. One or more of the holding unit and the second data holding unit for deletion are provided on a memory.
【0018】請求項7の発明は、請求項1乃至4のいず
れか1の発明において、前記検索向けデータ保持手段、
前記第1の挿入向けデータ保持手段、前記第2の挿入向
けデータ保持手段、前記第1の削除向けデータ保持手
段、前記第2の削除向けデータ保持手段は、属性値の特
性に応じてその形態が選定されることを特徴としたもの
である。According to a seventh aspect of the present invention, in accordance with any one of the first to fourth aspects of the present invention, the search data holding means comprises:
The first data storage unit for insertion, the second data storage unit for insertion, the first data storage unit for deletion, and the second data storage unit for deletion are configured according to the characteristics of attribute values. Is selected.
【0019】請求項8の発明は、請求項1乃至4のいず
れか1の発明において、前記データ転送手段に転送指定
時刻情報を保持させておくことにより、該データ転送手
段による前記検索向けデータ保持手段へのデータの変更
操作を前記転送指定時刻情報に指定された時刻まで遅延
することができることを特徴としたものである。According to an eighth aspect of the present invention, in accordance with any one of the first to fourth aspects of the present invention, the data transfer unit holds the designated transfer time information, so that the data transfer unit holds the search data. The data change operation to the means can be delayed until the time specified in the transfer specified time information.
【0020】請求項9の発明は、請求項1乃至4のいず
れか1の発明において、前記データ転送手段は、該デー
タ転送手段が実行すべき前記検索向けデータ保持手段へ
の変更操作要求が一定数になるごとに変更操作を実行す
ることを特徴としたものである。According to a ninth aspect of the present invention, in the first aspect of the present invention, the data transfer unit is configured such that a change operation request to the search data holding unit to be executed by the data transfer unit is constant. It is characterized in that a change operation is executed every time the number reaches the number.
【0021】請求項10の発明は、請求項1乃至4のい
ずれか1の発明において、前記検索向けデータ保持手段
における複数の処理単位データに対する変更操作がバッ
チ処理として実行されることを特徴としたものである。According to a tenth aspect of the present invention, in any one of the first to fourth aspects, the change operation for a plurality of processing unit data in the search data holding means is executed as a batch process. Things.
【0022】請求項11の発明は、データの検索操作の
処理は高速だがデータの変更操作の処理は低速な検索向
けデータ保持手段と、データの変更操作の処理は高速な
第1及び第2の挿入向けデータ保持手段と、データの変
更操作の処理は高速な第1及び第2の削除向けデータ保
持手段とを用いてデータベースを処理し、管理するため
のデータベース管理方法であって、複数のユーザからの
データベース操作要求を入力し、前記処理されたデータ
の反映を行うために、前記第1及び第2の挿入向けデー
タ保持手段及び前記第1及び第2の削除向けデータ保持
手段から前記検索向けデータ保持手段へデータを転送
し、前記入力されたデータベースに対する操作要求を、
該操作要求の内容に応じて、前記第1及び第2の挿入向
けデータ保持手段及び前記第1及び第2の削除向けデー
タ保持手段と前記検索向けデータ保持手段のそれぞれに
振り分けて処理し、前記データの転送と前記データベー
ス操作要求の処理との間でデータの一貫性を保証するこ
とを特徴としたものである。According to the eleventh aspect of the present invention, there is provided a data holding means for search which performs a high-speed data search operation but has a low-speed data change operation, and a first and a second high-speed data change operation which perform a high-speed data change operation. A database management method for processing and managing a database using data holding means for insertion and processing for changing data by using first and second data holding means for high-speed deletion. From the first and second data storage means for insertion and the first and second data storage means for deletion in order to input a database operation request from the server and reflect the processed data. Transfer the data to the data holding means, the operation request for the input database,
In accordance with the content of the operation request, the first and second data storage means for insertion, the first and second data storage means for deletion, and the data storage means for search are respectively distributed and processed. It is characterized by ensuring data consistency between data transfer and processing of the database operation request.
【0023】請求項12の発明は、請求項11の発明に
おいて、前記第1の挿入向けデータ保持手段のデータを
検索向けデータ保持手段に挿入中に、データの挿入要求
があった場合に、前記第2の挿入向けデータ保持手段に
該挿入要求があったデータを挿入することを特徴とした
ものである。According to a twelfth aspect of the present invention, in the invention of the eleventh aspect, when a request for data insertion is made while data of the first data storage means for insertion is being inserted into the data storage means for search, It is characterized in that the data requested to be inserted is inserted into the second insertion data holding means.
【0024】請求項13の発明は、請求項11の発明に
おいて、前記第1の削除向けデータ保持手段のデータを
検索向けデータ保持手段から削除中に、データの削除要
求があった場合に、前記第2の削除向けデータ保持手段
に該削除要求があったデータを挿入することを特徴とし
たものである。According to a thirteenth aspect of the present invention, in the invention of the eleventh aspect, when there is a data deletion request while deleting the data of the first deletion data holding means from the search data holding means, It is characterized in that the data requested to be deleted is inserted into the second data storage means for deletion.
【0025】請求項14の発明は、請求項11乃至13
のいずれか1の発明において、前記検索向けデータ保持
手段、前記第1の挿入向けデータ保持手段、前記第2の
挿入向けデータ保持手段、前記第1の削除向けデータ保
持手段、前記第2の削除向けデータ保持手段、のいずれ
か1又は複数は、それ自体が独立して動作可能にデータ
ベース管理システムを構成することができることを特徴
としたものである。The invention of claim 14 is the invention of claims 11 to 13
In any one of the inventions described above, the search data holding unit, the first insertion data holding unit, the second insertion data holding unit, the first deletion data holding unit, and the second deletion Any one or more of the data holding means can independently configure the database management system so as to operate independently.
【0026】請求項15の発明は、請求項11乃至13
のいずれか1の発明において、前記第1の挿入向けデー
タ保持手段、前記第2の挿入向けデータ保持手段、前記
第1の削除向けデータ保持手段、前記第2の削除向けデ
ータ保持手段、のいずれか1又は複数が、メモリ上にあ
ることを特徴としたものである。The invention of claim 15 is the invention of claims 11 to 13
Any one of the first insertion data holding unit, the second insertion data holding unit, the first deletion data holding unit, and the second deletion data holding unit. One or more of them are on a memory.
【0027】請求項16の発明は、請求項11乃至13
のいずれか1の発明において、前記検索向けデータ保持
手段、前記第1の挿入向けデータ保持手段、前記第2の
挿入向けデータ保持手段、前記第1の削除向けデータ保
持手段、前記第2の削除向けデータ保持手段は、属性値
の特性に応じてその形態が選定されることを特徴とした
ものである。The invention of claim 16 is the invention of claims 11 to 13
In any one of the inventions described above, the search data holding unit, the first insertion data holding unit, the second insertion data holding unit, the first deletion data holding unit, and the second deletion The destination data holding means is characterized in that its form is selected according to the characteristics of the attribute value.
【0028】請求項17の発明は、請求項11乃至13
のいずれか1の発明において、前記データ転送の時刻を
指定する指定時刻情報を保持させておくことにより、該
データ転送の際の前記検索向けデータ保持手段へのデー
タの変更操作を前記指定時刻情報に指定された時刻まで
遅延することを特徴としたものである。The invention of claim 17 is the invention of claims 11 to 13
In any one of the inventions described above, by holding designated time information for designating the time of the data transfer, the data change operation to the search data holding means at the time of the data transfer is performed by the designated time information. Is delayed until the time specified in the.
【0029】請求項18の発明は、請求項11乃至13
のいずれか1の発明において、前記データ転送は、転送
すべき前記検索向けデータ保持手段への変更操作要求が
一定数になるごとに変更操作を実行することを特徴とし
たものである。The invention according to claim 18 is the invention according to claims 11 to 13
In any one of the inventions described above, the data transfer is characterized in that a change operation is executed each time a change operation request to the search data holding unit to be transferred reaches a certain number.
【0030】請求項19の発明は、請求項11乃至13
のいずれか1の発明において、前記検索向けデータ保持
手段における複数の処理単位データに対する変更操作を
バッチ処理として実行することを特徴としたものであ
る。The invention of claim 19 is the invention of claims 11 to 13
In any one of the inventions described above, the change operation for a plurality of processing unit data in the search data holding unit is executed as a batch process.
【0031】請求項20の発明は、請求項1乃至10の
いずれか1記載のデータベース管理装置の各手段として
機能させるための、又は、請求項11乃至19のいずれ
か1記載のデータベース管理方法を実行させるためのプ
ログラムである。According to a twentieth aspect of the present invention, there is provided a database management method according to any one of the first to tenth aspects for functioning as each means of the database management apparatus according to the first aspect, or the database management method according to any one of the eleventh to nineteenth aspects. This is a program to be executed.
【0032】請求項21の発明は、請求項20記載のプ
ログラムを記録したコンピュータ読み取り可能な記録媒
体である。According to a twenty-first aspect of the present invention, there is provided a computer-readable recording medium storing the program according to the twentieth aspect.
【0033】[0033]
【発明の実施の形態】(システム構成)図1は、本発明
によるデータベース管理システムの機能を説明するため
のブロック構成図である。以下、リレーショナルデータ
ベースを代表させて説明するが、通常のデータベースに
も本発明は適用可能である。データベース操作要求入力
手段1からデータベースに対する操作要求が入力され、
データベース操作要求処理手段3が操作を実行する。検
索向けデータ保持手段4は、データベースの検索操作を
処理する。また第1の挿入向けデータ保持手段5(挿入
向けデータ保持手段1という。以下同様に表現する。)
及び挿入向けデータ保持手段2(6)は、データベース
のデータ挿入操作、削除操作及び更新操作を処理し、削
除向けデータ保持手段1(7)及び削除向けデータ保持
手段2(8)はデータベースのデータ挿入操作及び削除
操作を処理する。なお、ここでデータ保持手段4〜8と
して説明しているものは、例えばリレーショナルデータ
ベースにおいては索引ファイル及び索引ファイルを用い
た処理を行うための手段であり、データを参照等するた
めに関連付けて保持し、その関連付けに従って各種処理
を行なう手段である。データ転送手段9は、挿入向けデ
ータ保持手段5,6及び削除向けデータ保持手段7,8
から処理単位データ(リレーショナルデータベースにお
いてはタプル)を読みとって検索向けデータ保持手段4
に対するタプルの挿入、更新、削除の操作を行う。トラ
ンザクション(排他制御)処理手段2は、システムにお
けるトランザクション制御を行う。これら各要素につい
ては、この後さらに詳しく説明する。DESCRIPTION OF THE PREFERRED EMBODIMENTS (System Configuration) FIG. 1 is a block diagram for explaining the functions of a database management system according to the present invention. Hereinafter, a relational database will be described as a representative, but the present invention is also applicable to a normal database. An operation request for the database is input from the database operation request input means 1,
The database operation request processing means 3 executes the operation. The search data holding unit 4 processes a database search operation. In addition, the first insertion data holding unit 5 (referred to as insertion data holding unit 1; hereinafter similarly expressed).
The data holding means for insertion 2 (6) processes data insertion operation, deletion operation and update operation of the database, and the data holding means for deletion 1 (7) and the data holding means for deletion 2 (8) store data of the database. Handles insert and delete operations. The data holding units 4 to 8 described here are, for example, in a relational database, an index file and a unit for performing processing using the index file. Means for performing various processes in accordance with the association. The data transfer means 9 comprises insertion data holding means 5, 6 and deletion data holding means 7, 8.
Processing unit data (a tuple in a relational database) is read from the
Insert, update, and delete tuples for. The transaction (exclusive control) processing means 2 performs transaction control in the system. Each of these elements will be described in further detail below.
【0034】(データベース操作要求入力手段)図2
は、本発明を具体化するシステム構成の一例を示す図
で、データベース操作要求入力手段1は、入力端末21
として実現される。データベースを保持するサーバホス
ト10は、CPU11、プログラム領域12aとデータ
領域12bとを有するメモリ12、及びハードディスク
13がバス14にて接続され、このサーバホストに対し
てLAN22により複数の入力端末21が接続可能とな
っている。(Database Operation Request Input Means) FIG.
FIG. 1 is a diagram showing an example of a system configuration embodying the present invention.
It is realized as. A server host 10 holding a database has a CPU 11, a memory 12 having a program area 12a and a data area 12b, and a hard disk 13 connected by a bus 14. A plurality of input terminals 21 are connected to the server host by a LAN 22. It is possible.
【0035】ユーザは入力端末21から例えばSQL文
の形式で文字列により表現されたデータベース操作要求
を入力する。データベース操作要求はLAN22を通じ
てサーバーホスト10に送られて処理される。処理の結
果は再びLAN22を通じて入力端末21に送られ、当
該入力端末21のディスプレイに表示するなどしてユー
ザに知らせることができる。The user inputs a database operation request represented by a character string in the form of, for example, an SQL statement from the input terminal 21. The database operation request is sent to the server host 10 via the LAN 22 for processing. The result of the processing is sent again to the input terminal 21 via the LAN 22 and displayed on the display of the input terminal 21 to notify the user.
【0036】(データベース操作要求処理手段)図3乃
至図5は、一連の、データベース操作要求処理手段の処
理手順の一例を示すフロー図である。データベース操作
要求の種類によって処理内容が分かれる。この例では表
の各タプルは一意に定まるID(タプルID)を付与さ
れ、タプルはすべてタプルIDで識別される。(Database Operation Request Processing Unit) FIGS. 3 to 5 are flowcharts showing an example of a series of processing procedures of the database operation request processing unit. The processing contents differ depending on the type of the database operation request. In this example, each tuple in the table is given a uniquely determined ID (tuple ID), and all tuples are identified by the tuple ID.
【0037】データベース操作要求処理手段3がデータ
ベース操作要求処理を受け取ると(ステップS1)、挿
入操作かどうかを判断し(ステップS2)、挿入操作の
場合は新しいタプルに対してタプルIDを取得した後
(ステップS3)、挿入向けデータ保持手段1(5)が
検索向けデータ保持手段4へデータを反映中か、すなわ
ち使用中かを判断する(ステップS4)。データ反映中
であれば、挿入向けデータ保持手段2(6)に対してタ
プルの挿入操作を実行し(ステップS5)、その結果を
返す(ステップS7)。反映中でないなら、挿入向けデ
ータ保持手段1(5)に対して挿入操作を実行して(ス
テップS6)、その結果を返す(ステップS7)。When the database operation request processing means 3 receives the database operation request processing (step S1), it judges whether or not the operation is an insertion operation (step S2). In the case of the insertion operation, after acquiring a tuple ID for a new tuple, (Step S3) It is determined whether the insertion data holding unit 1 (5) is reflecting the data in the search data holding unit 4, that is, whether it is in use (Step S4). If the data is being reflected, a tuple insertion operation is performed on the insertion data holding unit 2 (6) (step S5), and the result is returned (step S7). If the data is not being reflected, the insertion operation is performed on the insertion data holding unit 1 (5) (step S6), and the result is returned (step S7).
【0038】ステップS2で挿入操作でない場合は、検
索向けデータ保持手段4,挿入向けデータ保持手段1
(5),挿入向けデータ保持手段2(6),削除向けデ
ータ保持手段1(7),削除向けデータ保持手段2
(8)のそれぞれに検索操作を実行し(図4のステップ
S8〜S12)、それぞれの検索結果集合Rr,Ri
1,Ri2,Rd1,Rd2から、最終結果集合R(R
=Rr+Ri1+Ri2−Rd1−Rd2;ただし、+
は論理和、−は論理差をあらわす。)を作って検索結果
とする(ステップS13)。If it is not an insertion operation in step S2, the data holding means for search 4, the data holding means 1 for insertion
(5), data holding means for insertion 2 (6), data holding means for deletion 1 (7), data holding means for deletion 2
A search operation is performed for each of (8) (steps S8 to S12 in FIG. 4), and each search result set Rr, Ri
1, Ri2, Rd1, Rd2, a final result set R (R
= Rr + Ri1 + Ri2-Rd1-Rd2;
Represents a logical sum, and − represents a logical difference. ) Is made as a search result (step S13).
【0039】次いで、ステップS14で検索操作であれ
ば、その結果を返し(ステップS7)、検索操作でなけ
ればさらに検索結果集合Ri1にあるかを判断する(ス
テップS15)。Ri1になければ、検索結果集合Ri
2にあるかを判断する(ステップS17)。Ri1,R
i2に存在する場合には、それぞれ、挿入向けデータ保
持手段1(5),挿入向けデータ保持手段2(6)に対
して削除操作を実行する(ステップS16,S18)。
このようにして、削除操作では検索操作と同様の手順で
選ばれたタプルがRi1にある場合には挿入向けデータ
保持手段1(5)に対して削除処理を実行し、Ri2に
ある場合には挿入向けデータ保持手段2(6)に対して
削除処理を実行する。Next, if it is a search operation in step S14, the result is returned (step S7), and if it is not a search operation, it is further determined whether or not the search result set Ri1 exists (step S15). If not in Ri1, search result set Ri
2 is determined (step S17). Ri1, R
If it exists in i2, a delete operation is performed on the data storage means for insertion 1 (5) and the data storage means for insertion 2 (6), respectively (steps S16 and S18).
In this way, in the deletion operation, when the tuple selected in the same procedure as the search operation is in Ri1, the deletion processing is executed on the data storage unit for insertion 1 (5), and when the tuple is in Ri2, A deletion process is performed on the data storage unit for insertion 2 (6).
【0040】Ri1にもRi2にもない場合すなわちR
rにある場合には(ステップS17においてRi2に存
在しなければ)、図5のステップS19へ進む。すなわ
ち、削除向けデータ保持手段1(7)が使用中かを判断
し(ステップS19)、削除向けデータ保持手段1
(7)が検索向けデータ保持手段4へデータを反映中な
ら、タプルを削除向けデータ保持手段2(8)に対して
挿入操作を実行する(ステップS20)。反映中でなけ
れば、削除向けデータ保持手段1(7)に対してタプル
の挿入操作を実行する(ステップS21)。When neither Ri1 nor Ri2 exists, ie, R
If it is in r (if it does not exist in Ri2 in step S17), the process proceeds to step S19 in FIG. In other words, it is determined whether the data storage unit for deletion 1 (7) is in use (step S19), and the data storage unit for deletion 1
If (7) is reflecting the data in the search data holding unit 4, the tuple is inserted into the deletion data holding unit 2 (8) (step S20). If it is not being reflected, a tuple insertion operation is performed on the data storage unit for deletion 1 (7) (step S21).
【0041】その後、更新操作かどうかを判断し(ステ
ップS22)、更新操作であれば、新しい値にタプルを
更新する(ステップS23)。挿入向けデータ保持手段
1(5)が使用中かを判断し(ステップS24)、使用
中であれば挿入向けデータ保持手段2(6)にタプルの
挿入を実行し(ステップS25)、使用中でなければ挿
入向けデータ保持手段1(5)にタプルの挿入操作を実
行し(ステップS26)、ステップS7へ進む。このよ
うにして、更新操作では検索操作と同様の手順で選ばれ
たタプルに対して、削除操作と同様の手段で削除操作を
実行し、新しい値に変更したタプルに対して、挿入操作
と同様の手段で挿入操作を実行し、更新操作を実行す
る。Thereafter, it is determined whether the operation is an update operation (step S22). If the operation is an update operation, the tuple is updated to a new value (step S23). It is determined whether the data storage unit for insertion 1 (5) is in use (step S24). If the data is being used, a tuple is inserted into the data storage unit for insertion 2 (6) (step S25). If not, a tuple insertion operation is executed in the insertion data holding unit 1 (5) (step S26), and the process proceeds to step S7. Thus, in the update operation, the tuple selected in the same procedure as the search operation is subjected to the delete operation by the same means as the delete operation, and the tuple changed to the new value is subjected to the same operation as the insert operation. The update operation is executed by executing the insert operation by means of (1).
【0042】(検索向けデータ保持手段)検索向けデー
タ保持手段4は、データベース操作要求処理手段3が実
行する検索操作を処理する。また、データ転送手段9が
実行する変更操作を処理する。検索向けデータ保持手段
4は検索操作を高速で実行できる代わりに変更操作が比
較的低速である。例えば、全文検索を行うことができる
全文検索サーバを用いることが考えられる。(Search Data Holding Means) The search data holding means 4 processes the search operation executed by the database operation request processing means 3. Further, it processes a change operation performed by the data transfer means 9. The search data holding unit 4 can execute the search operation at high speed, but the change operation is relatively slow. For example, it is conceivable to use a full-text search server that can perform a full-text search.
【0043】(挿入向けデータ保持手段1及び2)挿入
向けデータ保持手段1(5)および2(6)はデータベ
ース操作要求処理手段3が実行する挿入操作、削除操作
及び更新操作を処理する。また、データ転送手段9が実
行する削除操作を処理する。挿入向けデータ保持手段1
(5)および2(6)は変更操作を高速に実行できる。
例えばOSが管理する通常のファイルを用いることが考
えられる。(Insertion Data Holding Means 1 and 2) The insertion data holding means 1 (5) and 2 (6) process the insertion operation, deletion operation and update operation executed by the database operation request processing means 3. Further, it processes a delete operation performed by the data transfer means 9. Data holding means for insertion 1
(5) and 2 (6) can execute the change operation at high speed.
For example, a normal file managed by the OS may be used.
【0044】通常のファイルのように挿入向けデータ保
持手段1(5)および2(6)が検索操作を実行できな
い場合は、保持しているタプルを逐次的に返しデータベ
ース操作要求処理手段3が検索条件を評価(全数検索と
呼ぶ)する。挿入向けデータ保持手段1(5)および2
(6)が保持するタプル数は検索向けデータ保持手段4
が保持するタプル数に比べて非常に少数なので全数検索
を行っても応答時間に影響しない。When the insertion data holding means 1 (5) and 2 (6) cannot execute the search operation as in a normal file, the held tuples are sequentially returned, and the database operation request processing means 3 performs the search. Evaluate the condition (called an exhaustive search). Insertion data holding means 1 (5) and 2
The number of tuples held in (6) is the search data holding means 4
Is very small compared to the number of tuples held by, so that a 100% search does not affect the response time.
【0045】(削除向けデータ保持手段1及び2)削除
向けデータ保持手段1(7)及び2(8)は、データベ
ース操作要求処理手段3が実行する挿入操作を処理す
る。また、データ転送手段9が実行する削除操作を処理
する。削除向けデータ保持手段1(7)及び2(8)は
変更操作を高速に実行できる。例えばOSが管理する通
常のファイルを用いることが考えられる。(Data Holders 1 and 2 for Deletion) The data holders 1 (7) and 2 (8) for deletion process the insertion operation executed by the database operation request processing means 3. Further, it processes a delete operation performed by the data transfer means 9. The data holding means for deletion 1 (7) and 2 (8) can execute the change operation at high speed. For example, a normal file managed by the OS may be used.
【0046】通常のファイルのように削除向けデータ保
持手段1(7)及び2(8)が検索操作を実行できない
場合は、保持しているタプルを逐次的に返しデータベー
ス操作要求処理手段3が検索条件を評価(全数検索と呼
ぶ)する。削除向けデータ保持手段1(7)及び2
(8)が保持するタプル数は検索向けデータ保持手段4
が保持するタプル数に比べて非常に少数なので全数検索
を行っても応答時間に影響しない。When the data holding means for deletion 1 (7) and 2 (8) cannot execute the search operation as in the case of a normal file, the held tuples are sequentially returned and the database operation request processing means 3 searches the data. Evaluate the condition (called an exhaustive search). Data holding means for deletion 1 (7) and 2
The number of tuples held by (8) is the search data holding unit 4
Is very small compared to the number of tuples held by, so that a 100% search does not affect the response time.
【0047】各データ保持手段4〜8のいずれか1又は
複数は、それ自体が独立して動作可能にデータベース管
理システムを構成することができるものであってよい。
このようなデータ保持手段4〜8のいずれかを本発明の
データベース管理システムに適用すればよい。すなわ
ち、既存のデータベース管理システムで検索は高速だが
更新が比較的低速であるようなものに対して、そのデー
タベース管理システムに特別な変更を施すことなく、更
新要求への応答を向上することができる。また、逆に既
存のデータベース管理システムの更新応答が高速なら
ば、検索が高速なデータ保持手段と組み合わせることに
よって、更新応答性能を生かしながら検索要求への応答
を向上することができる。Any one or more of the data holding means 4 to 8 may be capable of independently configuring a database management system so as to operate independently.
Any of such data holding means 4 to 8 may be applied to the database management system of the present invention. That is, the response to the update request can be improved without making a special change to the database management system for a search that is fast but relatively slow in the existing database management system. . Conversely, if the update response of the existing database management system is fast, the response to the search request can be improved while utilizing the update response performance by combining it with a high-speed data holding means.
【0048】また、挿入向けデータ保持手段1(5),
2(6)、削除向けデータ保持手段1(7),2(8)
がメモリ上にあるようにしてもよく、メモリが大量にあ
る場合に挿入向けデータ保持手段1(5),2(6)、
削除向けデータ保持手段1(7),2(8)をメモリ上
で利用することで更新性能の著しい向上が実現できる。Also, the data holding means for insertion 1 (5),
2 (6), data holding means for deletion 1 (7), 2 (8)
May be stored in the memory, and when there is a large amount of memory, the data holding means for insertion 1 (5), 2 (6),
By using the data holding means for deletion 1 (7) and 2 (8) on the memory, remarkable improvement in update performance can be realized.
【0049】また、検索向けデータ保持手段4及び挿入
向けデータ保持手段1(5),2(6)及び削除向けデ
ータ保持手段1(7),2(8)は、属性値の特性に応
じてその形態を選定することことが好ましく、例えばデ
ータ量が少ない属性値については上述のごとくのメモリ
上で挿入向けデータ保持手段1(5),2(6)、削除
向けデータ保持手段1(7),2(8)を用いることに
よって性能の向上が実現できる。The data holding means 4 for search, the data holding means 1 (5), 2 (6) for insertion and the data holding means 1 (7), 2 (8) for deletion correspond to the characteristics of attribute values. It is preferable to select the mode. For example, for the attribute value having a small data amount, the data holding means for insertion 1 (5) and 2 (6) and the data holding means for deletion 1 (7) are stored in the memory as described above. , 2 (8) can improve the performance.
【0050】(データ転送手段)図6は、データ転送手
段の処理手順の一例を説明するためのフローチャートで
ある。データ転送手段9が削除向けデータ保持手段1
(7)からタプルを順次読み込み(ステップS31)、
その値にしたがって検索向けデータ保持手段4から削除
し(ステップS32)、反映が終わったタプルを削除向
けデータ保持手段1(7)から削除する(ステップS3
3)。同様に削除向けデータ保持手段2(8)からタプ
ルを順次読み込み(ステップS34)、その値にしたが
って検索向けデータ保持手段4から削除し(ステップS
35)、反映が終わったタプルを削除向けデータ保持手
段2(8)から削除する(ステップS36)。次に、挿
入向けデータ保持手段1(5)からタプルを順次読み込
み(ステップS37)、そのタプルを検索向けデータ保
持手段4に挿入し(ステップS38)、反映が終わった
タプルを挿入向けデータ保持手段1(5)から削除する
(ステップS39)。そして、同様に挿入向けデータ保
持手段2(6)からタプルを順次読み込み(ステップS
40)、そのタプルを検索向けデータ保持手段4に挿入
し(ステップS41)、反映が終わったタプルを挿入向
けデータ保持手段2(6)から削除する(ステップS4
2)、という手順で実行される。(Data Transfer Means) FIG. 6 is a flowchart for explaining an example of the processing procedure of the data transfer means. The data transfer means 9 is the data holding means 1 for deletion.
Tuples are sequentially read from (7) (step S31),
According to the value, the tuple is deleted from the search data holding unit 4 (step S32), and the tuple that has been reflected is deleted from the deletion data holding unit 1 (7) (step S3).
3). Similarly, tuples are sequentially read from the data storage unit for deletion 2 (8) (step S34), and are deleted from the data storage unit for search 4 according to the values (step S34).
35) The tuple that has been reflected is deleted from the data storage means 2 (8) for deletion (step S36). Next, tuples are sequentially read from the insertion data holding unit 1 (5) (step S37), and the tuples are inserted into the search data holding unit 4 (step S38). 1 (5) (step S39). Then, similarly, tuples are sequentially read from the insertion data holding unit 2 (6) (Step S).
40), the tuple is inserted into the data storage unit for search 4 (step S41), and the tuple that has been reflected is deleted from the data storage unit for insertion 2 (6) (step S4).
2).
【0051】またデータ転送手段9に転送時刻情報を指
定することにより、データ転送手段9による検索向けデ
ータ保持手段4へのデータの変更操作を、上記の指定時
刻まで遅延することができる。これにより、システムの
稼働率が低くなる時間帯が決まっている場合に、検索向
けデータ保持手段4へのデータの反映をその時間帯に集
中させることでシステム全体のスループットを上げるこ
とができる。By designating the transfer time information to the data transfer means 9, the operation of changing the data to the search data holding means 4 by the data transfer means 9 can be delayed until the specified time. Thus, when the time period during which the operation rate of the system becomes low is determined, the throughput of the entire system can be increased by concentrating data reflection on the search data holding unit 4 in that time period.
【0052】さらにデータ転送手段9は、検索向けデー
タ保持手段4への変更操作要求が一定数になるごとに変
更操作を実行させるようにすることにより、検索向けデ
ータ保持手段4への更新要求が発生する頻度を減らすこ
とができ、これにより排他制御が必要になる頻度を減ら
し、システム全体のスループットを上げることができ
る。Further, the data transfer means 9 executes the change operation every time a change operation request to the search data holding means 4 reaches a certain number, so that the update request to the search data holding means 4 is issued. This can reduce the frequency of occurrence, thereby reducing the frequency of the need for exclusive control and increasing the throughput of the entire system.
【0053】さらに、検索向けデータ保持手段4におけ
る複数のタプルに対する変更操作がバッチ処理として実
行されるようにすることにより、高速に実行できる場合
にはデータ転送手段9の操作の実行が高速になり、結果
としてシステム全体のスループットを上げることができ
る。Further, by making the change operation for a plurality of tuples in the search data holding unit 4 executed as a batch process, if the operation can be executed at high speed, the operation of the data transfer unit 9 can be executed at high speed. As a result, the throughput of the entire system can be increased.
【0054】(トランザクション処理手段)トランザク
ション処理手段2は非同期に要求される検索操作と変更
操作をデータの一貫性を保つように実行順序を制御する
ための排他制御と、変更操作を中止したときにトランザ
クション開始前の状態に戻すための情報を記録するため
のロギングを行う。排他制御は複数のユーザから要求さ
れるデータベース操作間の排他制御のほかに、データベ
ース操作要求処理手段3とデータ転送手段9の間の排他
制御にも用いられる。(Transaction processing means) The transaction processing means 2 performs exclusive control for controlling the execution order of the asynchronously requested search operation and change operation so as to maintain data consistency, and when the change operation is stopped. Performs logging to record information for returning to the state before the transaction started. The exclusive control is used not only for exclusive control between database operations requested by a plurality of users but also for exclusive control between the database operation request processing means 3 and the data transfer means 9.
【0055】前述の文献[1]で説明される複粒度ロッ
クを用いてさまざまなアイソレーションレベルを実現す
る。ロックの対象は表、タプル、ファイルである。本発
明におけるファイルは検索向けデータ保持手段、挿入向
けデータ保持手段1,2および削除向けデータ保持手段
1,2からなるものとみなすことができる。排他制御と
ロギングにおいてはファイルを構成する検索向けデータ
保持手段、挿入向けデータ保持手段1,2および削除向
けデータ保持手段1,2がどういう構造であるかは無関
係にこれらをまとめてひとつのオブジェクトとして扱う
ことができる。Various isolation levels are realized by using the multi-granular lock described in the aforementioned reference [1]. Locks are applied to tables, tuples, and files. The file in the present invention can be regarded as being composed of search data holding means, insertion data holding means 1 and 2, and deletion data holding means 1 and 2. Regarding exclusive control and logging, regardless of the structure of the data holding means for search, the data holding means for insertion 1, 2 and the data holding means 1, 2 for deletion, which constitute a file, they are grouped together as one object. Can handle.
【0056】ここでロックに関して説明する。2相ルー
ルによるロック方式では、書き込み操作は、操作対象に
対して更新(X)ロックを、読み出し操作は、操作対象
に対して参照(S)ロックをそれぞれ確保することによ
り、対象を予約してから、操作する。あるトランザクシ
ョンT1がある種類のロックをしたときに、他のトラン
ザクションT0がその対象に対してすでにある種類のロ
ックをしているときの結果は、表1のようになる。Here, the lock will be described. In the lock method based on the two-phase rule, the write operation reserves the update (X) lock for the operation target, and the read operation reserves the reference (S) lock for the operation target, thereby reserving the target. From, operate. Table 1 shows the result when a certain transaction T1 has a certain kind of lock and another transaction T0 has already a certain kind of lock on the target.
【0057】[0057]
【表1】 [Table 1]
【0058】表1において、○はロックが共存できるこ
とを表し、トランザクションT1は、操作対象をロック
できる。Xはロックが衝突することを表し、トランザク
ションT1は、衝突の原因となっているロックが放棄さ
れ、操作対象をロックできるようになるまで、実行を中
断し、待つことになる。In Table 1, ○ indicates that locks can coexist, and transaction T1 can lock the operation target. X indicates that the lock conflicts, and the transaction T1 suspends execution and waits until the lock causing the conflict is abandoned and the operation target can be locked.
【0059】あるトランザクションにおいては、ロック
をひとつでも放棄したら、それ以降、トランザクション
が終了するまで、ロックを確保しない。あるトランザク
ションの終了時に、そのトランザクションが確保したロ
ックのうち、放棄されていないものが残っていれば、す
べて放棄される。つまり、トランザクションを複数のロ
ックを確保していく過程と、確保していたロックをはず
す過程の2相に分ける。このことにより、トランザクシ
ョンの直列化可能性が保証される。In a transaction, if one lock is abandoned, the lock is not secured thereafter until the transaction ends. At the end of a transaction, any locks held by that transaction that have not been relinquished will be relinquished. That is, the transaction is divided into two phases: a process of securing a plurality of locks and a process of releasing the secured lock. This guarantees the serializability of the transaction.
【0060】また、トランザクション中において異なる
種類の操作対象を認める場合、例えば、データベース、
データベースを構成する表、表を構成するタプルなどに
対する操作を認める場合、複粒度ロックが必要になる。
つまり、ある対象への書き込み操作は、その上位の対象
に対して、更新の意図があることを表すIXやSIXを
確保してから、その対象に対してXロックを確保する。
ある対象への読み出し操作は、その上位の対象に対し
て、参照の意図があることを表すISロックを確保して
から、その対象に対してSロックを確保する。表1にこ
れらの意図的ロックIX、SIX、ISを加えると、表
2のようになる。表1と同様に、○はロックが共存でき
る事を表し、×はロックが衝突することを表す。When different types of operation objects are recognized during a transaction, for example, a database,
To permit operations on tables that make up the database, tuples that make up the tables, and so on, a multi-grain lock is required.
In other words, in a write operation on a certain object, IX or SIX indicating that there is an update intention is secured for a higher-order object, and then an X lock is secured for that object.
In a read operation on a certain object, an IS lock indicating that the user intends to refer is secured for a higher-order object, and then an S lock is secured for that object. When these intentional locks IX, SIX, and IS are added to Table 1, Table 2 is obtained. As in Table 1, ○ indicates that locks can coexist and x indicates that locks collide.
【0061】[0061]
【表2】 [Table 2]
【0062】以下で本発明においてREAD COMM
ITTEDのアイソレーションレベルを実現する方法に
ついて述べる。まず、ロックに関して以下の前提条件が
ある。 ・ 表にかかるロックはIS、IX、S、SIX、Xの
いずれかのモードを持つ。 ・ タプルにかかるロックはS、Xのいずれかのモード
を持つ。 ・ タプルにかかっているSロックは参照後にいつでも
解除することができる。 ・ タプルにかかっているXロックはトランザクション
の終了まで解除できない。 ・ ファイルにアクセスする前後では、ファイルに排他
的なラッチをかける。 データベース操作の種類に応じて手順を述べる。Hereinafter, in the present invention, READ COMM
A method for realizing the ITTED isolation level will be described. First, there are the following preconditions regarding locking. The lock on the table has one of the modes IS, IX, S, SIX, and X. Locks on tuples have either S or X mode.・ The S lock on the tuple can be released at any time after reference. -The X lock on the tuple cannot be released until the end of the transaction.・ Before and after accessing the file, the file is exclusively latched. The procedure is described according to the type of database operation.
【0063】(検索操作) 0.操作開始前に対象の表にISロックをかける。 1.ファイルにラッチをかける。 2.検索条件に合致するタプルを探す。 3.得られたタプルにSロックをかける。 4.Sロックをかけることができない場合はファイルへ
のラッチを解除して1に戻る。 5.タプルを検索結果に加える。 6.タプルへのロックを解除する。 7.ファイルへのラッチを解除する。(Search Operation) Lock the target table before starting the operation. 1. Latch the file. 2. Search for tuples that match the search conditions. 3. Apply S lock to the obtained tuple. 4. If the S lock cannot be applied, the latch to the file is released and the process returns to 1. 5. Add tuples to search results. 6. Unlock the tuple. 7. Unlatch to file.
【0064】(挿入操作) 0.操作開始前に対象の表にIXロックをかける。 1.ファイルにラッチをかける。 2.新たなタプルIDを取得する。 3.そのタプルにXロックをかける。 4.ログにタプル挿入を記録する。 5.ファイルにタプルを挿入する。 6.ファイルへのラッチを解除する。(Insert Operation) IX lock the target table before starting the operation. 1. Latch the file. 2. Obtain a new tuple ID. 3. X lock the tuple. 4. Record tuple insertion in log. 5. Insert a tuple into the file. 6. Unlatch to file.
【0065】(更新操作) 0.操作開始前に対象の表にIXロックをかける。 1.ファイルにラッチをかける。 2.更新対象の条件に合致するタプルを探す。 3.得られたタプルにXロックをかける。 4.Xロックをかけることができない場合はファイルへ
のラッチを解除して1に戻る。 5.ログにタプル更新を記録する。 6.タプルの更新を実行する。 7.ファイルへのラッチを解除する。(Update Operation) IX lock the target table before starting the operation. 1. Latch the file. 2. Search for tuples that match the conditions to be updated. 3. X lock the tuples obtained. 4. If the X lock cannot be applied, the latch to the file is released and the process returns to 1. 5. Record tuple updates in the log. 6. Perform a tuple update. 7. Unlatch to file.
【0066】(削除操作) 0.操作開始前に対象の表にIXロックをかける。 1.ファイルにラッチをかける。 2.削除対象の条件に合致するタプルを探す。 3.得られたタプルにXロックをかける。 4.Xロックをかけることができない場合はファイルへ
のラッチを解除して1へ戻る。 5.ログにタプル削除を記録する。 6.タプルの削除を実行する。 7.ファイルへのラッチを解除する。 トランザクションの終了に際しては以下の処理を行う。(Delete Operation) IX lock the target table before starting the operation. 1. Latch the file. 2. Search for tuples that match the conditions to be deleted. 3. X lock the tuples obtained. 4. If the X lock cannot be applied, the latch to the file is released and the process returns to 1. 5. Record tuple deletion in log. 6. Perform tuple deletion. 7. Unlatch to file. At the end of the transaction, the following processing is performed.
【0067】(コミット) 0.変更操作の前に対象の表にIXロックがかかってい
る。 1.ログにコミットを記録する。 2.コミットしたトランザクションが要求したロックを
すべて解除する。(Commit) 0. An IX lock has been placed on the target table before the change operation. 1. Record commit in log. 2. Release all locks requested by the committed transaction.
【0068】(ロールバック(アボート)) 0.変更操作の前に対象の表にIXロックがかかってい
る。 1.ログにロールバックを記録する。 2.ログを参照しながら、データ操作をUNDOする。
その際、必要なファイルへのラッチを行う。 3.ロールバックしたトランザクションが要求したロッ
クをすべて解除する。(Rollback (abort)) An IX lock has been placed on the target table before the change operation. 1. Record rollback in log. 2. Undo the data operation while referring to the log.
At that time, the necessary file is latched. 3. Release all locks requested by the rolled back transaction.
【0069】以上、本発明のデータベース管理システム
を中心に各実施形態を説明してきたが、本発明は、その
システムにおける処理手順としても説明したようにデー
タベース管理システムとしての形態も可能である。さら
に、これらデータベース管理方法を実施するための、又
は、データベース管理システムの各手段として機能させ
るためのプログラムとしても、或いは、そのプログラム
を記録したコンピュータ読み取り可能な記録媒体として
の形態も可能である。The embodiments of the present invention have been described centering on the database management system of the present invention. However, the present invention can also be implemented as a database management system as described as the processing procedure in the system. Further, the present invention can be implemented as a program for implementing these database management methods or functioning as each means of the database management system, or as a computer-readable recording medium on which the program is recorded.
【0070】本発明によるデータベース管理の機能を実
現するためのプログラムやデータを記憶した記録媒体の
実施形態を説明する。記録媒体としては、具体的には、
CD−ROM、光磁気ディスク、DVD−ROM、フロ
ッピー(登録商標)ディスク、フラッシュメモリ、及び
その他各種ROMやRAM等が想定でき、これら記録媒
体に上述した本発明の各実施形態のシステムの機能をコ
ンピュータに実行させ、データベース管理の機能を実現
するためのプログラムを記録して流通させることによ
り、当該機能の実現を容易にする。そしてコンピュータ
等の情報処理装置に上記のごとくの記録媒体を装着して
情報処理装置によりプログラムを読み出すか、若しくは
情報処理装置が備えている記憶媒体に当該プログラムを
記憶させておき、必要に応じて読み出すことにより、本
発明に関わるデータベース管理機能を実行することがで
きる。An embodiment of a recording medium storing programs and data for realizing the function of database management according to the present invention will be described. As a recording medium, specifically,
A CD-ROM, a magneto-optical disk, a DVD-ROM, a floppy (registered trademark) disk, a flash memory, and various other ROMs and RAMs can be assumed. The functions of the system of each embodiment of the present invention described above are recorded on these recording media. By causing a computer to execute and record and distribute a program for realizing a database management function, the function is easily realized. Then, the program is read by the information processing apparatus by attaching the recording medium as described above to an information processing apparatus such as a computer, or the program is stored in a storage medium provided in the information processing apparatus, and if necessary, By reading, the database management function according to the present invention can be executed.
【0071】[0071]
【発明の効果】本発明によれば、検索向けデータ保持手
段が提供する高度な検索要求を高速に処理する能力を保
ちつつ、それによって更新性能が低下することを防ぐこ
とができる。According to the present invention, it is possible to maintain the ability to process high-level search requests provided by the data storage means for search at a high speed, and prevent the update performance from being lowered.
【0072】本発明によれば、複数のユーザから非同期
に要求されるデータベース操作要求に対して検索向けデ
ータ保持手段と挿入向けデータ保持手段1,2および削
除向けデータ保持手段1,2の整合性を保ちながら検索
にも更新にも高速に応答することができる。According to the present invention, the consistency between the data holding means for search, the data holding means for insertion 1, 2 and the data holding means 1, 2 for deletion in response to a database operation request asynchronously requested by a plurality of users. While responding to searches and updates quickly.
【0073】本発明によれば、挿入向けデータ保持手段
1または2のデータを検索向けデータ保持手段に反映中
も、データ挿入を高速に行うことができ、更新要求への
応答を向上することができる。According to the present invention, data can be inserted at a high speed even while the data of the data holding means for insertion 1 or 2 is being reflected on the data holding means for search, and the response to the update request can be improved. it can.
【0074】本発明によれば、削除向けデータ保持手段
1または2のデータを検索向けデータ保持手段に反映中
も、データ削除を高速に行うことができ、更新要求への
応答を向上することができる。According to the present invention, data can be deleted at a high speed even while the data in the data holding means for deletion 1 or 2 is being reflected on the data holding means for search, and the response to an update request can be improved. it can.
【0075】本発明によれば、既存のデータベース管理
システムで検索は高速だが更新が比較的低速であるよう
なものに対して、そのデータベース管理システムに特別
な変更を施すことなく、更新要求への応答を向上するこ
とができる。また、逆に既存のデータベース管理システ
ムの更新応答が高速ならば、検索が高速なデータ保持手
段と組み合わせることによって、更新応答性能を生かし
ながら検索要求への応答を向上することができる。According to the present invention, for an existing database management system in which the retrieval is fast but the update is relatively slow, the update request can be made without any special change in the database management system. Response can be improved. Conversely, if the update response of the existing database management system is fast, the response to the search request can be improved while utilizing the update response performance by combining it with a high-speed data holding means.
【0076】本発明によれば、メモリが大量にある場合
に変更向けデータ保持手段としてメモリを利用すること
で更新性能の著しい向上が実現できる。According to the present invention, when there is a large amount of memory, remarkable improvement in update performance can be realized by using the memory as the data holding means for change.
【0077】本発明によれば、属性値の特性に応じた各
データ保持手段を用いることにより、例えばデータ量が
少ない属性値についてはメモリを挿入向けデータ保持手
段1,2及び削除向けデータ保持手段1,2として用い
ることによって性能の向上が実現できる。According to the present invention, by using each data holding means corresponding to the characteristic of the attribute value, for example, for an attribute value having a small data amount, the memory is inserted into the data holding means 1, 2 and the data holding means for deletion. By using them as 1 and 2, the performance can be improved.
【0078】本発明によれば、システムの稼働率が低く
なる時間帯が決まっている場合に、検索向けデータ保持
手段へのデータの反映をその時間帯に集中させることで
システム全体のスループットを上げることができる。According to the present invention, when a time period during which the operation rate of the system is low is determined, the data throughput to the data holding means for retrieval is concentrated in that time period to increase the throughput of the entire system. be able to.
【0079】本発明によれば、検索向けデータ保持手段
への更新要求が発生する頻度を減らすことにより、排他
制御が必要になる頻度を減らし、システム全体のスルー
プットを上げることができる。According to the present invention, by reducing the frequency at which update requests are issued to the data storage means for search, the frequency at which exclusive control is required can be reduced, and the throughput of the entire system can be increased.
【0080】本発明によれば、検索向けデータ保持手段
が複数のタプルに対する変更操作をバッチ処理で行うこ
とにより高速に実行できる場合にはデータ転送手段の実
行が高速になり、結果としてシステム全体のスループッ
トを上げることができる。According to the present invention, if the search data holding unit can execute a change operation on a plurality of tuples in a batch process to perform the operation at a high speed, the data transfer unit can execute the data at a high speed. Throughput can be increased.
【図1】 本発明によるデータベース管理システムの機
能を説明するためのブロック構成図である。FIG. 1 is a block diagram illustrating the functions of a database management system according to the present invention.
【図2】 本発明を具体化するシステム構成の一例を示
す図である。FIG. 2 is a diagram showing an example of a system configuration embodying the present invention.
【図3】 データベース操作要求処理手段の処理手順の
一例を示すフロー図である。FIG. 3 is a flowchart illustrating an example of a processing procedure of a database operation request processing unit.
【図4】 データベース操作要求処理手段の処理手順の
一例を示すフロー図である。FIG. 4 is a flowchart illustrating an example of a processing procedure of a database operation request processing unit.
【図5】 データベース操作要求処理手段の処理手順の
一例を示すフロー図である。FIG. 5 is a flowchart illustrating an example of a processing procedure of a database operation request processing unit.
【図6】 データ転送手段の処理手順の一例を説明する
ためのフロー図である。FIG. 6 is a flowchart illustrating an example of a processing procedure of a data transfer unit.
1…データベース操作要求入力手段、2…トランザクシ
ョン処理手段、3…データベース操作要求処理手段、4
…検索向けデータ保持手段、5…挿入向けデータ保持手
段1、6…挿入向けデータ保持手段2、7…削除向けデ
ータ保持手段1、8…削除向けデータ保持手段2、9…
データ転送手段、10…サーバホスト、11…CPU、
12…メモリ、12a…プログラム領域、12b…デー
タ領域、13…ハードディスク、14…バス、21…入
力端末、22…LAN。DESCRIPTION OF SYMBOLS 1 ... Database operation request input means, 2 ... Transaction processing means, 3 ... Database operation request processing means, 4
... data holding means for search, 5 data holding means for insertion 1, 6 ... data holding means for insertion 2, 7 ... data holding means for deletion 1, 8 ... data holding means for deletion 2, 9, ...
Data transfer means, 10: server host, 11: CPU,
12: memory, 12a: program area, 12b: data area, 13: hard disk, 14: bus, 21: input terminal, 22: LAN.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 池田 哲也 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 (72)発明者 浅田 一繁 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 (72)発明者 竹川 弘志 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 (72)発明者 小川 泰嗣 東京都大田区中馬込1丁目3番6号 株式 会社リコー内 Fターム(参考) 5B075 KK54 ND23 5B082 FA17 GA03 GB04 GB07 ──────────────────────────────────────────────────続 き Continued on the front page (72) Inventor Tetsuya Ikeda 1-3-6 Nakamagome, Ota-ku, Tokyo Inside Ricoh Co., Ltd. (72) Inventor Kazushige Asada 1-3-6 Nakamagome, Ota-ku, Tokyo Inside Ricoh Co., Ltd. (72) Inventor Hiroshi Takekawa 1-3-6 Nakamagome, Ota-ku, Tokyo Inside Ricoh Co., Ltd. (72) Yasushi Ogawa 1-3-6 Nakamagome, Ota-ku, Tokyo Ricoh Co., Ltd. F term (reference) 5B075 KK54 ND23 5B082 FA17 GA03 GB04 GB07
Claims (21)
ース管理装置において、 データの検索操作の処理は高速だがデータの変更操作の
処理は低速な検索向けデータ保持手段と、 データの変更操作の処理は高速な第1及び第2の挿入向
けデータ保持手段と、 データの変更操作の処理は高速な第1及び第2の削除向
けデータ保持手段と、 前記第1及び第2の挿入向けデータ保持手段及び前記第
1及び第2の削除向けデータ保持手段で処理されたデー
タの反映を行うために、前記第1及び第2の挿入向けデ
ータ保持手段及び前記第1及び第2の削除向けデータ保
持手段から前記検索向けデータ保持手段へデータを転送
するデータ転送手段と、 データベースに対する操作要求を該操作要求の内容に応
じて、前記第1及び第2の挿入向けデータ保持手段及び
前記第1及び第2の削除向けデータ保持手段と前記検索
向けデータ保持手段のそれぞれに振り分けて実行するデ
ータベース操作要求処理手段と、 前記データ転送手段と前記データベース操作要求処理手
段との間でデータの一貫性を保証するトランザクション
処理手段と、 を有することを特徴とするデータベース管理装置。In a database management apparatus for managing a database, a data holding means for search which can process a data search operation at a high speed but can process a data change operation at a low speed, and has a high speed at a data change operation. A first and a second insertion data holding unit; a first and a second deletion data holding unit which process data change operations at a high speed; the first and the second insertion data holding unit; In order to reflect the data processed by the first and second data-for-deletion means, the search is performed from the first and second data-for-insertion means and the first and second data-for-deletion means. Transferring means for transferring data to a data holding means for the first and second data holding means for the first and second insertions according to the contents of the operation request. And a database operation request processing unit that executes the operation by distributing the data to the first and second data holding units for deletion and the data holding unit for search, respectively, between the data transfer unit and the database operation request processing unit. A database management device, comprising: transaction processing means for ensuring data consistency.
ース管理装置において、 複数のユーザからのデータベース操作要求を入力するデ
ータベース操作要求入力手段と、 データの検索操作の処理は高速だがデータの変更操作の
処理は低速な検索向けデータ保持手段と、 データの変更操作の処理は高速な第1及び第2の挿入向
けデータ保持手段と、 データの変更操作の処理は高速な第1及び第2の削除向
けデータ保持手段と、 前記第1及び第2の挿入向けデータ保持手段及び前記第
1及び第2の削除向けデータ保持手段で処理されたデー
タの反映を行うために、前記第1及び第2の挿入向けデ
ータ保持手段及び前記第1及び第2の削除向けデータ保
持手段から前記検索向けデータ保持手段へデータを転送
するデータ転送手段と、 前記データベース操作要求入力手段に入力されたデータ
ベースに対する操作要求を、該操作要求の内容に応じ
て、前記第1及び第2の挿入向けデータ保持手段及び前
記第1及び第2の削除向けデータ保持手段と前記検索向
けデータ保持手段のそれぞれに振り分けて実行するデー
タベース操作要求処理手段と、 前記データ転送手段と前記データベース操作要求処理手
段との間でデータの一貫性を保証するトランザクション
処理手段と、を有することを特徴とするデータベース管
理装置。2. A database management apparatus for managing a database, comprising: a database operation request input unit for inputting a database operation request from a plurality of users; and a data search operation process is performed at a high speed, but a data change operation process is performed. A low-speed search data holding unit, a first and a second insertion data holding unit that processes data change operations at a high speed, and a high-speed first and second deletion data store that processes data change operations. Means for reflecting the data processed by the first and second data storage means for insertion and the first and second data storage means for deletion, Data transfer means for transferring data from the holding means and the first and second data holding means for deletion to the data holding means for search; An operation request to the database input to the source operation request input means, the first and second insertion data holding means and the first and second deletion data holding means in accordance with the contents of the operation request And a database operation request processing unit that distributes and executes each of the search data holding units, and a transaction processing unit that guarantees data consistency between the data transfer unit and the database operation request processing unit. A database management device, characterized in that:
装置において、前記第1の挿入向けデータ保持手段のデ
ータを検索向けデータ保持手段に挿入中に、データの挿
入要求があった場合に、前記第2の挿入向けデータ保持
手段に該挿入要求があったデータを挿入することを特徴
とするデータベース管理装置。3. The database management device according to claim 1, wherein, when data is requested to be inserted during insertion of the data of the first data storage unit for insertion into the data storage unit for search, A database management device, wherein the data requested to be inserted is inserted into a second data storage unit for insertion.
装置において、前記第1の削除向けデータ保持手段のデ
ータを検索向けデータ保持手段から削除中に、データの
削除要求があった場合に、前記第2の削除向けデータ保
持手段に該削除要求があったデータを挿入することを特
徴とするデータベース管理装置。4. The database management apparatus according to claim 1, wherein when a data deletion request is received while data of the first data storage unit for deletion is being deleted from the data storage unit for search. A database management device, wherein the data requested to be deleted is inserted into a second data storage unit for deletion.
タベース管理装置において、前記検索向けデータ保持手
段、前記第1の挿入向けデータ保持手段、前記第2の挿
入向けデータ保持手段、前記第1の削除向けデータ保持
手段、前記第2の削除向けデータ保持手段、のいずれか
1又は複数は、それ自体が独立して動作可能にデータベ
ース管理システムを構成することができることを特徴と
するデータベース管理装置。5. The database management device according to claim 1, wherein said search data holding unit, said first insertion data holding unit, said second insertion data holding unit, and Database management characterized in that one or more of the first data holding means for deletion and the second data holding means for deletion can constitute a database management system so that they can operate independently. apparatus.
タベース管理装置において、前記第1の挿入向けデータ
保持手段、前記第2の挿入向けデータ保持手段、前記第
1の削除向けデータ保持手段、前記第2の削除向けデー
タ保持手段、のいずれか1又は複数が、メモリ上にある
ことを特徴とするデータベース管理装置。6. The database management device according to claim 1, wherein said first insertion data holding unit, said second insertion data holding unit, and said first deletion data holding unit. And at least one of the second data-for-deletion holding means is in a memory.
タベース管理装置において、前記検索向けデータ保持手
段、前記第1の挿入向けデータ保持手段、前記第2の挿
入向けデータ保持手段、前記第1の削除向けデータ保持
手段、前記第2の削除向けデータ保持手段は、属性値の
特性に応じてその形態が選定されることを特徴とするデ
ータベース管理装置。7. The database management device according to claim 1, wherein the search data holding unit, the first insertion data holding unit, the second insertion data holding unit, The database management apparatus according to claim 1, wherein the first data holding means for deletion and the second data holding means for deletion have their forms selected according to the characteristics of attribute values.
タベース管理装置において、前記データ転送手段に転送
指定時刻情報を保持させておくことにより、該データ転
送手段による前記検索向けデータ保持手段へのデータの
変更操作を前記転送指定時刻情報に指定された時刻まで
遅延することができることを特徴とするデータベース管
理装置。8. The database management apparatus according to claim 1, wherein the data transfer unit holds the designated transfer time information, so that the data transfer unit can store the search data holding unit. The data management apparatus according to claim 1, wherein the data change operation can be delayed until a time specified in the transfer specification time information.
タベース管理装置において、前記データ転送手段は、該
データ転送手段が実行すべき前記検索向けデータ保持手
段への変更操作要求が一定数になるごとに変更操作を実
行することを特徴とするデータベース管理装置。9. The database management apparatus according to claim 1, wherein the data transfer unit has a predetermined number of change operation requests to the search data holding unit to be executed by the data transfer unit. A database management device for executing a change operation every time.
ータベース管理装置において、前記検索向けデータ保持
手段における複数の処理単位データに対する変更操作が
バッチ処理として実行されることを特徴とするデータベ
ース管理装置。10. The database management apparatus according to claim 1, wherein a change operation on a plurality of processing unit data in said search data holding unit is executed as a batch process. apparatus.
ータの変更操作の処理は低速な検索向けデータ保持手段
と、データの変更操作の処理は高速な第1及び第2の挿
入向けデータ保持手段と、データの変更操作の処理は高
速な第1及び第2の削除向けデータ保持手段とを用いて
データベースを処理し、管理するためのデータベース管
理方法であって、 複数のユーザからのデータベース操作要求を入力し、 前記処理されたデータの反映を行うために、前記第1及
び第2の挿入向けデータ保持手段及び前記第1及び第2
の削除向けデータ保持手段から前記検索向けデータ保持
手段へデータを転送し、 前記入力されたデータベースに対する操作要求を、該操
作要求の内容に応じて、前記第1及び第2の挿入向けデ
ータ保持手段及び前記第1及び第2の削除向けデータ保
持手段と前記検索向けデータ保持手段のそれぞれに振り
分けて処理し、 前記データの転送と前記データベース操作要求の処理と
の間でデータの一貫性を保証することを特徴とするデー
タベース管理方法。11. A data holding means for search which is fast in processing data search operation but is slow in processing data change operation, and first and second insertion data holding means which is fast in processing data change operation. And a database management method for processing and managing the database using high-speed first and second data storage means for deletion, wherein the data change operation is performed by a plurality of users. And the first and second data storage means for insertion and the first and second data to reflect the processed data.
Transferring data from the data holding means for deletion to the data holding means for search, and transmitting the input operation request to the database in accordance with the content of the operation request, the first and second data holding means for insertion And processing is separately performed between the first and second data holding means for deletion and the data holding means for search, and data consistency is guaranteed between the transfer of the data and the processing of the database operation request. A database management method, characterized in that:
法において、前記第1の挿入向けデータ保持手段のデー
タを検索向けデータ保持手段に挿入中に、データの挿入
要求があった場合に、前記第2の挿入向けデータ保持手
段に該挿入要求があったデータを挿入することを特徴と
するデータベース管理方法。12. The database management method according to claim 11, wherein when the data of the first data storage unit for insertion is inserted into the data storage unit for search, a request for data insertion is made. And inserting the data requested to be inserted into the data holding means for insertion.
法において、前記第1の削除向けデータ保持手段のデー
タを検索向けデータ保持手段から削除中に、データの削
除要求があった場合に、前記第2の削除向けデータ保持
手段に該削除要求があったデータを挿入することを特徴
とするデータベース管理方法。13. The database management method according to claim 11, wherein when a request to delete data is issued while data in said first data storage for deletion is being deleted from said data storage for search, said second data is deleted. And inserting the data requested to be deleted into the data holding means for deletion.
のデータベース管理方法において、前記検索向けデータ
保持手段、前記第1の挿入向けデータ保持手段、前記第
2の挿入向けデータ保持手段、前記第1の削除向けデー
タ保持手段、前記第2の削除向けデータ保持手段、のい
ずれか1又は複数は、それ自体が独立して動作可能にデ
ータベース管理システムを構成することができることを
特徴とするデータベース管理方法。14. The database management method according to claim 11, wherein the search data holding unit, the first insertion data holding unit, the second insertion data holding unit, Database management characterized in that one or more of the first data holding means for deletion and the second data holding means for deletion can constitute a database management system so that they can operate independently. Method.
のデータベース管理方法において、前記第1の挿入向け
データ保持手段、前記第2の挿入向けデータ保持手段、
前記第1の削除向けデータ保持手段、前記第2の削除向
けデータ保持手段、のいずれか1又は複数が、メモリ上
にあることを特徴とするデータベース管理方法。15. The database management method according to claim 11, wherein the first insertion data holding unit, the second insertion data holding unit,
A database management method, wherein one or more of the first data holding means for deletion and the second data holding means for deletion are provided in a memory.
のデータベース管理方法において、前記検索向けデータ
保持手段、前記第1の挿入向けデータ保持手段、前記第
2の挿入向けデータ保持手段、前記第1の削除向けデー
タ保持手段、前記第2の削除向けデータ保持手段は、属
性値の特性に応じてその形態が選定されることを特徴と
するデータベース管理方法。16. The database management method according to claim 11, wherein said search data holding unit, said first insertion data holding unit, said second insertion data holding unit, and The database management method according to claim 1, wherein the data holding means for deletion and the second data holding means for deletion have their forms selected according to the characteristics of attribute values.
のデータベース管理方法において、前記データ転送の時
刻を指定する指定時刻情報を保持させておくことによ
り、該データ転送の際の前記検索向けデータ保持手段へ
のデータの変更操作を前記指定時刻情報に指定された時
刻まで遅延することを特徴とするデータベース管理方
法。17. The database management method according to claim 11, wherein designated time information for designating a time of the data transfer is held, so that the search data at the time of the data transfer is held. A database management method, wherein an operation of changing data to a holding unit is delayed until a time specified in the specified time information.
のデータベース管理方法において、前記データ転送は、
転送すべき前記検索向けデータ保持手段への変更操作要
求が一定数になるごとに変更操作を実行することを特徴
とするデータベース管理方法。18. The database management method according to claim 11, wherein the data transfer comprises:
A database management method, wherein a change operation is executed every time a change operation request to the search data holding unit to be transferred reaches a predetermined number.
のデータベース管理方法において、前記検索向けデータ
保持手段における複数の処理単位データに対する変更操
作をバッチ処理として実行することを特徴とするデータ
ベース管理方法。19. The database management method according to claim 11, wherein a change operation for a plurality of processing unit data in the data storage unit for search is executed as a batch process. .
データベース管理装置の各手段として機能させるため
の、又は、請求項11乃至19のいずれか1記載のデー
タベース管理方法を実行させるためのプログラム。20. A program for functioning as each means of the database management device according to any one of claims 1 to 10, or for executing the database management method according to any one of claims 11 to 19 .
たコンピュータ読み取り可能な記録媒体。21. A computer-readable recording medium on which the program according to claim 20 is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001101024A JP4245282B2 (en) | 2001-03-30 | 2001-03-30 | Write delay database management method, apparatus, program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001101024A JP4245282B2 (en) | 2001-03-30 | 2001-03-30 | Write delay database management method, apparatus, program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002297423A true JP2002297423A (en) | 2002-10-11 |
JP4245282B2 JP4245282B2 (en) | 2009-03-25 |
Family
ID=18954401
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001101024A Expired - Fee Related JP4245282B2 (en) | 2001-03-30 | 2001-03-30 | Write delay database management method, apparatus, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4245282B2 (en) |
-
2001
- 2001-03-30 JP JP2001101024A patent/JP4245282B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP4245282B2 (en) | 2009-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6772155B1 (en) | Looking data in a database system | |
US7444329B2 (en) | Event driven transaction state management with single cache for persistent framework | |
US7243088B2 (en) | Database management system with efficient version control | |
US7363332B2 (en) | Dynamic synchronization of tables | |
US7644097B2 (en) | Full-text search device performing merge processing by using full-text index-for-registration/deletion storage part with performing registration/deletion processing by using other full-text index-for-registration/deletion storage part | |
US7774319B2 (en) | System and method for an optimistic database access | |
US6240413B1 (en) | Fine-grained consistency mechanism for optimistic concurrency control using lock groups | |
CN102043838A (en) | Primary database system, replication database system and method for replicating data of a primary database system | |
WO2018001135A1 (en) | Method for processing database transaction, client and server | |
JP4833590B2 (en) | Concurrent transactions (CONCURRENT TRANSACTIONS) and page synchronization (PAGESYNCHRONIZATION) | |
US9922086B1 (en) | Consistent query of local indexes | |
US6611848B1 (en) | Methods for maintaining data and attribute coherency in instances of sharable files | |
WO2022213526A1 (en) | Transaction processing method, distributed database system, cluster, and medium | |
US8655853B2 (en) | System and method for optimizing database transaction termination | |
JP4287900B2 (en) | Write delay database management system and program | |
US20060161539A1 (en) | Method and system of database management with shared area | |
US8180745B2 (en) | Persistent object references to parallel database containers | |
CN115495495A (en) | Transaction processing method, distributed database system, cluster and medium | |
WO2019098870A1 (en) | Data storage system and method of providing a data storage system | |
JP2002297423A (en) | Write delay database management method, device, program and recording medium | |
JP2002351715A (en) | Writing delay database managing system | |
JP4289834B2 (en) | Database management system, database management program, and recording medium | |
JP2002063055A (en) | Writing delay data base managing method and system | |
CN115729930A (en) | Using self-maintained structure information for faster data access | |
JP4306023B2 (en) | Storage method and apparatus for transaction processing, transactional storage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050916 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081007 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081205 |
|
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: 20090106 |
|
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: 20090106 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4245282 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: 20120116 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140116 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |