JP2002041567A - Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded - Google Patents

Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded

Info

Publication number
JP2002041567A
JP2002041567A JP2000230383A JP2000230383A JP2002041567A JP 2002041567 A JP2002041567 A JP 2002041567A JP 2000230383 A JP2000230383 A JP 2000230383A JP 2000230383 A JP2000230383 A JP 2000230383A JP 2002041567 A JP2002041567 A JP 2002041567A
Authority
JP
Japan
Prior art keywords
data
additional information
search
database
identification number
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.)
Pending
Application number
JP2000230383A
Other languages
Japanese (ja)
Inventor
Takaaki Matsumoto
高明 松本
Shinji Fujiwara
真二 藤原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000230383A priority Critical patent/JP2002041567A/en
Publication of JP2002041567A publication Critical patent/JP2002041567A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a technology capable of improving the processing efficiency in database retrieval. SOLUTION: The database managing method for managing a database to perform retrieving processing, has a step for generating an identification number for identifying data, which are the target of retrieving processing, a step for reading the contents of additional information corresponding to the generated identification number while referring to an additional information bit map storing the additional information showing whether the data exist in the database or not, and a step for retrieving the relevant data when the read additional information shows the presence of these data, and suppressing the retrieval of the relevant data when the additional information does not show the presence of these data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はデータベースを管理
するデータベース管理システムに関し、特にB−Tre
eインデックスを用いたインデックス検索時の検索速度
を向上させるデータベース管理システムに適用して有効
な技術に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a database management system for managing a database, and more particularly to a B-Tre.
The present invention relates to a technology effective when applied to a database management system for improving a search speed at the time of an index search using an e-index.

【0002】[0002]

【従来の技術】従来、“Lehman、P.、Yao、S.B:Efficient
Locking for Concurrent Operationson B-trees、ACM
Transactions on Database System Vol6、No4(1981)、P.
650〜P.670”にある様に、B−Treeの検索ではルー
トノードから検索を開始し、着目したノードに検索した
いデータが格納されているかどうかを検査している。着
目したノードに格納されていない場合には、検索したい
データが格納されていると期待される子ノードを検査
し、以上の動作を繰り返して行う。その為、B−Tre
eインデックスに存在しないデータ、つまりデータベー
スに存在しないデータの場合にはリーフノードまで検索
が行われる。
2. Description of the Related Art Conventionally, "Lehman, P., Yao, SB: Efficient
Locking for Concurrent Operationson B-trees, ACM
Transactions on Database System Vol 6, No4 (1981), P.
As described in 650 to P.670 ", in the B-Tree search, the search is started from the root node, and it is checked whether or not the data to be searched is stored in the node of interest. If not, the child node expected to store the data to be searched is checked, and the above operation is repeatedly performed.
If the data does not exist in the e-index, that is, the data does not exist in the database, the search is performed up to the leaf node.

【0003】[0003]

【発明が解決しようとする課題】前記従来技術では、B
−Treeインデックスに存在しないデータあってもリ
ーフページまで検索している為、B−Treeインデッ
クスに存在しないデータの検索を行うとB−Treeイ
ンデックスの検索時のコストが増加し、検索効率が低下
するという問題がある。本発明の目的は上記問題を解決
し、データベース検索の処理効率を向上させることが可
能な技術を提供することにある。
In the above prior art, B
-Even if there is data that does not exist in the Tree index, the search is performed up to the leaf page. Therefore, if data that does not exist in the B-Tree index is searched, the cost for searching the B-Tree index increases, and the search efficiency decreases. There is a problem. An object of the present invention is to solve the above problem and provide a technique capable of improving the processing efficiency of database search.

【0004】[0004]

【課題を解決するための手段】本発明は、検索処理の行
われるデータベースを管理するデータベース管理システ
ムにおいて、検索処理の対象となっているデータがデー
タベース中に存在している場合に当該データの検索を行
うものである。
SUMMARY OF THE INVENTION The present invention relates to a database management system for managing a database in which a search process is performed, when a data to be searched exists in the database. Is what you do.

【0005】本発明のデータベース管理システムでは、
インデックスを作成する際にインデックス作成の対象と
なっているデータを識別する為の識別番号を生成し、前
記データがデータベース中に存在していることを示す付
加情報を、前記生成した識別番号に対応するビットマッ
プに設定して付加情報ビットマップを作成する。
[0005] In the database management system of the present invention,
When creating an index, an identification number for identifying data to be indexed is generated, and additional information indicating that the data exists in the database corresponds to the generated identification number. To create the additional information bitmap.

【0006】インデックス検索を行う際には、検索処理
の対象となっているデータを識別する為の識別番号を生
成し、前記生成した識別番号に対応する付加情報ビット
マップを参照して当該データがデータベース中に存在し
ているかどうかを示す付加情報の内容を読み出す。前記
読み出した付加情報が当該データの存在を示している場
合にはそのデータの検索を行い、前記付加情報が当該デ
ータの存在を示していない場合にはそのデータの検索を
抑止する。
When performing an index search, an identification number for identifying data to be searched is generated, and the data is referred to by referring to an additional information bit map corresponding to the generated identification number. The contents of the additional information indicating whether or not the information exists in the database are read. If the read additional information indicates the existence of the data, the data is searched. If the additional information does not indicate the presence of the data, the search of the data is suppressed.

【0007】前記の様に本発明では、インデックスに存
在しないデータをリーフページまで検索するのではな
く、検索する必要のあるデータと必要のないデータを区
別し、検索する必要のあるデータについてのみインデッ
クスを検索する。これにより、インデックス上に存在し
ないデータであってもリーフページまで検索するという
従来のインデックス検索時のコストを削減することが可
能である。
As described above, in the present invention, data that does not exist in the index is not searched until the leaf page, but data that needs to be searched is distinguished from unnecessary data, and only the data that needs to be searched is indexed. Search for. As a result, it is possible to reduce the cost at the time of the conventional index search in which even the data that does not exist in the index is searched up to the leaf page.

【0008】以上の様に本発明のデータベース管理シス
テムによれば、検索処理の対象となっているデータがデ
ータベース中に存在している場合に当該データの検索を
行うので、データベース検索の処理効率を向上させるこ
とが可能である。
As described above, according to the database management system of the present invention, when data to be searched is present in the database, the data is searched, so that the processing efficiency of the database search is improved. It is possible to improve.

【0009】[0009]

【発明の実施の形態】以下にB−Treeインデックス
を用いた検索処理の行われるデータベースを管理する一
実施形態のデータベース管理システムについて説明す
る。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A database management system according to an embodiment for managing a database in which a search process using a B-Tree index is performed will be described below.

【0010】図1は本実施形態のあるデータについて付
加情報ビットマップからB−Treeインデックスをア
クセスして対応するデータを検索する処理の概要を示す
図である。図1に示す様に本実施形態のインデックスに
格納するデータと1対1に対応する付加情報ビットマッ
プ111では、該当データがB−Treeインデックス
112に格納されている場合にそのデータに対応するビ
ットに「1」を設定し、また、当該データが格納されて
いない場合にはそのデータに対応するビットに「0」を
設定している。そして付加情報ビットマップ111の対
応するビットが「1」の場合にはB−Treeインデッ
クス112を探索し、データベース中の表113から該
当するデータを検索する。
FIG. 1 is a diagram showing an outline of a process of searching for corresponding data by accessing a B-Tree index from an additional information bit map for certain data according to the present embodiment. As shown in FIG. 1, in the additional information bitmap 111 corresponding to the data stored in the index of the present embodiment on a one-to-one basis, when the corresponding data is stored in the B-Tree index 112, the bit corresponding to the data is stored. Is set to "1", and when the data is not stored, "0" is set to a bit corresponding to the data. When the corresponding bit of the additional information bit map 111 is “1”, the B-Tree index 112 is searched, and the corresponding data is searched from the table 113 in the database.

【0011】図2は本実施形態のデータベース管理シス
テムの概略構成を示す図である。図2に示す様に本実施
形態のデータベース管理装置211は、インデックス作
成処理部200と、データ検索処理部201と、データ
挿入処理部202と、データ削除処理部203と、識別
番号生成処理部204と、付加情報設定処理部205
と、付加情報参照処理部206とを有している。
FIG. 2 is a diagram showing a schematic configuration of the database management system of the present embodiment. As shown in FIG. 2, the database management device 211 of the present embodiment includes an index creation processing unit 200, a data search processing unit 201, a data insertion processing unit 202, a data deletion processing unit 203, and an identification number generation processing unit 204. And additional information setting processing unit 205
And an additional information reference processing unit 206.

