JP2874810B2 - Key memory allocation method - Google Patents

Key memory allocation method

Info

Publication number
JP2874810B2
JP2874810B2 JP3267232A JP26723291A JP2874810B2 JP 2874810 B2 JP2874810 B2 JP 2874810B2 JP 3267232 A JP3267232 A JP 3267232A JP 26723291 A JP26723291 A JP 26723291A JP 2874810 B2 JP2874810 B2 JP 2874810B2
Authority
JP
Japan
Prior art keywords
key
index
length
area
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP3267232A
Other languages
Japanese (ja)
Other versions
JPH0581101A (en
Inventor
豊明 鈴鹿
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 Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co 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 Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP3267232A priority Critical patent/JP2874810B2/en
Publication of JPH0581101A publication Critical patent/JPH0581101A/en
Application granted granted Critical
Publication of JP2874810B2 publication Critical patent/JP2874810B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、データベース検索のた
め、二次記憶装置上に木構造インデックスを構築する際
のキーの記憶割り当て方法に係り、特にインデックスノ
ードのキー格納効率向上、ひいてはデータベース検索の
高速化に好適なキー記憶割り当て方法に関する。
BACKGROUND OF THE INVENTION This invention was of database search
For example, the present invention relates to a method for allocating keys when building a tree-structured index on a secondary storage device.
Key storage efficiency, and database search
The present invention relates to a key storage allocation method suitable for speeding up .

【0002】[0002]

【従来の技術】ここでは、VSAMデータベースを例に
説明する。VSAM(VirtualStorage Access Meth
od;仮想記憶アクセス方式)は、データ管理プログラム
の内の一つのアクセス技法であり、外部記憶装置である
磁気ディスク装置と仮想記憶装置内のプログラムとのデ
ータのやり取りを行うもので、外部記憶装置の物理的属
性から独立するように、その記憶形式が設計されてい
る。図5に示すように、VSAMでは、複数個のレコー
ドからなるコントロールインタバル(CI)を単位とし
て、磁気ディスク装置とメモリ間で入出力データの転送
が行われる。更に、VSAMでは、連続した領域にある
複数個のCIの集合であるコントロールエリア(CA)
を単位にして管理し、CAは磁気ディスク装置上の連続
した領域(エクステント)に割り付けられる。VSAM
データセットはVSAMを介して処理するレコードの集
合である。
2. Description of the Related Art Here, a VSAM database is taken as an example.
explain. VSAM (Virtual Storage Access Meth)
od; virtual storage access method) is one of the access techniques in the data management program, and exchanges data between a magnetic disk device as an external storage device and a program in the virtual storage device. Its storage format is designed to be independent of its physical attributes. As shown in FIG. 5, in the VSAM, input / output data is transferred between a magnetic disk device and a memory in units of a control interval (CI) including a plurality of records. Further, in the VSAM, a control area (CA) is a set of a plurality of CIs in a continuous area.
, And CA is allocated to a continuous area (extent) on the magnetic disk device. VSAM
A data set is a collection of records to be processed via VSAM.
It is.

【0003】VSAMデータセットの編成法の一つにキ
ー順データセット(Key SeqencedData Set;KSD
S)がある。このデータセットは、キー(例えば、社員
番号、年齢等)の昇順にレコードが順序付けられてい
て、レコードの取りだしを高速に行うためのインデック
スを持っている。
One of the methods of organizing a VSAM data set is a key-sequenced data set (Key Sequenced Data Set; KSD).
S) . In this data set, records are ordered in ascending order of keys (for example, employee number, age, etc.), and have an index for performing record retrieval at high speed.

【0004】インデックスは、木構造を用いて作成され
る。木構造とは、図6に示すように、根を上に葉を下に
して構成され、A,B,C,...J,Kをノード
(節)といい、根以外のノードは上位のノードに接続さ
れ、末端のノード(C,E,F,G,I,J,K)を葉
という。
[0004] An index is created using a tree structure. As shown in FIG. 6, the tree structure is configured with the root up and the leaf down, and A, B, C,. . . J and K are called nodes (nodes), nodes other than the root are connected to higher nodes, and terminal nodes (C, E, F, G, I, J, K) are called leaves.