【0012】インデックス作成処理部200は、B−T
reeインデックス216を作成する際に、そのデータ
がデータベース中に存在していることを示す付加情報を
格納した付加情報ビットマップ214を作成する処理部
である。
[0012] The index creation processing section 200 is a BT
When creating the REE index 216, the processing unit creates an additional information bitmap 214 storing additional information indicating that the data exists in the database.

【0013】データ検索処理部201は、データ検索を
行う際に、検索処理の対象となっているデータに対応す
る付加情報が当該データの存在を示している場合にその
データの検索を行い、前記付加情報が当該データの存在
を示していない場合にそのデータの検索を抑止する処理
部である。
When performing a data search, if the additional information corresponding to the data to be searched indicates that the data is present, the data search processing unit 201 searches the data. When the additional information does not indicate the existence of the data, the processing unit suppresses the search for the data.

【0014】データ挿入処理部202は、データを表R
217へ挿入する際に、当該データがデータベース中に
存在していることを示す付加情報を付加情報ビットマッ
プ214に設定する処理部である。データ削除処理部2
03は、データを表R217から削除する際に、当該デ
ータの識別番号がそのデータの取り得る範囲内で当該デ
ータを一意に識別する為の番号である場合に、当該デー
タがデータベース中に存在していないことを示す付加情
報を付加情報ビットマップ214に設定する処理部であ
る。
The data insertion processing unit 202 converts the data into a table R
The processing unit sets the additional information indicating that the data is present in the database in the additional information bitmap 214 when inserting the data into the database 217. Data deletion processing unit 2
03, when the data is deleted from the table R217 and the identification number of the data is a number for uniquely identifying the data within a range that the data can take, the data exists in the database. This is a processing unit that sets additional information indicating that no additional information is stored in the additional information bitmap 214.

【0015】識別番号生成処理部204は、インデック
ス作成やインデックス検索等のデータベース処理の対象
となっているデータを識別する為の識別番号として、そ
のデータが取り得る範囲内で当該データを一意に識別す
る為の番号または当該データのハッシュ値を示す番号を
生成する処理部である。
The identification number generation processing unit 204 uniquely identifies the data within a range that the data can take as an identification number for identifying data to be subjected to database processing such as index creation and index search. This is a processing unit that generates a number for performing the operation or a number indicating the hash value of the data.

【0016】付加情報設定処理部205は、あるデータ
がデータベース中に存在しているかどうかを示す付加情
報を、当該データを識別する為の識別番号に対応する付
加情報ビットマップ214に設定する処理部である。
An additional information setting processing unit 205 sets additional information indicating whether or not certain data exists in a database in an additional information bitmap 214 corresponding to an identification number for identifying the data. It is.

【0017】付加情報参照処理部206は、データがデ
ータベース中に存在しているかどうかを示す付加情報を
格納した付加情報ビットマップ214を参照し、あるデ
ータについて生成された識別番号に対応する付加情報の
内容を読み出す処理部である。
The additional information reference processing unit 206 refers to an additional information bitmap 214 storing additional information indicating whether or not the data exists in the database, and generates additional information corresponding to an identification number generated for a certain data. Is a processing unit that reads out the contents of.

【0018】データベース管理装置211をインデック
ス作成処理部200、データ検索処理部201、データ
挿入処理部202、データ削除処理部203、識別番号
生成処理部204、付加情報設定処理部205及び付加
情報参照処理部206として機能させる為のプログラム
は、CD−ROM等の記録媒体に記録され磁気ディスク
等に格納された後、メモリにロードされて実行されるも
のとする。なお前記プログラムを記録する記録媒体はC
D−ROM以外の他の記録媒体でも良い。
The database management device 211 includes an index creation processing unit 200, a data search processing unit 201, a data insertion processing unit 202, a data deletion processing unit 203, an identification number generation processing unit 204, an additional information setting processing unit 205, and an additional information reference process. A program for functioning as the unit 206 is recorded on a recording medium such as a CD-ROM, stored on a magnetic disk or the like, and then loaded into a memory and executed. The recording medium for recording the program is C
A recording medium other than the D-ROM may be used.

【0019】図2ではCPU212、メモリ213、外
部記憶装置215からなるデータベース管理装置211
に表R217及びB−Treeインデックス216を格
納し、B−Treeインデックス216に付加情報ビッ
トマップ214を付加した検索を行うデータベース管理
システムの構成を表している。
In FIG. 2, a database management device 211 comprising a CPU 212, a memory 213, and an external storage device 215
2 shows a configuration of a database management system that stores a table R217 and a B-Tree index 216 and performs a search by adding an additional information bitmap 214 to the B-Tree index 216.

【0020】図2において、B−Treeインデックス
216は、表R217(表R217の全行数|R|:以
下、表の全行数を|表|の様に表すものとする)の列Rk
を構成列の先頭に持つ様な定義のインデックスである。
このとき、あるデータがB−Treeインデックス21
6の構成列として用いられた、データベースの列データ
中に存在しているかどうかを示す付加情報ビットマップ
214を付加する。以下に本実施形態のデータベース管
理システムにおいて、インデックス作成時に付加情報ビ
ットマップ214を作成する処理について説明する。
In FIG. 2, the B-Tree index 216 corresponds to the column Rk of the table R217 (the total number of rows | R | of the table R217; hereinafter, the total number of rows of the table is represented as | table |).
Is the index of the definition that has at the beginning of the constituent sequence.
At this time, certain data is stored in the B-Tree index 21.
An additional information bitmap 214 that is used as a constituent column of No. 6 and indicates whether it exists in the column data of the database is added. Hereinafter, a process of creating the additional information bitmap 214 at the time of creating an index in the database management system of the present embodiment will be described.

【0021】図3は本実施形態の付加情報ビットマップ
作成時の処理手順を示すフローチャートである。図3に
示す様に本実施形態のデータベース管理装置211のイ
ンデックス作成処理部200は、B−Treeインデッ
クス216の作成の際に、そのB−Treeインデック
ス216を構成するデータがデータベース中に存在して
いることを示す付加情報を格納した付加情報ビットマッ
プ214を作成する処理を行う。
FIG. 3 is a flowchart showing a processing procedure when creating the additional information bitmap according to the present embodiment. As shown in FIG. 3, when creating the B-Tree index 216, the index creation processing unit 200 of the database management device 211 according to the present embodiment determines that the data constituting the B-Tree index 216 exists in the database. To create an additional information bitmap 214 storing additional information indicating that the

【0022】ステップ311でインデックス作成処理が
開始されると、データベース管理装置211のインデッ
クス作成処理部200は、ステップ312でB−Tre
eインデックス216を作成してステップ313に進
む。
When the index creation processing is started in step 311, the index creation processing unit 200 of the database management device 211 determines in step 312 that the B-Tre
The e index 216 is created, and the process proceeds to step 313.

【0023】ステップ313では、付加情報ビットマッ
プ214を作成する指定がデータベース管理者により行
われているかどうかを判定し、付加情報ビットマップ2
14の作成が指定されていないときには、ステップ31
4でB−Treeインデックス216の作成を終了し、
付加情報ビットマップ214の作成が指定されている場
合にはステップ321へ進む。
In step 313, it is determined whether or not designation of creating the additional information bitmap 214 has been performed by the database administrator.
If creation of the file No. 14 is not specified, step 31
In step 4, the creation of the B-Tree index 216 is completed.
If the creation of the additional information bitmap 214 is specified, the process proceeds to step 321.

【0024】ステップ321では、B−Treeインデ
ックス216に格納するデータの取り得る組合せ数がメ
モリ213に展開できるビット数かどうかを判定し、前
記データの取り得る組合せ数がメモリ213に展開でき
るビット数以下であればステップ331へ進む。
At step 321, it is determined whether the number of possible combinations of data stored in the B-Tree index 216 is the number of bits that can be expanded in the memory 213, and the number of possible combinations of the data is determined as the number of bits that can be expanded in the memory 213. If not, the process proceeds to step 331.

【0025】ステップ331では、識別番号生成処理部
204及び付加情報設定処理部205により、B−Tr
eeインデックス216の取り得るデータに1対1に対
応した付加情報ビットマップ214を作成する。すなわ
ち、識別番号生成処理部204は、インデックス作成の
対象となっているデータを識別する為の識別番号とし
て、そのデータが取り得る範囲内で当該データを一意に
識別する為の番号を生成する。例えば、そのデータのデ
ータ型がSMALLINT(2バイトのバイナリ形式の符号付き
整数)の場合、取り得る値の種類は65536種類であ
るので、そのデータの最小値から順に「1」から655
36番までの識別番号を生成する処理を行う。そして付
加情報設定処理部205は、前記データがデータベース
中に存在していることを示す付加情報として「1」を、
前記生成した識別番号に対応する付加情報ビットマップ
214に設定する。
In step 331, the identification number generation processing unit 204 and the additional information setting processing unit 205
The additional information bitmap 214 corresponding to the data that the ee index 216 can take one-to-one is created. That is, the identification number generation processing unit 204 generates, as an identification number for identifying the data for which the index is to be created, a number for uniquely identifying the data within a range that the data can take. For example, when the data type of the data is SMALLINT (signed integer in a 2-byte binary format), there are 65536 kinds of possible values, and therefore, from "1" to 655 in order from the minimum value of the data.
A process for generating identification numbers up to No. 36 is performed. Then, the additional information setting processing unit 205 sets “1” as additional information indicating that the data exists in the database,
It is set in the additional information bitmap 214 corresponding to the generated identification number.

【0026】ステップ321で判定した結果、B−Tr
eeインデックス216に格納するデータの取り得る組
合せ数がメモリ213に展開できるビット数より大きい
場合にはステップ332へ進む。
As a result of the determination at step 321, B-Tr
If the number of possible combinations of data stored in the ee index 216 is larger than the number of bits that can be expanded in the memory 213, the process proceeds to step 332.

【0027】ステップ332では、識別番号生成処理部
204及び付加情報設定処理部205により、そのハッ
シュ値がメモリ213に展開できるビット数に収まる適
当なハッシュ関数によって当該データを類別して、ハッ
シュ値のビット数の大きさを持つ付加情報ビットマップ
214を作成する。すなわち、ステップ332でデータ
ベース管理装置211の識別番号生成処理部204は、
インデックス作成の対象となっているデータを識別する
為の識別番号として、当該データのハッシュ値を示す番
号を生成し、付加情報設定処理部205は、前記データ
がデータベース中に存在していることを示す付加情報と
して「1」を、前記生成した識別番号に対応する付加情
報ビットマップ214に設定する。
In step 332, the data is classified by the identification number generation processing unit 204 and the additional information setting processing unit 205 by an appropriate hash function whose hash value is within the number of bits that can be expanded in the memory 213, and the hash value An additional information bitmap 214 having a bit size is created. That is, in step 332, the identification number generation processing unit 204 of the database management device 211
A number indicating a hash value of the data is generated as an identification number for identifying the data to be indexed, and the additional information setting processing unit 205 determines that the data exists in the database. “1” is set as the additional information to be set in the additional information bitmap 214 corresponding to the generated identification number.

【0028】また本実施形態の付加情報ビットマップ2
14には、データに1対1に対応した付加情報ビットマ
ップかハッシュ値による付加情報ビットマップかを区別
する為のフラグを設定しておくものとする。
The additional information bit map 2 of the present embodiment
14 is set with a flag for distinguishing between an additional information bitmap corresponding to data and an additional information bitmap based on a hash value.

【0029】図4は本実施形態の付加情報ビットマップ
214の例を示す図である。図4ではデータと1対1に
対応する付加情報ビットマップ411とハッシュ関数の
ハッシュ値による付加情報ビットマップ421の例を表
している。
FIG. 4 is a diagram showing an example of the additional information bitmap 214 according to the present embodiment. FIG. 4 shows an example of an additional information bitmap 411 corresponding to data and an additional information bitmap 421 based on a hash value of a hash function.

【0030】図4において、ハッシュ値による付加情報
ビットマップ421は、同一のハッシュ値になる複数の
異なるデータの内のどれか1つがB−Treeインデッ
クス216中に現在格納されているか或いは過去に格納
されていた場合に、そのハッシュ値に対応するビットが
「1」になる。また、同一のハッシュ値になる複数の異
なるデータがどれ一つとして現在格納されておらず、か
つ、過去においても格納されていなかった場合にそのハ
ッシュ値に対応するビットが「0」となる。
In FIG. 4, the additional information bitmap 421 based on the hash value indicates that one of a plurality of different data having the same hash value is currently stored in the B-Tree index 216 or stored in the past. If so, the bit corresponding to the hash value becomes “1”. Further, if any one of a plurality of different data having the same hash value is not currently stored and has not been stored in the past, the bit corresponding to the hash value becomes “0”.

【0031】以下に本実施形態のデータベース管理シス
テムにおいて、B−Treeインデックス216に付加
された付加情報ビットマップ214を利用して2つの表
の結合検索を行う処理について説明する。
A process for performing a join search of two tables using the additional information bitmap 214 added to the B-Tree index 216 in the database management system of the present embodiment will be described below.

【0032】図5は本実施形態のデータベース管理シス
テム中に格納されている2つの表の結合検索の概要を示
す図である。図5において、表S511(全行数|S|)
がデータベース管理システムに格納されており、表R2
17と表S511の結合検索を行う際には、まず表S5
11のデータの内、表S511を検索する為の条件、つ
まり表S511の列しか含まない条件(例えば表S51
1の列Snに対する条件としてSn=10やSn>10
等の条件)に該当するデータである表S’512(全行
数|S’|)を検索する。
FIG. 5 is a diagram showing an outline of a join search of two tables stored in the database management system of this embodiment. In FIG. 5, table S511 (the total number of rows | S |)
Is stored in the database management system, and the table R2
When performing a join search between Table 17 and Table S511, first, Table S5
11, the condition for searching the table S511, that is, the condition including only the column of the table S511 (for example, the table S51)
As conditions for the column Sn of 1, Sn = 10 or Sn> 10
Table S′512 (the total number of rows | S ′ |), which is data corresponding to the above conditions).

【0033】そして前記検索したデータS’と表R21
7のデータの突き合わせを行い、結合検索の条件を満た
す行をデータベース管理システムから検索する。結合検
索の条件の内、表R217と表S’512を突き合わせ
る為の条件には表S’512の列Skと、表R217の
列Rk(例えばSk=RkやSk=Rk+10等の条
件)が含まれているものとする。
Then, the retrieved data S 'and the table R21
Then, the data of No. 7 is matched, and a row satisfying the condition of the join search is searched from the database management system. Among the conditions for the join search, the conditions for matching table R217 with table S'512 include column Sk of table S'512 and column Rk of table R217 (for example, conditions such as Sk = Rk and Sk = Rk + 10). Shall be included.

【0034】図6は本実施形態の付加情報ビットマップ
214を使用した検索処理の処理手順を示すフローチャ
ートである。図6では表S511の列Skを含む検索行
の集合つまり表S’512に対して、表R217の列R
kを構成列の先頭に持つB−Treeインデックス21
6の付加情報ビットマップ214を使用した検索を行う
処理を表している。
FIG. 6 is a flowchart showing a processing procedure of a search process using the additional information bitmap 214 according to the present embodiment. In FIG. 6, a set of search rows including the column Sk of the table S511, that is, the table S'512 is added to the column Rk of the table R217.
B-Tree index 21 having k at the beginning of the constituent column
6 shows a process of performing a search using the additional information bitmap 214.

【0035】ステップ612でデータベース管理装置2
11のデータ検索処理部201は、まずS’のデータを
取り出し、ステップ613では、表R217の検索を行
う為にB−Treeインデックス216が使用できるか
どうかを判定する。B−Treeインデックス216が
使用できない場合には、ステップ614でデータベース
中の表R217のデータを検索し、B−Treeインデ
ックス216が使用できる場合にはステップ621へ進
む。
At step 612, the database management device 2
The eleventh data search processing unit 201 first extracts the data of S ′, and in step 613, determines whether the B-Tree index 216 can be used to search the table R217. If the B-Tree index 216 cannot be used, the data of the table R217 in the database is searched in step 614. If the B-Tree index 216 can be used, the process proceeds to step 621.