【0005】図7は、VSAMにおける木構造インデッ
クスを示し、最下位のインデックスレコードの集まりで
あるシーケンスセットと、それよりも一つ上のレベルの
インデックスレコードの集まりであるインデックスセッ
トからなる階層構造となっている。図中における各箱は
前述したCIを示している。
FIG. 7 shows a tree-structured index in VSAM. The hierarchical structure is composed of a sequence set, which is a set of lowest-order index records, and an index set, which is a set of index records one level higher than that. Has become. Each box in the figure indicates the CI described above.

【0006】図8は、KSDSのデータセット構成図で
ある。シーケンスセットにおけるインデックスレコード
は、一つのCA対応に作成され、CAを構成する各CI
内のレコードの最高キーと、それに対応する各CIへの
ポインタ(垂直ポインタ)が格納されている。この最高
キーと垂直ポインタのペアをインデックスエントリとい
う。一方、インデックスセット内のインデックスレコー
ドは、一つ下位にある複数のインデックスレコードを管
理し、それらのインデックスレコード内の最高キーと、
それに対応する各インデックスレコードへのポインタ
(垂直ポインタ)を持っている。さらに、シーケンスセ
ット、インデックスセットとも、同レベルの次につづく
インデックスレコードへのポインタ(水平ポインタ)を
持っている。
FIG. 8 is a data set configuration diagram of the KSDS. An index record in the sequence set is created corresponding to one CA, and each CI constituting the CA is created.
And the pointer (vertical pointer) to each CI corresponding to the highest key of the record in the table. This pair of the highest key and the vertical pointer is called an index entry. On the other hand , an index record in an index set manages a plurality of index records one level below.
And management, and the best keys in their index records,
It has a pointer (vertical pointer) to each index record corresponding to it. Further, both the sequence set and the index set have pointers (horizontal pointers) to the next index record at the same level.

【0007】キーによってレコードを検索する場合に
は、最上位のインデックスから垂直ポインタをたどって
シーケンスセットのCIを探す。このCIは一つのCA
内のレコードを指しているので、そのポインタをたどる
ことによってレコードを検索する。また、キー順処理の
場合は、シーケンスセットを使用し、CA内の最高キー
を処理した後、次のCAに移るとき、シーケンスセット
の水平ポインタをたどっ次のシーケンスセットを読み込
み、キー順にレコードをアクセスする。
When a record is searched for by key, the CI of the sequence set is searched by following the vertical pointer from the highest index . This CI is one CA
Since it points to the record in, the record is searched by following the pointer. Also, in the case of key order processing, use the sequence set, process the highest key in the CA, and when moving to the next CA, follow the horizontal pointer of the sequence set, read the next sequence set, and read the record in the key order. to access.

【0008】上記したデータセット編成法は、レコード
の挿入、削除処理が頻繁に行われても、インデックスを
動的に再配置することで、データセットのどのレコード
に対しても平均的な処理効率が保証される(つまり、イ
ンデックスセットからシーケンスセットを経てレコード
に至るどのルートにおいても、そのアクセス時間にバラ
ツキがない)このような木構造インデックスをB+‐
treeという。
According to the above-described data set organization method, even if record insertion / deletion processing is frequently performed, by dynamically relocating the index , any record of the data set can be obtained.
, The average processing efficiency is guaranteed (that is, there is no variation in the access time of any route from the index set to the record through the sequence set) . Such a tree structure index is B +-
It is called tree.

【0009】[0009]

【発明が解決しようとする課題】上述のような木構造イ
ンデックス(B+‐tree)を磁気ディスク装置等の二次
記憶装置上に構築する場合、通常、ノードの大きさと、
キーを格納する領域の大きさを固定長としている。この
ため、データ中に一つでも長いキーがある場合、ノード
内の各キー格納領域の大きさをそれに合わせて確保しな
ければならず、短いキーが格納される領域については、
その記憶領域が無駄になってしまうという問題があっ
た。
When a tree structure index (B + -tree) as described above is constructed on a secondary storage device such as a magnetic disk device, the size of the node and the
The size of the key storage area is fixed. Therefore, if there is a long key even one in the data, the node
The size of each key storage area in must be secured accordingly, and for the area where short keys are stored,
There is a problem that the storage area is wasted.

【0010】また、1ノード中に格納されるキーの数
は、ノード内に確保されるキー格納領域の大きさで決ま
り、一つでも長いキーがあると、1ノードに格納される
キー数は削減される。一方、インデックスの階層数は、
1ノードに格納されるキー数が減少すると、逆に増加す
る(一般にインデックスの階層数は1ノードのキー格納
エントリ数を底とした対数で表わされる)。一般に、イ
ンデックスを持つデータベースの検索においては、イン
デックスが最も頻繁にアクセスされるものである。そし
て、このインデックスへのアクセス回数の多少はインデ
ックスの階層数に依存するため、階層数が増加すると、
データベース検索の高速化の点で問題がある。
The number of keys stored in one node is determined by the size of the key storage area secured in the node. If there is at least one long key, the number of keys stored in one node is Be reduced. On the other hand, the number of layers in the index is
When the number of keys stored in one node decreases, the number increases in reverse (generally, the number of hierarchical levels of the index is represented by a logarithm based on the number of key storage entries of one node). Generally, in searching a database having an index, the index is the one that is accessed most frequently. And since the number of accesses to this index depends on the number of layers in the index, if the number of layers increases,
There is a problem in speeding up database search.

【0011】更に、1ノード中に格納されるキーの数
は、前述したように木の分岐数となるので、ノードの大
きさに対してキーの格納領域をあまり大きく確保するこ
とができず、このためノード長を越えるような長さのキ
ーを処理することができないという問題があった。
Further, since the number of keys stored in one node is the number of branches of the tree as described above, it is not possible to secure a key storage area much larger than the size of the node. Therefore, there is a problem that a key having a length exceeding the node length cannot be processed.

【0012】本発明の目的は、二次記憶装置上に多分岐
の木構造インデックスを構築する際、インデックスノー
ドのキー格納効率の向上を図り、その結果としてデータ
ベース検索の高速化も可能になるキーの記憶割り当て方
法を提供することにある。
An object of the present invention is to improve the key storage efficiency of an index node when constructing a multi-branch tree-structured index on a secondary storage device, and as a result, to speed up database retrieval. Storage allocation method.

【0013】[0013]

【課題を解決するための手段】前記目的を達成するため
に、本発明は、それぞれが垂直ポインタ部とキー部とか
らなる複数のキー格納部をインデックスノードとして、
二次記憶装置上に木構造インデックスを構築する際、イ
ンデックスノードのキー部には、キー先頭から所定長ま
でのキー部分(キー先頭部分)と、該キー先頭部分以外
の部分(キー後尾部分)を格納する領域の位置を示すポ
インタと、該キー先頭部分とキー後尾部分とからなるキ
ー全体の長さを示すキー長とを格納し、インデックスノ
ード以外の前記ポインタが示す領域に、キー後尾部分を
格納するようにしたことを特徴とする。
In order to achieve the above-mentioned object, the present invention provides a method according to the present invention, wherein a plurality of key storage sections each including a vertical pointer section and a key section are used as index nodes.
When constructing a tree-structured index on the secondary storage device, the key part of the index node includes a key part (key head part) from the key head to a predetermined length and a part other than the key head part (key tail part). And a key length indicating the entire length of the key consisting of the key start portion and the key tail portion, and the key tail portion other than the index node is stored in the area indicated by the pointer. Is stored.

【0014】[0014]

【実施例】以下、本発明の一実施例を図面を用いて具体
的に説明する。図2は、本発明が適用されるデータ処理
装置のブロック構成図を示し、キーボード、マウス等か
らなる入力装置21、中央処理装置22Aと主記憶装置
22Bからなるデータ処理装置22、後述する入出力ブ
ロックが記憶されている二次記憶装置23、処理された
情報を表示するための表示装置24、処理された情報を
記憶印刷するためのプリンタ25から構成されている。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be specifically described below with reference to the drawings. FIG. 2 is a block diagram showing a data processing apparatus to which the present invention is applied . The input apparatus 21 includes a keyboard, a mouse, and the like, the data processing apparatus 22 includes a central processing unit 22A and a main storage device 22B, It comprises a secondary storage device 23 in which blocks are stored, a display device 24 for displaying processed information, and a printer 25 for storing and printing the processed information.