【0036】ステップ621では、そのB−Treeイ
ンデックス216に対して付加情報ビットマップ214
が存在するかどうかを調べ、B−Treeインデックス
216に対して付加情報ビットマップ214が存在しな
い場合にはステップ633へ進む。
In step 621, the additional information bitmap 214 is assigned to the B-Tree index 216.
Is checked, and if the additional information bitmap 214 does not exist for the B-Tree index 216, the process proceeds to step 633.

【0037】ステップ633では、S’から取り出した
データがB−Treeインデックス216中に存在して
いるかどうかを検索する。ステップ634では、ステッ
プ633での検索の結果、S’から取り出したデータが
B−Treeインデックス216中に存在していたかを
調べ、S’のデータがB−Treeインデックス216
に存在していなければステップ612のS’からのデー
タの取り出しに戻り、S’のデータがB−Treeイン
デックス216に存在している場合にはステップ635
に進む。
At step 633, a search is made as to whether the data extracted from S 'exists in the B-Tree index 216. In step 634, as a result of the search in step 633, it is checked whether or not the data extracted from S ′ exists in the B-Tree index 216.
If the data does not exist in the B-Tree index 216, the process returns to step 612 to retrieve the data from S '.
Proceed to.

【0038】ステップ635では、B−Treeインデ
ックス216の検索だけで良いか判定する。B−Tre
eインデックス216を構成する列のみで検索の為の条
件判定が完結し、かつ、検索するデータがB−Tree
インデックス216の構成列のみであれば、B−Tre
eインデックス216のみの検索で良い。よって、B−
Treeインデックス216の検索だけで良ければステ
ップ615へ進み、検索を終了する。B−Treeイン
デックス216に存在しないデータも検索するのであれ
ば、ステップ614でデータベース中の表R217を検
索した後、検索を終了する。
In step 635, it is determined whether only the search for the B-Tree index 216 is sufficient. B-Tre
The condition determination for the search is completed only with the columns constituting the e-index 216, and the data to be searched is B-Tree.
If there is only the constituent column of the index 216, B-Tr
A search using only the e-index 216 is sufficient. Therefore, B-
If only the search of the tree index 216 is sufficient, the process proceeds to step 615 and ends the search. If data that does not exist in the B-Tree index 216 is to be searched, the table R217 in the database is searched in step 614, and the search is terminated.

【0039】ステップ621でB−Treeインデック
ス216に対して付加情報ビットマップ214が存在す
る場合にはステップ622に進み、その付加情報ビット
マップ214が、インデックス中のデータのハッシュ値
による付加情報ビットマップ421であるかどうかを判
定する。
If it is determined in step 621 that the additional information bitmap 214 exists for the B-Tree index 216, the process proceeds to step 622, where the additional information bitmap 214 is added to the additional information bitmap based on the hash value of the data in the index. 421 is determined.

【0040】ステップ622で付加情報ビットマップ2
14がハッシュ値による付加情報ビットマップ421で
あると判定された場合はステップ631に進む。ステッ
プ631で識別番号生成処理部204は、S’から取り
出したデータの内、表R217のインデックス構成列に
該当する列を用いてハッシュ値を求める。
At step 622, additional information bit map 2
If it is determined that 14 is the additional information bitmap 421 based on the hash value, the process proceeds to step 631. In step 631, the identification number generation processing unit 204 obtains a hash value using a column corresponding to the index configuration column of the table R217 among the data extracted from S ′.

【0041】ステップ632で付加情報参照処理部20
6は、付加情報ビットマップ214を参照し、そのハッ
シュ値番目の付加情報ビットマップ421の該当ビット
が「1」かどうかを調べる。該当ビットが「0」であれ
ばB−Treeインデックス216中に該当データが無
いのでステップ612のS’からのデータの取り出しに
戻り、該当ビットが「1」であればB−Treeインデ
ックス216中に該当データが存在する可能性があるの
でステップ633へ進む。
At step 632, the additional information reference processor 20
No. 6 refers to the additional information bitmap 214 and checks whether the corresponding bit of the hash value-th additional information bitmap 421 is “1”. If the corresponding bit is "0", there is no corresponding data in the B-Tree index 216, so the process returns to step 612 to extract the data from S '. If the corresponding bit is "1", the data is included in the B-Tree index 216. Since there is a possibility that the corresponding data exists, the process proceeds to step 633.

【0042】ステップ633でデータ検索処理部201
は、B−Treeインデックス216の検索を行う。ス
テップ634では、前記検索の結果、S’から取り出し
たデータと同じ値が存在していなければステップ612
に戻り、同じ値が存在している場合にはステップ635
へ進む。ステップ635では、B−Treeインデック
ス216の検索だけで良いか判定して、前記検索だけで
良ければ検索を終了し、それ以外のデータを検索するの
であれば、ステップ614でデータベース中の表R21
7のデータを検索した後、検索を終了する。
In step 633, the data search processing unit 201
Performs a search of the B-Tree index 216. In step 634, if the same value as the data extracted from S ′ does not exist as a result of the search, step 612
Return to step 635 if the same value exists.
Proceed to. In step 635, it is determined whether only the search of the B-Tree index 216 is sufficient. If the search is sufficient, the search is terminated. If the other data is to be searched, the table R21 in the database is determined in step 614.
After searching the data No. 7, the search is terminated.

【0043】ステップ622で付加情報ビットマップ2
14がハッシュ値による付加情報ビットマップ421で
はなく、データと1対1に対応した付加情報ビットマッ
プ411であると判定された場合はステップ641に進
む。
At step 622, additional information bit map 2
If it is determined that 14 is not the additional information bitmap 421 based on the hash value, but the additional information bitmap 411 corresponding to the data on a one-to-one basis, the process proceeds to step 641.

【0044】ステップ641で識別番号生成処理部20
4は、検索処理の対象となっているデータを識別する為
の識別番号として、そのデータが取り得る範囲内で当該
データを一意に識別する為の番号を生成し、S’から取
り出したデータの値が表R217のB−Treeインデ
ックス216のデータの何番目かを求める。これが付加
情報ビットマップ411での該当ビットの位置となる。
例えば、Rkのデータ型がSMALLINT(2バイトのバイナ
リ形式の符号付き整数)でそのデータを最小値から順序
付けている場合では、S’から取り出したデータの値が
「0」であればそのデータは32769番目となる。
In step 641, the identification number generation processing section 20
4 generates, as an identification number for identifying the data to be subjected to the search processing, a number for uniquely identifying the data within a range that the data can take. The number of the value of the data of the B-Tree index 216 in the table R217 is obtained. This is the position of the corresponding bit in the additional information bit map 411.
For example, when the data type of Rk is SMALLINT (a 2-byte binary signed integer) and the data is ordered from the minimum value, if the value of the data extracted from S ′ is “0”, the data is It is 32,969th.

【0045】ステップ642で付加情報参照処理部20
6は、付加情報ビットマップ411を参照し、その該当
ビットが「1」かどうかを調べる。該当ビットが「0」
であれば、B−Treeインデックス216中に該当デ
ータが無いのでステップ612のS’からのデータの取
り出しに戻り、該当ビットが「1」であればB−Tre
eインデックス216中に該当データが存在するのでス
テップ643へ進む。
In step 642, the additional information reference processor 20
6 refers to the additional information bitmap 411 and checks whether the corresponding bit is “1”. The corresponding bit is "0"
If there is no corresponding data in the B-Tree index 216, the process returns to step 612 to retrieve data from S ′. If the corresponding bit is “1”, the B-Tree
Since the corresponding data exists in the e index 216, the process proceeds to step 643.

【0046】ステップ643でデータ検索処理部201
は、B−Treeインデックス216の検索を行う。ス
テップ644では、B−Treeインデックス216の
検索だけで良いか判定して、前記検索だけで良ければ検
索を終了し、それ以外のデータを検索するのであれば、
ステップ614でデータベース中の表R217のデータ
を検索した後、検索を終了する。
In step 643, the data search processing unit 201
Performs a search of the B-Tree index 216. In step 644, it is determined whether or not only the search of the B-Tree index 216 is sufficient. If the search is sufficient, the search is terminated.
After searching the data of the table R217 in the database in step 614, the search is terminated.