【0015】図1は、本発明に係る二次記憶装置23上
木構造インデックスを構築する際のキーの記憶割り当
てを説明する図である。B+‐treeのノード(VSAM
のコントロールインタバル,CI)14は、複数のキー
格納部からなり、それぞれがキー1やキー2と垂直ポイ
ンタ15からなり、各キーは、キー長16と、ポインタ
17とキー先頭部18からなっている。キー長16に
は、キー全体の長さが格納され、キー先頭部18は、ノ
ードに格納されたキーの先頭部分を表し、ノードに格納
されないキーの後尾部分は、ポインタ17で指示された
入出力ブロックに格納される。
FIG. 1 is a diagram showing a key storage allocation when a tree structure index is constructed on the secondary storage device 23 according to the present invention.
It is a diagram illustrating a hand. B + -tree node (VSAM
Control interval, CI) 14 includes a plurality of keys of
It comprises a storage unit, each of which comprises a key 1, a key 2, and a vertical pointer 15, and each key comprises a key length 16, a pointer 17, and a key head 18. The key length 16 stores the length of the entire key. The key head 18 indicates the head of the key stored in the node and is stored in the node.
The trailing portion of the key that is not used is stored in the input / output block indicated by the pointer 17.

【0016】入出力ブロックは、前(低位のアドレス)
からブロック管理領域10、キースロット領域11、空
き領域12、キー記憶領域13の順に配列構成されてい
る。ブロック管理領域10には、入出力ブロックの空き
領域12の長さを表す空き長さデータ記憶領域10A
と、空き領域12の先頭位置を表す空き先頭アドレス記
憶領域10Bと、空き最終位置を表す空き最終スロット
領域10Cからなっている。キースロット領域11に
は、ノードに全てを格納できない各キーについて、入出
力ブロック中に格納されるキー後尾部分のキーの長さ
(第1キー長、第2キー長等)とその格納位置(第1キ
ー位置、第2キー位置等)が記憶されている。この第1
キー長と第1キー位置を合わせた長さをスロット長とい
う。そして、キー記憶領域13には、入出力ブロックの
最後(高位のアドレス)から前の方に順に、それぞれキ
ー後尾部分の第1キー13A、第2キー13B,第3キ
ー13Cが記憶されている。このように、本実施例で
は、一つの入出力ブロック中には複数個のキーが格納さ
れる。
The input / output block is the previous (lower address)
, A block management area 10, a key slot area 11, a free area 12, and a key storage area 13 in this order. In the block management area 10, a free length data storage area 10A indicating the length of the free area 12 of the input / output block is provided.
And a free start address storage area 10B indicating the start position of the free area 12, and a free last slot area 10C indicating the free end position. In the key slot area 11, for each key that cannot be entirely stored in the node, the key length (first key length, second key length, etc.) of the key tail part stored in the input / output block and its storage position ( First key position, second key position, etc.) are stored. This first
The length obtained by combining the key length and the first key position is called a slot length. Then, the key storage area 13, in this order toward the front from the end of the input and output blocks (high order address), respectively key
-The first key 13A, the second key 13B, and the third key 13C of the tail portion are stored. Thus, in this embodiment, a plurality of keys are stored in one input / output block.

【0017】このように構成された本発明の入出力ブロ
ックは、以下のようにして管理される。すなわち、 (1)キーは入出力ブロックの最後から順に、可変長領
域に割り当てられて格納される。 (2)スロットは、オーバーフローしたキー後尾部分
キー長とキー位置(つまり入出力ブロックの先頭からの
オフセット)のペアからなり、各キーが管理される。 (3)スロットは入出力ブロックの先頭から確保され
る。 (4)レコードが削除されてそのレコードのキーを削除
する場合は、スロットは空きスロットとなり(空きスロ
ットマークを付ける)、キー記憶領域13は後につめら
れる。 (5)ノードからキーを指すために張るポインタ17
は、キーを直接指さずに、そのキーを管理しているスロ
ットを指しているので、削除処理によってキーを削除し
てもスロットを空きスロットにするだけで、キーを指す
ポインタを張り変える必要がない。 (6)B+‐treeは、一つの木の中に同じキーが複数回
現われるが、これらの同一のキーは1ヶ所に格納共用さ
れ、重複することはない。
The input / output block of the present invention configured as described above is managed as follows. That is, (1) Keys are allocated and stored in the variable length area in order from the end of the input / output block. (2) Each slot is composed of a pair of a key length and a key position (that is, an offset from the head of an input / output block) of a tail portion of an overflowed key , and each key is managed. (3) Slots are reserved from the head of the input / output block. (4) When a record is deleted and the key of the record is deleted, the slot becomes an empty slot (mark an empty slot), and the key storage area 13 is filled later. (5) Pointer 17 to point from the node to the key
Does not point directly to the key, but points to the slot that manages the key, so even if a key is deleted by deletion processing, it is necessary to change the pointer to the key simply by leaving the slot empty. There is no. (6) In the B + -tree, the same key appears multiple times in one tree, but these same keys are stored and shared in one place, and do not overlap.