【0047】図7は本実施形態のB−Treeインデッ
クス216に付加情報ビットマップ214が存在する表
への行の挿入処理の処理手順を示すフローチャートであ
る。図7に示す様に本実施形態のデータベース管理装置
211のデータ挿入処理部202は、データを表R21
7へ挿入する際に、当該データがデータベース中に存在
していることを示す付加情報を付加情報ビットマップ2
14に設定する処理を行う。
FIG. 7 is a flowchart showing a processing procedure for inserting a row into a table in which the additional information bitmap 214 exists in the B-Tree index 216 according to the present embodiment. As shown in FIG. 7, the data insertion processing unit 202 of the database management device 211 of the present embodiment stores the data in the table R21.
7, the additional information indicating that the data is present in the database is added to the additional information bitmap 2.
14 is performed.

【0048】図7において、表R217に対して行の挿
入を行う場合、挿入するデータをデータベース管理装置
211に渡す。ステップ712でデータベース管理装置
211のデータ挿入処理部202は、渡されたデータを
表R217のデータベースに挿入する。
In FIG. 7, when inserting a row into the table R217, the data to be inserted is passed to the database management unit 211. In step 712, the data insertion processing unit 202 of the database management device 211 inserts the passed data into the database of the table R217.

【0049】次にステップ713では、表R217にB
−Treeインデックス216が定義されているかを調
べ、定義されていなければステップ714で挿入処理を
終了し、B−Treeインデックス216が定義されて
いる場合には、ステップ721でB−Treeインデッ
クス216にデータを追加する。
Next, in step 713, B is added to the table R217.
It is checked whether or not the Tree index 216 is defined. If not defined, the insertion processing is terminated in step 714. If the B-tree index 216 is defined, the data is stored in the B-tree index 216 in step 721. Add.

【0050】その次にステップ722では、そのB−T
reeインデックス216に対して付加情報ビットマッ
プ214が存在するかを調べ、付加情報ビットマップ2
14が存在しなければステップ714で挿入処理を終了
し、付加情報ビットマップ214が存在する場合にはス
テップ731へ進む。
Next, at step 722, the BT
It is checked whether or not the additional information bitmap 214 exists for the REE index 216.
If 14 does not exist, the insertion process ends at step 714, and if the additional information bitmap 214 exists, the process proceeds to step 731.

【0051】ステップ731では、その付加情報ビット
マップ214がB−Treeインデックス216中のデ
ータのハッシュ値による付加情報ビットマップ421か
どうかを判定し、付加情報ビットマップ214がハッシ
ュ値による付加情報ビットマップ421である場合には
ステップ741に進む。
In step 731, it is determined whether or not the additional information bitmap 214 is an additional information bitmap 421 based on the hash value of the data in the B-Tree index 216. If it is 421, the process proceeds to step 741.

【0052】ステップ741で識別番号生成処理部20
4は、挿入処理の対象となっているデータを識別する為
の識別番号として、当該データのハッシュ値を示す番号
を生成する。ステップ742で付加情報設定処理部20
5は、前記生成されたハッシュ値番目の付加情報ビット
マップ421のビットを「1」に設定する。そして、ス
テップ714で挿入処理を終了する。
At step 741, the identification number generation processing section 20
No. 4 generates a number indicating a hash value of the data as an identification number for identifying the data to be subjected to the insertion processing. In step 742, the additional information setting processing unit 20
5 sets the bit of the generated hash value-th additional information bitmap 421 to “1”. Then, the insertion process ends in step 714.

【0053】またステップ731で判定した結果、付加
情報ビットマップ214がハッシュ値による付加情報ビ
ットマップ421ではなく、データと1対1に対応した
付加情報ビットマップ411である場合にはステップ7
51に進む。
If it is determined in step 731 that the additional information bitmap 214 is not the additional information bitmap 421 based on the hash value but the additional information bitmap 411 corresponding to the data on a one-to-one basis, step 7 is executed.
Go to 51.

【0054】ステップ751で識別番号生成処理部20
4は、挿入処理の対象となっているデータを識別する為
の識別番号として、そのデータが取り得る範囲内で当該
データを一意に識別する為の番号を生成し、当該データ
が表R217のB−Treeインデックス216のデー
タの何番目かを求める。ステップ752で付加情報設定
処理部205は、前記生成した番号に該当する付加情報
ビットマップ411のビットを「1」に設定する。そし
てステップ714で挿入処理を終了する。
In step 751, the identification number generation processing section 20
No. 4 generates, as an identification number for identifying the data to be subjected to the insertion processing, a number for uniquely identifying the data within a range that the data can take, and the data is stored in B in Table R217. -Determine the number of data of the tree index 216. In step 752, the additional information setting processing unit 205 sets the bit of the additional information bitmap 411 corresponding to the generated number to “1”. Then, in step 714, the insertion process ends.

【0055】図8は本実施形態のB−Treeインデッ
クス216に付加情報ビットマップ214が存在する表
からの行の削除処理の処理手順を示すフローチャートで
ある。図8に示す様に本実施形態のデータベース管理装
置211のデータ削除処理部203は、データを表R2
17から削除する際に、当該データの識別番号がそのデ
ータの取り得る範囲内で当該データを一意に識別する為
の番号である場合に、当該データがデータベース中に存
在していないことを示す付加情報を付加情報ビットマッ
プ214に設定する処理を行う。
FIG. 8 is a flowchart showing a processing procedure for deleting a row from a table in which the additional information bitmap 214 exists in the B-Tree index 216 according to the present embodiment. As shown in FIG. 8, the data deletion processing unit 203 of the database management device 211 of the present embodiment stores the data in the table R2.
17, when the identification number of the data is a number for uniquely identifying the data within a range that the data can take, an addition indicating that the data does not exist in the database. A process for setting information in the additional information bitmap 214 is performed.

【0056】図8において表R217に対して行の削除
を行う場合、まずステップ812でデータベース管理装
置211のデータ削除処理部203は、データを表R2
17のデータベースから削除する。次にステップ813
では、表R217にB−Treeインデックス216が
定義されているかを調べ、定義されていなければステッ
プ814で削除処理を終了し、B−Treeインデック
ス216が定義されている場合には、ステップ821で
B−Treeインデックス216のメンテナンスを行
う。
In FIG. 8, when a row is deleted from the table R217, first, at step 812, the data deletion processing unit 203 of the database management apparatus 211 stores the data in the table R2.
17 from the database. Next, step 813
Then, it is checked whether or not the B-Tree index 216 is defined in the table R217. If the B-Tree index 216 is not defined, the deletion process ends in step 814. If the B-Tree index 216 is defined, -Maintenance of the Tree index 216 is performed.

【0057】次にステップ822では、B−Treeイ
ンデックス216中に削除したデータと同じデータの行
が存在するかどうかを調べ、削除したデータと同じデー
タの行が存在していればステップ814で削除処理を終
了し、削除したデータと同じデータの行が存在していな
い場合にはステップ823へ進む。
Next, in step 822, it is checked whether or not there is a line of the same data as the deleted data in the B-Tree index 216. If there is a line of the same data as the deleted data, it is deleted in step 814. When the process is terminated and there is no row having the same data as the deleted data, the process proceeds to step 823.

【0058】ステップ823では、B−Treeインデ
ックス216に対して付加情報ビットマップ214が存
在するかを調べ、存在していなければステップ814で
削除処理を終了し、付加情報ビットマップ214が存在
する場合にはステップ824へ進む。
At step 823, it is checked whether or not the additional information bitmap 214 exists for the B-Tree index 216. If the additional information bitmap 214 does not exist, the deletion process is terminated at step 814, and if the additional information bitmap 214 exists. Go to step 824.

【0059】ステップ824では、その付加情報ビット
マップ214がB−Treeインデックス216中のデ
ータのハッシュ値による付加情報ビットマップ421か
どうかを判定する。
In step 824, it is determined whether or not the additional information bitmap 214 is an additional information bitmap 421 based on the hash value of the data in the B-Tree index 216.

【0060】ステップ824で判定した結果、付加情報
ビットマップ214がハッシュ値による付加情報ビット
マップ421である場合には、同じハッシュ値を取り得
る、異なるデータが存在する可能性があるので、付加情
報ビットマップ421の該当ビットを「0」に設定する
処理は行わず削除処理を終了する。この場合、B−Tr
eeインデックス216中にデータが存在しないにもか
かわらず、付加情報ビットマップ421の該当ビットが
「1」になっている場合が起こり得るので、B−Tre
eの適正化を行う際等、所定のタイミングで付加情報ビ
ットマップ421の再作成を行う。
If it is determined in step 824 that the additional information bitmap 214 is the additional information bitmap 421 based on the hash value, there is a possibility that there is different data that can take the same hash value. The process of setting the corresponding bit of the bitmap 421 to “0” is not performed, and the deletion process ends. In this case, B-Tr
Even though there is no data in the ee index 216, the corresponding bit of the additional information bit map 421 may be "1".
The re-creation of the additional information bitmap 421 is performed at a predetermined timing, for example, when optimizing e.

【0061】ステップ824で判定した結果、付加情報
ビットマップ214がハッシュ値による付加情報ビット
マップ421でなく、データと1対1で対応する付加情
報ビットマップ411の場合にはステップ831へ進
む。
As a result of the determination in step 824, if the additional information bitmap 214 is not the additional information bitmap 421 based on the hash value but the additional information bitmap 411 corresponding to the data on a one-to-one basis, the flow proceeds to step 831.

【0062】ステップ831で識別番号生成処理部20
4は、削除処理の対象となっているデータを識別する為
の識別番号として、そのデータが取り得る範囲内で当該
データを一意に識別する為の番号を生成し、当該データ
が表R217のB−Treeインデックス216のデー
タの取り得る種類数の何番目かを求める。ステップ83
2で付加情報設定処理部205は、前記生成した番号に
該当する付加情報ビットマップ411のビットを「0」
に設定する。そしてステップ814で削除処理を終了す
る。
At step 831, the identification number generation processing section 20
No. 4 generates, as an identification number for identifying the data to be deleted, a number for uniquely identifying the data within a range that the data can take. -The number of possible types of data of the tree index 216 is determined. Step 83
In step 2, the additional information setting processing unit 205 sets the bit of the additional information bitmap 411 corresponding to the generated number to “0”.
Set to. Then, in step 814, the deletion process ends.

【0063】図9は本実施形態のB−Treeインデッ
クス216に付加情報ビットマップ214が存在する表
中の行の更新処理の処理手順を示すフローチャートであ
る。図9において、表R217に対して行の更新があっ
た場合、データベース管理装置211においてデータが
更新される。この場合、まずステップ912でデータの
削除処理を行い、次にステップ913でデータの挿入処
理を行う。この際、データの削除処理は図8、データの
挿入処理は図7で示した処理手順で行う。
FIG. 9 is a flowchart showing a procedure of updating a row in a table in which the additional information bitmap 214 exists in the B-Tree index 216 according to the present embodiment. In FIG. 9, when a row is updated in the table R217, the data is updated in the database management device 211. In this case, first, data deletion processing is performed in step 912, and then data insertion processing is performed in step 913. At this time, the data deletion processing is performed according to the processing procedure illustrated in FIG. 8, and the data insertion processing is performed according to the processing procedure illustrated in FIG.

【0064】図10は本実施形態の表及びB−Tree
インデックス216を複数のデータベース管理装置に分
割して格納し、B−Treeインデックス216に付加
情報ビットマップ214を付加した検索を行うデータベ
ース管理システムの構成を示す図である。図10に示し
た構成では、表R217(全行数|R|)のデータをn台
のデータベース管理装置211に表R1012として分
割して格納しているものとする。
FIG. 10 shows a table of this embodiment and a B-Tree.
FIG. 11 is a diagram illustrating a configuration of a database management system that stores an index 216 divided into a plurality of database management apparatuses and performs a search by adding an additional information bitmap 214 to the B-Tree index 216. In the configuration shown in FIG. 10, it is assumed that the data of the table R217 (the total number of rows | R |) is divided and stored in the n database management apparatuses 211 as the table R1012.

【0065】ここで、表R217を分割する為に使用し
た列をRmとし、表R217のデータの分割に用いた列
Rmと異なる列Rkを構成列の先頭に持つ様なB−Tr
eeインデックス216を定義する。このとき、各デー
タベース管理装置211の管理するB−Treeインデ
ックス216(ローカルインデックス)中にデータが存
在するかどうかを示す付加情報ビットマップ214をB
−Treeインデックス216に付加する。
Here, a column used to divide the table R217 is denoted by Rm, and a B-Tr having a column Rk different from the column Rm used to divide the data in the table R217 at the head of the constituent columns is used.
The ee index 216 is defined. At this time, an additional information bitmap 214 indicating whether or not data exists in the B-Tree index 216 (local index) managed by each database
-Add to the Tree index 216.

【0066】図11は本実施形態の複数のデータベース
管理装置211に分割された表R1012と表S511
の結合検索の概要を示す図である。図11において、表
S511(全行数|S|)がデータベース管理システムに
格納されているものとする。
FIG. 11 shows a table R1012 and a table S511 divided into a plurality of database management apparatuses 211 according to the present embodiment.
It is a figure which shows the outline | summary of the joint search of. In FIG. 11, it is assumed that table S511 (the total number of rows | S |) is stored in the database management system.

【0067】表R1012と表S511の結合検索を行
う場合には、まず表S511のデータの内、表S511
を検索する為の条件に該当するデータである表S’51
2を検索する。そして、その検索したデータS’と表R
1012のデータの突き合わせを行い、結合検索の条件
を満たす行をデータベース管理システムから検索する。
When performing a join search between the table R1012 and the table S511, first, of the data in the table S511, the table S511
Table S'51 which is data corresponding to the condition for retrieving
Search for 2. Then, the retrieved data S 'and table R
The data of 1012 is matched, and a row that satisfies the condition of the join search is searched from the database management system.

【0068】結合検索の条件の内、表R1012と表S
511を突き合わせる為の条件には表S511の列Sk
と表R1012の列Rkが含まれており、且つ表R10
12に分割する為に用いた列Rmは含まれていないもの
とする。このとき、表R1012の分割に用いた列Rm
と表R1012に定義したインデックス構成列の先頭の
Rkは異なる列なので、表R217を分割した部分表で
ある表R1012を持つ全データベース管理装置211
にS’中の全データを転送する。
Among the conditions for the join search, Table R1012 and Table S
The condition for matching 511 is column Sk in table S511.
And the column Rk of the table R1012, and the table R10
It is assumed that the column Rm used for dividing into 12 is not included. At this time, the column Rm used for dividing the table R1012
Since the first Rk of the index configuration columns defined in the table R1012 and the table R1012 are different columns, the entire database management apparatus 211 having the table R1012 which is a partial table obtained by dividing the table R217
To all the data in S '.

【0069】表R217の部分表を持つあるデータベー
ス管理装置211に注目する。付加情報ビットマップ2
14は各データベース管理装置211に閉じた情報であ
り、他のデータベース管理装置211の状態に依存して
いない。よって、注目したデータベース管理装置211
内において1台のデータベース管理装置211に格納し
ている場合と同じ処理を行うことができる。この様に本
実施形態では他の装置の処理に依存することなく、各デ
ータベース管理装置211で付加情報ビットマップ21
4を用いたデータベース処理を行うことが可能である。
Attention is paid to a certain database management device 211 having a partial table of Table R217. Additional information bitmap 2
Reference numeral 14 denotes information closed in each database management device 211 and does not depend on the state of other database management devices 211. Therefore, the noted database management device 211
In this case, the same processing as when stored in one database management device 211 can be performed. As described above, in this embodiment, each database management device 211 does not rely on the processing of another device, and
4 can be performed.

【0070】また、図11では付加情報ビットマップ2
14をメモリ213中に保持しているが、メモリ213
中に収まらない大きさの時は付加情報ビットマップ21
4の一部または全部を外部記憶装置215上に保持して
も良い。この場合には、付加情報ビットマップ214を
幾つかの区間に分割し、分割した区間単位でメモリ21
3上の区間付加情報ビットマップと外部記憶装置215
上の区間付加情報ビットマップを、LRU(Least Rece
ntly Used)方式等を用いて入れ換える。この付加情報
ビットマップ214の一部または全部を外部記憶装置2
15上に保持する指定は、B−Treeインデックス2
16の定義時またはスキーマの定義時、データベース管
理システムの動作を規定する部分、または、その他デー
タベース管理システムが認識可能な方式で行われるもの
とする。
FIG. 11 shows additional information bit map 2
14 is stored in the memory 213,
Additional information bitmap 21 if the size does not fit inside
4 may be stored in the external storage device 215. In this case, the additional information bitmap 214 is divided into several sections, and the memory 21 is divided into divided sections.
3 and the external storage device 215
The above section additional information bitmap is stored in LRU (Least Rece
(ntly Used) method. A part or all of the additional information bitmap 214 is stored in the external storage device 2
15 is a B-Tree index 2
At the time of the definition of 16 or the definition of the schema, it is assumed that the operation is performed in a part that defines the operation of the database management system or in a manner that the database management system can recognize.

【0071】更に、B−Treeインデックス216を
構成するデータの取り得る組合せ数が多い場合には、付
加情報ビットマップ214を作成するデータの範囲を制
限することにより、頻繁に参照するデータに対してのみ
付加情報ビットマップ214を作成し、メモリ213ま
たは外部記憶装置215に占める大きさを削減すること
が可能である。このとき、ハッシュ関数による類別では
なく、データとB−Treeインデックス216とが1
対1に対応する付加情報ビットマップ411を作成する
ことができるので検索速度を向上することが可能であ
る。この付加情報ビットマップ214のデータ範囲を制
限する指定は、B−Treeインデックス216の定義
時またはスキーマの定義時、データベース管理システム
の動作を規定する部分、または、その他データベース管
理システムが認識可能な方式で行われるものとする。
Further, when the number of possible combinations of the data constituting the B-Tree index 216 is large, the range of the data for creating the additional information bitmap 214 is limited so that the frequently referenced data can be reduced. Only the additional information bitmap 214 can be created to reduce the size of the memory 213 or the external storage device 215. At this time, instead of classification by the hash function, the data and the B-Tree index 216 are 1
Since the additional information bitmap 411 corresponding to one-to-one correspondence can be created, the search speed can be improved. The specification for limiting the data range of the additional information bitmap 214 is performed when the B-Tree index 216 is defined or when the schema is defined, a part that defines the operation of the database management system, or any other method that can be recognized by the database management system. It shall be performed in.

【0072】また、B−Treeインデックスに限ら
ず、他の方式のインデックスについても付加情報ビット
マップを用いてインデックスの検索コストを削減するこ
とが可能である。この付加情報ビットマップを用いるこ
とを示す指定は、インデックスの定義時またはスキーマ
の定義時、データベース管理システムの動作を規定する
部分、または、その他データベース管理システムが認識
可能な方式で行われるものとする。
In addition to the B-Tree index, it is possible to reduce the search cost of the index by using the additional information bitmap for the index of another method. The specification indicating that the additional information bitmap is to be used is performed at the time of defining an index or a schema, at a part that defines the operation of the database management system, or in a manner that can be recognized by the database management system. .

【0073】更に、インデックスの存在しない表に対し
ても、表中にデータが存在するかどうかを示す付加情報
ビットマップを用いることにより、データが存在しない
場合に表を検索しないことにより、検索コストを削減す
ることが可能である。このインデックスの存在しない表
に対して付加情報ビットマップを用いることを示す指定
は、インデックスの定義時またはスキーマの定義時、デ
ータベース管理システムの動作を規定する部分、また
は、その他データベース管理システムが認識可能な方式
で行われるものとする。同様に、表形式でデータを保持
しない方式のデータベース管理システムのインデックス
についても、付加情報ビットマップを適用することが可
能である。
Further, even for a table having no index, by using an additional information bitmap indicating whether or not data exists in the table, the table is not searched when data does not exist. Can be reduced. The specification indicating that the additional information bitmap is used for a table where no index exists can be specified when defining an index or schema, a part that regulates the operation of the database management system, or other parts that can be recognized by the database management system. It shall be performed in a simple manner. Similarly, the additional information bitmap can be applied to an index of a database management system that does not hold data in a table format.

【0074】以上説明した様に本実施形態のデータベー
ス管理システムによれば、検索処理の対象となっている
データがデータベース中に存在している場合に当該デー
タの検索を行うので、データベース検索の処理効率を向
上させることが可能である。
As described above, according to the database management system of the present embodiment, when data to be searched is present in the database, the data is searched. It is possible to improve efficiency.

【0075】[0075]

【発明の効果】本発明によれば検索処理の対象となって
いるデータがデータベース中に存在している場合に当該
データの検索を行うので、データベース検索の処理効率
を向上させることが可能である。
According to the present invention, when data to be searched is present in the database, the data is searched, so that the processing efficiency of the database search can be improved. .

【図面の簡単な説明】[Brief description of the drawings]

【図1】本実施形態のあるデータについて付加情報ビッ
トマップからB−Treeインデックスをアクセスして
対応するデータを検索する処理の概要を示す図である。
FIG. 1 is a diagram illustrating an outline of a process of accessing a B-Tree index from an additional information bit map and searching for corresponding data according to an embodiment of the present invention.

【図2】本実施形態のデータベース管理システムの概略
構成を示す図である。
FIG. 2 is a diagram illustrating a schematic configuration of a database management system according to the embodiment;

【図3】本実施形態の付加情報ビットマップ作成時の処
理手順を示すフローチャートである。
FIG. 3 is a flowchart illustrating a processing procedure when creating an additional information bitmap according to the embodiment;

【図4】本実施形態の付加情報ビットマップ214の例
を示す図である。
FIG. 4 is a diagram illustrating an example of an additional information bitmap 214 according to the present embodiment.

【図5】本実施形態のデータベース管理システム中に格
納されている2つの表の結合検索の概要を示す図であ
る。
FIG. 5 is a diagram showing an outline of a join search of two tables stored in the database management system of the embodiment.

【図6】本実施形態の付加情報ビットマップ214を使
用した検索処理の処理手順を示すフローチャートであ
る。
FIG. 6 is a flowchart illustrating a processing procedure of a search process using the additional information bitmap 214 according to the present embodiment.

【図7】本実施形態のB−Treeインデックス216
に付加情報ビットマップ214が存在する表への行の挿
入処理の処理手順を示すフローチャートである。
FIG. 7 illustrates a B-Tree index 216 according to the present embodiment.
9 is a flowchart showing a processing procedure for inserting a row into a table in which an additional information bitmap 214 exists.

【図8】本実施形態のB−Treeインデックス216
に付加情報ビットマップ214が存在する表からの行の
削除処理の処理手順を示すフローチャートである。
FIG. 8 shows a B-Tree index 216 according to the present embodiment.
13 is a flowchart showing a processing procedure for deleting a row from a table in which an additional information bitmap 214 exists.

【図9】本実施形態のB−Treeインデックス216
に付加情報ビットマップ214が存在する表中の行の更
新処理の処理手順を示すフローチャートである。
FIG. 9 shows a B-Tree index 216 according to the present embodiment.
9 is a flowchart showing a processing procedure for updating a row in a table in which an additional information bitmap 214 exists.

【図10】本実施形態の表及びB−Treeインデック
ス216を複数のデータベース管理装置に分割して格納
し、B−Treeインデックス216に付加情報ビット
マップ214を付加した検索を行うデータベース管理シ
ステムの構成を示す図である。
FIG. 10 is a diagram illustrating a configuration of a database management system in which a table and a B-Tree index 216 according to the present embodiment are divided and stored in a plurality of database management apparatuses, and a search is performed by adding an additional information bitmap 214 to the B-Tree index 216; FIG.

【図11】本実施形態の複数のデータベース管理装置2
11に分割された表R1012と表S511の結合検索
の概要を示す図である。
FIG. 11 shows a plurality of database management apparatuses 2 of the present embodiment.
11 is a diagram illustrating an outline of a join search of a table R1012 and a table S511 divided into 11; FIG.

【符号の説明】[Explanation of symbols]

111…付加情報ビットマップ、112…B−Tree
インデックス、113…データベース中の表、211…
データベース管理装置、212…CPU、213…メモ
リ、214…付加情報ビットマップ、215…外部記憶
装置、216…B−Treeインデックス、217…表
R、200…インデックス作成処理部、201…データ
検索処理部、202…データ挿入処理部、203…デー
タ削除処理部、204…識別番号生成処理部、205…
付加情報設定処理部、206…付加情報参照処理部、4
11…付加情報ビットマップ、421…付加情報ビット
マップ、511…表S、512…表S’、1011…ネ
ットワーク、1012…表R。
111: additional information bitmap, 112: B-Tree
Index, 113 ... Table in database, 211 ...
Database management device, 212 CPU, 213 memory, 214 additional information bitmap, 215 external storage device, 216 B-Tree index, 217 table R, 200 index creation processing unit, 201 data search processing unit , 202: data insertion processing unit, 203: data deletion processing unit, 204: identification number generation processing unit, 205:
Additional information setting processing unit, 206... Additional information reference processing unit, 4
11 additional information bitmap, 421 additional information bitmap, 511 table S, 512 table S ', 1011 network, 1012 table R.

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 検索処理の行われるデータベースを管理
するデータベース管理方法において、 検索処理の対象となっているデータを識別する為の識別
番号を生成するステップと、データがデータベース中に
存在しているかどうかを示す付加情報を格納した付加情
報ビットマップを参照し、前記生成した識別番号に対応
する付加情報の内容を読み出すステップと、前記読み出
した付加情報が当該データの存在を示している場合にそ
のデータの検索を行い、前記付加情報が当該データの存
在を示していない場合にそのデータの検索を抑止するス
テップとを有することを特徴とするデータベース管理方
法。
1. A database management method for managing a database on which a search process is performed, comprising: a step of generating an identification number for identifying data to be searched; and whether the data exists in the database. Referring to an additional information bitmap storing additional information indicating whether or not the content of the additional information corresponding to the generated identification number is read; if the read additional information indicates the presence of the data, Performing a data search, and, when the additional information does not indicate the existence of the data, suppressing the data search.
【請求項2】 インデックス作成の対象となっているデ
ータを識別する為の識別番号を生成するステップと、前
記データがデータベース中に存在していることを示す付
加情報を、前記生成した識別番号に対応する付加情報ビ
ットマップに設定するステップとを有することを特徴と
する請求項1に記載されたデータベース管理方法。
2. A step of generating an identification number for identifying data to be indexed, and adding additional information indicating that the data is present in a database to the generated identification number. Setting a corresponding additional information bitmap into a corresponding additional information bitmap.
【請求項3】 前記識別情報は、そのデータが取り得る
範囲内で当該データを一意に識別する為の番号または当
該データのハッシュ値を示す番号であることを特徴とす
る請求項1または請求項2のいずれかに記載されたデー
タベース管理方法。
3. The identification information according to claim 1, wherein the identification information is a number for uniquely identifying the data within a range that the data can take or a number indicating a hash value of the data. 2. The database management method according to any one of 2.
【請求項4】 検索処理の行われるデータベースを管理
するデータベース管理システムにおいて、 検索処理の対象となっているデータを識別する為の識別
番号を生成する識別番号生成処理部と、データがデータ
ベース中に存在しているかどうかを示す付加情報を格納
した付加情報ビットマップを参照し、前記生成した識別
番号に対応する付加情報の内容を読み出す付加情報参照
処理部と、前記読み出した付加情報が当該データの存在
を示している場合にそのデータの検索を行い、前記付加
情報が当該データの存在を示していない場合にそのデー
タの検索を抑止するデータ検索処理部とを備えることを
特徴とするデータベース管理システム。
4. A database management system for managing a database on which a search process is performed, wherein: an identification number generation processing unit for generating an identification number for identifying data to be searched; An additional information reference processing unit for reading the contents of the additional information corresponding to the generated identification number by referring to the additional information bitmap storing the additional information indicating whether the data is present; A data search processing unit that searches for the data when the data indicates presence, and suppresses the data search when the additional information does not indicate the data. .
【請求項5】 検索処理の行われるデータベースを管理
するデータベース管理システムとしてコンピュータを機
能させる為のプログラムを記録したコンピュータ読み取
り可能な記録媒体において、 検索処理の対象となっているデータを識別する為の識別
番号を生成する識別番号生成処理部と、データがデータ
ベース中に存在しているかどうかを示す付加情報を格納
した付加情報ビットマップを参照し、前記生成した識別
番号に対応する付加情報の内容を読み出す付加情報参照
処理部と、前記読み出した付加情報が当該データの存在
を示している場合にそのデータの検索を行い、前記付加
情報が当該データの存在を示していない場合にそのデー
タの検索を抑止するデータ検索処理部としてコンピュー
タを機能させる為のプログラムを記録したことを特徴と
する記録媒体。
5. A computer-readable recording medium storing a program for causing a computer to function as a database management system for managing a database on which a search process is performed, for identifying data to be searched. An identification number generation processing unit that generates an identification number, and an additional information bitmap that stores additional information indicating whether data is present in the database, refer to the contents of the additional information corresponding to the generated identification number. The additional information reference processing unit to be read, and if the read additional information indicates the existence of the data, search the data. If the additional information does not indicate the existence of the data, search the data. A program for causing a computer to function as a data search Recording medium characterized.
JP2000230383A 2000-07-31 2000-07-31 Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded Pending JP2002041567A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000230383A JP2002041567A (en) 2000-07-31 2000-07-31 Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000230383A JP2002041567A (en) 2000-07-31 2000-07-31 Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded

Publications (1)

Publication Number Publication Date
JP2002041567A true JP2002041567A (en) 2002-02-08

Family

ID=18723350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000230383A Pending JP2002041567A (en) 2000-07-31 2000-07-31 Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded

Country Status (1)

Country Link
JP (1) JP2002041567A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052698A (en) * 2005-08-19 2007-03-01 Kddi Corp Method for generating and retrieving index of encrypted document and encrypted document retrieval system
JP2008242749A (en) * 2007-03-27 2008-10-09 Seiko Epson Corp Retrieving device and program
JP2010266996A (en) * 2009-05-13 2010-11-25 Hitachi Ltd Database processing method, database processing system and database server
WO2013069149A1 (en) * 2011-11-11 2013-05-16 株式会社日立製作所 Data search device, data search method and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007052698A (en) * 2005-08-19 2007-03-01 Kddi Corp Method for generating and retrieving index of encrypted document and encrypted document retrieval system
JP4722620B2 (en) * 2005-08-19 2011-07-13 Kddi株式会社 Encrypted document search method and encrypted document search system
JP2008242749A (en) * 2007-03-27 2008-10-09 Seiko Epson Corp Retrieving device and program
JP2010266996A (en) * 2009-05-13 2010-11-25 Hitachi Ltd Database processing method, database processing system and database server
WO2013069149A1 (en) * 2011-11-11 2013-05-16 株式会社日立製作所 Data search device, data search method and program

Similar Documents

Publication Publication Date Title
US5590320A (en) Computer file directory system
US9195738B2 (en) Tokenization platform
JP3178475B2 (en) Data processing device
CN102184211B (en) File system, and method and device for retrieving, writing, modifying or deleting file
CN103077199B (en) A kind of file resource Search and Orientation method and device
US9405784B2 (en) Ordered index
US10104021B2 (en) Electronic mail data modeling for efficient indexing
US20170063695A1 (en) Full flow retrieval optimized packet capture
US8150818B2 (en) Method and system for storing structured documents in their native format in a database
US20070174261A1 (en) Database retrieval apparatus, retrieval method, storage medium, and progam
CN110888837B (en) Object storage small file merging method and device
JP4237813B2 (en) Structured document management system
US20110113052A1 (en) Query result iteration for multiple queries
US7792866B2 (en) Method and system for querying structured documents stored in their native format in a database
US20080071732A1 (en) Master/slave index in computer systems
JP2002041567A (en) Database managing method, device for executing the same, and recording medium on which processing program therefor is recorded
CN115495462A (en) Batch data updating method and device, electronic equipment and readable storage medium
CN114218277A (en) Efficient query method and device for relational database
JP4091586B2 (en) Structured document management system, index construction method and program
JP4304226B2 (en) Structured document management system, structured document management method and program
JP2000132439A (en) System for retrieving file stored in hard disk of personal computer
JP2000066933A (en) Time series data management system
US20210011881A1 (en) System and method for insertable and removable file system
JP2001101233A (en) Data base processor
CN117216020A (en) Time sequence data storage method, system, equipment and medium based on file