【0018】図3は、本実施例のキー格納領域確保の処
理を表すフローチャートである。すなわち、この処理
は、B+‐treeに新しくレコードを挿入する際に、キー
の長さがノード内の固定長領域より長い場合に、キー格
納用のブロックに領域を確保して、ノードに格納できな
いオーバーフローしたキーの後尾部分を該領域中に入れ
る処理である。
FIG. 3 is a flowchart showing a process for securing a key storage area according to this embodiment. That is, in this process, when a new record is inserted into the B + -tree, if the key length is longer than the fixed length area in the node, an area is secured in the key storage block and cannot be stored in the node. This is a process of putting the tail portion of the overflowed key into the area.

【0019】ブロック管理領域10のデータ記憶領域1
0Aに示される空き長さが、“オーバーフロー部分のキ
ー長+スロット長”以上あるか否かをステップ301で
判断し、“オーバーフロー部分のキー長+スロット長”
以上ある場合は、ステップ302に、そうでない場合
は、ステップ305に進む。“オーバーフロー部分のキ
ー長+スロット長”以上ある場合は、ステップ302
で、空きスロットマークの付いたスロットが調べられ、
空きスロットマークの付いたスロットがないときには、
ブロック管理領域10の最終スロット領域10Cを変更
してスロットを確保し、次いでステップ303で、ブロ
ック管理領域10の空き先頭アドレス記憶領域10Bを
変更して、キー格納領域を確保し、ステップ304で入
出力ブロックの空き領域12を変更する。
Data storage area 1 of block management area 10
It is determined in step 301 whether or not the empty length indicated by 0A is equal to or more than “the key length of the overflow portion + the slot length”, and the “key length of the overflow portion + the slot length” is determined.
If so, the process proceeds to step 302; otherwise, the process proceeds to step 305. If there is more than “key length of overflow portion + slot length”, step 302
Will check for slots with empty slot marks,
If there is no slot with an empty slot mark,
The last slot area 10C of the block management area 10 is changed to secure a slot. Then, in step 303, the free head address storage area 10B of the block management area 10 is changed to secure a key storage area. The empty area 12 of the output block is changed.

【0020】ステップ301で、ブロック管理領域10
のデータ記憶領域10Aに示される空き長さが、“オー
バーフロー部分のキー長+スロット長”に満たない場合
は、ステップ305で、他の入出力ブロックを生成し
て、前記したステップ301からステップ304と同様
にしてキー格納領域を確保する。
In step 301, the block management area 10
If the empty length indicated in the data storage area 10A is less than “the key length of the overflow portion + slot length”, another input / output block is generated in step 305, and the above-described steps 301 to 304 are performed. A key storage area is secured in the same manner as in.

【0021】図4は、本実施例のキー格納領域解放処理
のフローチャートである。レコードが削除されてそのレ
コードのキーを削除するときは、ステップ401で削除
されるキー(例えば、図1の第2キーとする)より前に
あるキー(図1の第3キー)を全て後に移動することに
よって、当該キーを削除し、ステップ402に進む。ス
テップ402では、移動したキーを管理するスロットの
キー位置を変更し、次いでステップ403では、空き領
域12の長さを表す空き長さデータ記憶領域10Aの長
さを、削除したオーバーフロー部分のキー長分だけ増加
し、ステップ404では、削除されたキーのスロットに
空きスロットマークを付けて処理を終了する。
FIG. 4 is a flowchart of the key storage area release processing according to the present embodiment. When a record is deleted and the key of the record is deleted, all the keys (the third key in FIG. 1) before the key (for example, the second key in FIG. 1) to be deleted in step 401 are added. By moving, the key is deleted, and the process proceeds to step 402. In step 402, the key position of the slot that manages the moved key is changed. Then, in step 403, the length of the free length data storage area 10A representing the length of the free area 12 is changed to the key length of the deleted overflow portion. In step 404, the slot of the deleted key is marked with an empty slot mark, and the process ends.

【0022】[0022]

【発明の効果】本発明のキーの記憶割り当て方法によれ
ば、次のような効果が得られる。 (1) 長さが異なるキーをインデックスノードへ高効率
に格納でき、インデックスノード内に空き領域が生じる
のを防止できると同時に、インデックス階層数が削減で
きるため、インデックスノードのアクセス回数が減少
し、データベース検索の高速化が実現する。 (2) キーを任意の位置で分割し、ノード外の領域に動
作することにより、可変長キーに対して、システムに最
適な分割キー長をもつインデックスを作成できる。ま
た、インデックスノードに格納できないような長いキー
が存在する場合でも、インデックスを作成できるため、
インデックスノード長をシステムに最適な長さとするこ
とができる。 (3) キー先頭部は必ずインデックスノード内にあるた
め、このインデックスノード内のキー先頭部だけを参照
することによって検索することも可能である。このた
め、二次記憶アクセスにおけるデータベース検索の高速
化を更に図ることができる。 (4) 任意の1ケのキーKjが、あるインデックスノー
ド内で最高キーの場合、当該ノードから最下位置までの
各階層に必ずキーKjが1ケ現れるが、これらKj出現
ノードにおいても「キーKj分割後後尾部分長×キーK
j出現回数」すなわち「全キーについて、Σ(キーKj
分割後後尾部分長×キーKj出現回数)」の領域削減が
でき、さらにインデックスノードへの格納効率向上が図
れる。
According to the key storage allocation method of the present invention, the following effects can be obtained. (1) Keys having different lengths can be stored in the index node with high efficiency, and it is possible to prevent the occurrence of free space in the index node, and at the same time, it is possible to reduce the number of index layers. Faster database search is realized. (2) By dividing a key at an arbitrary position and operating in an area outside a node, an index having a divided key length optimal for the system can be created for a variable-length key. Also, even if there is a long key that cannot be stored in the index node, you can create an index,
The index node length can be set to an optimal length for the system. (3) Since the key head is always in the index node, it is possible to search by referring to only the key head in this index node. Therefore, it is possible to further speed up the database search in the secondary storage access. (4) When any one key Kj is the highest key in a certain index node, one key Kj always appears in each hierarchy from the node to the lowest position. Kj split tail part length x key K
j occurrence count ”, that is,“ Σ (key Kj
Area after the division × the number of occurrences of the key Kj) can be reduced, and the storage efficiency in the index node can be improved.

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

【図1】本発明に係るキーの記憶割り当て方法を説明す
図である。
FIG. 1 illustrates a key storage allocation method according to the present invention.
That is a view.

【図2】本発明が適用されるデータ処理装置のブロック
構成図である。
FIG. 2 is a block diagram of a data processing device to which the present invention is applied ;

【図3】本実施例のキー格納領域確保処理のフローチャ
ートである。
FIG. 3 is a flowchart of a key storage area securing process according to the embodiment.

【図4】本実施例のキー格納領域解放処理のフローチャ
ートである。
FIG. 4 is a flowchart of a key storage area release process according to the embodiment.

【図5】VSAMにおけるファイル構成図である。FIG. 5 is a diagram showing a file configuration in VSAM.

【図6】木構造の例を示す図である。FIG. 6 is a diagram illustrating an example of a tree structure.

【図7】VSAMにおける木構造インデックスを示す図
である。
FIG. 7 is a diagram showing a tree structure index in VSAM.

【図8】KSDSのデータセット構成図である。FIG. 8 is a data set configuration diagram of KSDS.

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

10 ブロック管理領域 11 キースロット領域 12 空き領域 13 キー記憶領域 14 B+‐treeのノード 15 垂直ポインタ 16 キー長 17 ポインタ 18 キー先頭部13A、13B、13C キー後尾部 Reference Signs List 10 Block management area 11 Key slot area 12 Free area 13 Key storage area 14 B + -tree node 15 Vertical pointer 16 Key length 17 Pointer 18 Key head 13A, 13B, 13C Key tail

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭60−24657(JP,A) 特開 昭60−129852(JP,A) 特開 平1−315843(JP,A) 特開 平2−161541(JP,A) 特開 平2−216552(JP,A) 特開 平3−44746(JP,A) 特開 平3−100742(JP,A) (58)調査した分野(Int.Cl.6,DB名) G06F 12/00 ──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-60-24657 (JP, A) JP-A-60-129852 (JP, A) JP-A 1-315843 (JP, A) JP-A-2- 161541 (JP, A) JP-A-2-216552 (JP, A) JP-A-3-44746 (JP, A) JP-A-3-100742 (JP, A) (58) Fields investigated (Int. Cl. 6 , DB name) G06F 12/00

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 それぞれが垂直ポインタ部とキー部とか
らなる複数のキー格納部をインデックスノードとして、
二次記憶装置上に木構造インデックスを構築する際のキ
ーの記憶割り当て方法において、 前記インデックスノードのキー部に、キーの先頭から所
定長までのキー部分であるキー先頭部分と、該キー先頭
部分以外の部分であるキー後尾部分を格納する領域の位
置を示すポインタと、前記キー先頭部分と前記キー後尾
部分とからなるキー全体の長さを示すキー長とを格納
し、 前記ポインタが示す領域に、前記キー後尾部分を格納す
る、 ことを特徴とするキーの記憶割り当て方法。
1. A plurality of key storage sections each including a vertical pointer section and a key section are used as index nodes.
In a method for allocating a key when a tree structure index is constructed on a secondary storage device, a key portion of the index node includes a key head portion which is a key portion from a head of the key to a predetermined length, A pointer indicating a position of an area for storing a key tail portion, which is a portion other than a key portion, and a key length indicating a total length of a key including the key head portion and the key tail portion, and an area indicated by the pointer. And storing the tail part of the key.
JP3267232A 1991-09-18 1991-09-18 Key memory allocation method Expired - Fee Related JP2874810B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3267232A JP2874810B2 (en) 1991-09-18 1991-09-18 Key memory allocation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3267232A JP2874810B2 (en) 1991-09-18 1991-09-18 Key memory allocation method

Publications (2)

Publication Number Publication Date
JPH0581101A JPH0581101A (en) 1993-04-02
JP2874810B2 true JP2874810B2 (en) 1999-03-24

Family

ID=17441977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3267232A Expired - Fee Related JP2874810B2 (en) 1991-09-18 1991-09-18 Key memory allocation method

Country Status (1)

Country Link
JP (1) JP2874810B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000037515A (en) * 1998-08-19 2000-07-05 윤종용 Method for composing b+ tree to manage history
US10579680B2 (en) 2016-05-13 2020-03-03 Tibco Software Inc. Using a B-tree to store graph information in a database

Also Published As

Publication number Publication date
JPH0581101A (en) 1993-04-02

Similar Documents

Publication Publication Date Title
US5752243A (en) Computer method and storage structure for storing and accessing multidimensional data
EP0772836B1 (en) A method for storing and retrieving data and a memory arrangement
US5687361A (en) System for managing and accessing a dynamically expanding computer database
WO2018064962A1 (en) Data storage method, electronic device and computer non-volatile storage medium
JP3024619B2 (en) File management method
JPH08129551A (en) Hash system
JP2874810B2 (en) Key memory allocation method
JP2675958B2 (en) Information retrieval computer system and method of operating storage device thereof
EP0517383A2 (en) Image compression and storage
JP4306281B2 (en) Hierarchical data mapping program, apparatus and method in relational database
CN116737664B (en) Efficient index organization method of object-oriented embedded database
JP2679761B2 (en) Data management system
JPS62287350A (en) Index integrally updating system
JP3578501B2 (en) Document search method and apparatus
US20210133154A1 (en) Filesystems
JPS595372A (en) File processing system
JPS593549A (en) File management system
KR20030044498A (en) Data Structure, Block Assignment and Record Retrieval Method of Main Memory DataBase Management System
JPH08328946A (en) Managing method for secondary storage area
JPH0557624B2 (en)
JPH02222044A (en) Data processor
JPS62239249A (en) File managing device
JPH0833899B2 (en) Index update method
JPS63239540A (en) Data management system in memory medium
Felician Simulative and analytical studies on performances in large multimedia databases

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees