JPH02130647A - 索引木構造の更新方式 - Google Patents

索引木構造の更新方式

Info

Publication number
JPH02130647A
JPH02130647A JP63285516A JP28551688A JPH02130647A JP H02130647 A JPH02130647 A JP H02130647A JP 63285516 A JP63285516 A JP 63285516A JP 28551688 A JP28551688 A JP 28551688A JP H02130647 A JPH02130647 A JP H02130647A
Authority
JP
Japan
Prior art keywords
processing
node
slave
nodal point
index tree
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
JP63285516A
Other languages
English (en)
Inventor
Yuuki Nakakamikawa
中上川 友樹
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP63285516A priority Critical patent/JPH02130647A/ja
Publication of JPH02130647A publication Critical patent/JPH02130647A/ja
Priority to US07/908,880 priority patent/US5307486A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明はファイル記憶装置に格納された索引木構造の
更新方式に係り、特に、ファイル記憶装置に格納されて
いる索引木の更新処理機構に、fめ定められた緩衝率P
を用いて処理の条件を決定する手段を有して、レコード
の格納率を比較的高い状態に保ち、かつ節点間のレコー
ドの移動を減らすことによってジャーナル量を削減した
索引木構造の更新方式に関する。
(従来の技術) 従来、索引木構造に対するレコードの追加、削除に於い
ては、索引の再編成を不要とし、レコードの格納率を高
め、かつ索引の階層を低く保ために、追加の際には、単
純追加、オーバフロー及び節点分割処理を、又、削除の
際には、単純削除、アンダフロー、及び節点合併処理を
それぞれ行なっている。
この際の索引木構造と従来の上記各処理例を第4図乃至
第11図を参照して説明する。
索引木は、第4図に示すように、ファイル記憶装置内に
階層的に配置された節点群よりなり、各節点は第5図に
示すように複数のレコード及び子節点からなる。
従来の更新方式では、各節点の上限子箱点数をMとする
と、下限子箱点数mは、 m−<M/2> (但しく 〉は小数点以下切上げを表わす)で与えられ
、任意の節点の子箱点数Xは、m≦X≦Mの関係を満た
している必要がある。
第6図に単純追加処理の例を示す。
ここでは、 [(追加後の更新対象節点の子箱点数)≦M]となる場
合に、一つの子節点を更新対象節点に追加する。
第7図にオーバフロー処理の例を示す。
ここでは、 [(追加後の更新対象節点の子箱点数)〉M]で、かつ [(隣接接点の子箱点数)くM] の場合に、更新対象節点から隣接接点に適当な数のレコ
ードを移動する。
第8図に節点分割処理の例を示す。
ここでは、 [(追加後の更新対象節点の子箱点数)〉M]で、かつ [(隣接接点の子箱点数)−Mコ の場合に、新しい接点を確保して更新対象節点及び隣接
接点のレコードを3つの節点に分配する。
第9図に単純削除処理の例を示す。
ここでは、 [(削除後の更新対象節点の子箱点数)≧m]となる場
合に、一つの子節点を更新対象節点から削除する。
第10図にアンダフロー処理の例を示す。
ここでは、 [(削除後の更新対象節点の子箱点数)くm]で、かつ [(隣接節点の子箱点数)>m] の場合に、隣接節点から更新対象節点に適当な数のレコ
ードを移動する。
第11図に節点合併処理の例を示す。
ここでは、 〔(削除後の更新対象節点の子箱点数)くm]で、かつ [(隣接節点の子箱点数)−m] の場合に、更新対象節点と隣接節点のレコードを合わせ
、一つの節点に合併する。
(発明が解決しようとする課題) 索引木をジャーナル処理の対象とするとき、ジャーナル
量の削減、及びジャー六ル採取処理の性能向上のために
は、更新による索引木の構造の変化及び節点間のレコー
ドの移動をできるだけ少なくする必要がある。
しかしながら上記した従来の手段では、更新対象節点と
隣接節点のレコード数の差が少なく、オーバフロー、ア
ンダフローの効果が薄い場合でもそれらの処理を行なっ
てしまうという問題がある。
例えばM−50の場合のレコード追加処理を考える。今
、更新対象節点の子箱点数をr50J、隣接節点の子箱
点数を「49」とする。この場合にはレコード追加によ
りオーバフロー処理が発生し、更新対象節点及び隣接節
点の両箱点共に、その子箱点数は「50」となる。更に
、今の更新対象節点に対してレコードの追加が起こると
すると節点分割処理が発生する。このような場合には最
初の追加で節点分割処理が発生したほうが索引木の構造
変化は少なく、ジャーナル量も少なくて済む。
また、従来の別の手段として、オーバフローアンダフロ
ー、合併処理を行なわず分割処理のみを行なう、方式が
ある。この方式ではジャーナル量は少なくなるが、一つ
の節点が一つの子節点しか持たない場合も発生し、レコ
ードの格納率が著しく悪化する場合がある。
本発明は上記実情に鑑みなされたもので、ファイル記憶
装置に格納されている索引木の更新処理に於いて、レコ
ードの格納率を比較的高い状態に保ち、かつ節点間のレ
コードの移動を減らすことによってジャーナル量を削減
することのできる索引木構造の更新方式を提供すること
を目的とする。
(課題を解決するための手段及び作用)本発明は、従来
、索引木の更新処理条件を制御する値であった、上限子
節点数M、下限子節点数m(−<M/2>)に代わり、
上限子箱点数M、緩衝率P (0≦P≦1/2)、下限
子節点数m−< (1/2−P)M>、更に2M′−<
  (1−P)M>、m’  −<  (1/2)M>
なる値を使用して、単純追加、オーバフロー、節点分割
処理及び単純削除、アンダフロー、節点合併処理の条件
を決定し実行する。
このように本発明に於いては、索引木に対して適当な緩
衝率Pを設定しておき、各節点に対する子節点の追加、
削除処理の際に、上記緩衝率Pを用いて、単純追加処理
、オーバーフロー処理、節点分割処理。及び単純削除処
理、アンダフロー処理、節点分割処理のうち、いずれの
処理を行なうかを判断する構成としたことにより、更新
対象節点と隣接節点の子節点数の差がある値以下である
場合に、オーバフロー処理、アンダフロー処理が行なわ
れず、従ってオーバフロー処理、アンダフロー処理が減
少することから、索引更新処理の性能を向上できる。又
、索引木構造の変動が少なくなるため、ジャーナル量が
少量で済む。
(実施例) 第1図は本発明の一実施例による構成を示すブロック図
である。
第1図に於いて、1はデータ処理装置であり、応用プロ
グラム処理部3,3.・・・と索引ファイル処理部4と
からなり、索引ファイル2中のレコードの検索、及び更
新処理を実行する。2は索引ファイルであり、索引木6
及び索引木制御レコード8を含む。3は応用プログラム
処理部であり、索引編成ファイルに対するレコードの検
索、追加、削除等を要求する。4は索引ファイル処理部
であり、応用プログラム処理部3が要求したレコードの
検索、追加、削除等を実行し、その結果を応用プログラ
ム処理部3に返却する。5は索引ファイル処理部4内に
設けられた索引本更新処理部であり、索引木制御レコー
ド8を用いて索引木の更新条件を決定し更新を実行する
。6は索引木であり、索引ファイル2の一部をなすもの
で、階層的に連結された節点群よりなる。7は索引木6
の構成要素をなす節点であり、複数のレコードと子節点
よりなる。8は索引木制御レコードであり、索引更新処
理を決定するための、下限子節点数M、下限子節点数m
1緩衝率P1及びそれから計算される補助定数M’ 、
 m’を含む。
第2図は上記本発明の一実施例における更新対象節点に
対するレコード追加処理の処理手順を示すフローチャー
トである。
第2図に於いて、Stは更新対象節点の子節点数を判断
するステップであり、Xは追加後の更新対象節点の子節
点数を示し、Mは下限子節点数を示す。ここでは、X5
Mであるとき単純追加処理を行なう。S2は隣接節点の
子節点数を判断するステップであり、yは隣接節点の子
節点数を示し、M′は< (1−P)M>で与えられる
数を示す(尚、Pは緩衝率)。ここでは、Y<M’であ
るときオーバフロー処理、y≧M′であるとき節点分割
処理をそれぞれ行なう。
第3図は本発明の一実施例に於ける更新対象節点に対す
るレコード削除処理の処理手順を示すフローチャートで
ある。
第3図に於いて、Sllは更新対象節点の子節点数を判
断するステップであり、Xは削除後の更新対象節点の子
節点数を示し、mは下限子節点数を示す。ここでは、X
2mであるとき単純削除処理を行なう。
Si2は隣接節点の子節点数を判断するステップであり
、yは隣接節点の子節点数を示し、m′は< (1/2
)M>で与えられる数を示す。ここでは、y>rl’で
あるときアンダフロー処理、y≦m′であるとき節点合
併処理をそれぞれ行なう。
ここで上記第1図及び第3図を参照して本発明の一実施
例に於ける動作を説明する。
第1図に於いて、応用プログラム処理部3が索引ファイ
ル2に対してレコードの追加又は削除を要求すると、索
引ファイル処理部4内の索引本更新処理部5は、現在の
索引木状態を調べ、更新すべき節点を決定し、これを更
新対象節点とする。
更に、索引本更新処理部5は、索引木制御レコード8内
の上限子節点数M1緩衝率P (0≦P≦1/2) 、
下限子節点数m (= < ((1/ 2)P)M>)
 、更に、補助定数M’  (−< (1−P)M>)
 、m’  (=<  (1/2)M>)を用いて子箱
点数に対する処理を決定する(但し−は、左辺が右辺で
定義されることを現わす)。
ここで、追加の場合は、第2図に示すように、先ずレコ
ード追加後の更新対象節点の子箱点数XとMとを比較し
、X5Mならば更新対象節点に一つの子箱点数を追加す
る単純追加処理を行なう。
又、x>Mならば、更に、隣接節点の子箱点数yとM′
とを比較し、y<M’であれば更新対象節点の適当数の
レコードを隣接節点に移動するオーバフロー処理を行な
う。
又、y≧M′であれば、新たな節点を確保し、更新対象
節点及び隣接節点のレコードを適当に分配する節点分割
処理を行なう。
次に削除処理について説明する。
削除の場合は、第3図に示すように、先ずレコード削除
後の更新対象節点の子箱点数Xとmとを比較し、X≧m
ならば更新対象節点から一つの子節点を削除する単純削
除処理を行なう。
又、x<mならば、更に隣接節点の子箱点数yとm と
を比較し、y > m /であれば、隣接節点の適当数
のレコードを更新対象節点に移動するアンダフロー処理
を行なう。
又、y≦m′であれば、更新対象節点と隣接節点のレコ
ードを合わせて一つの節点とする節点合併処理を行なう
尚、単純追加処理、オーバフロー処理、節点分割処理、
単純削除処理、アンダフロー処理、節点合併処理の例は
従来方式の例と同様であり、第6図乃至第11図に示さ
れている。
上記実施例に於いて、例えばM−50、P−0,1とす
る。このとき、M’−45、m’−25、m−20とな
る。ここで、レコード追加時に、更新対象節点の子箱点
数がr50J、隣接節点が「49」であったとすると、
従来とは異なり、節点分割処理が行われる。即ち効果の
薄いオーバフロー処理を行なわないことにより、ジャー
ナル量を少なく済ませることができる。
[発明の効果] 以上詳記したように本発明によれば、値の大小関係に従
って整列されたレコードが階層的に関連付けられて記録
される索引木構造に対し、レコードの検索、追加、削除
を行なうことのできるデータ処理システムに於いて、索
引木の各節点の下限子節点数を上限子節点数の172以
下の任意の適切な値に設定できる手段を有し、各節点に
対する子節点の追加、削除時に、予め設定された緩衝率
を用いて、単純追加処理、オーバーフロー処理、節点分
割処理、及び単純削除処理、アンダフロー処理、節点分
割処理のうち、いずれの処理を行なうかを判断する構成
としたことにより、レコードの格納率を比較的高い状態
に保ち、かつ節点間のレコードの移動を減らしてジャー
ナル量を削減することのできる索引木構造の更新方式が
提供できる。
【図面の簡単な説明】
第1図は本発明の一実施例に於ける要部の構成を示すブ
ロック図、第2図は上記実施例に於ける、更新対象節点
に対するレコード追加処理の処理手順を示すフローチャ
ート、第3図は上記実施例に於ける、更新対象節点に対
するレコード削除処理の処理手順を示すフローチャート
、第4図は索弓木構造を示す図、第5図は節点構造を示
す図、第6図乃至第11図はそれぞれ従来の処理例を示
す図である。 ■・・・データ処理装置、2・・・索引ファイル、3.
3.・・・、・・・応用プログラム処理部、4・・・索
弓ファイル処理部、5・・・索引木更新処理部、6・・
・索引木、7・・・節点、8・・・索引木制御レコード
、M・・・上限子節点数、m・・・下限子節点数、P・
・・緩衝率、M’、m′・・・補助定数。 出願人代理人 弁理士 鈴江武彦 第2 図 第 図 A   CD 8[]の追加 BCD 96図 第4 CDEF 8 [亘]の追加 BCDE 第7 CDEF 81亘]の追加 G  HI GHI 図 GHIJ    に [「不=エエ丁1]]ζ[L工壮王 81亘] 1ミ]「で[「LH] 第9図 AB   − 疋エ ロ配]の削除 A  CD DEFG E   F   G 第10図 AB                 CD(シ 口
亘]の削除 A  CD 第11

Claims (1)

    【特許請求の範囲】
  1. 値の大小関係に従って整列されたレコードが階層的に関
    連付けられて記録される索引木構造に対し、レコードの
    検索、追加、削除を行なうことのできるデータ処理シス
    テムに於いて、索引木の各節点の下限子節点数を上限子
    節点数の1/2以下の任意の適切な値に設定できる手段
    を有し、各節点に対する子節点の追加、削除時に、予め
    設定された緩衝率を用いて、単純追加処理、オーバーフ
    ロー処理、節点分割処理、及び単純削除処理、アンダフ
    ロー処理、節点分割処理のうち、いずれの処理を行なう
    かを判断することを特徴とした索引木構造の更新方式。
JP63285516A 1988-11-11 1988-11-11 索引木構造の更新方式 Pending JPH02130647A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63285516A JPH02130647A (ja) 1988-11-11 1988-11-11 索引木構造の更新方式
US07/908,880 US5307486A (en) 1988-11-11 1992-07-07 Method for updating an index tree structure of data based on node sizes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63285516A JPH02130647A (ja) 1988-11-11 1988-11-11 索引木構造の更新方式

Publications (1)

Publication Number Publication Date
JPH02130647A true JPH02130647A (ja) 1990-05-18

Family

ID=17692543

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63285516A Pending JPH02130647A (ja) 1988-11-11 1988-11-11 索引木構造の更新方式

Country Status (2)

Country Link
US (1) US5307486A (ja)
JP (1) JPH02130647A (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430869A (en) * 1991-05-29 1995-07-04 Hewlett-Packard Company System and method for restructuring a B-Tree
JP2708657B2 (ja) * 1992-02-18 1998-02-04 富士通株式会社 スプリット制御方法
US5530957A (en) * 1992-08-07 1996-06-25 At&T Corp. Storing trees in navigable form
JP3183736B2 (ja) * 1992-12-28 2001-07-09 富士通株式会社 データベース論理データ構造の動的変更方式
WO1995002222A1 (en) * 1993-07-07 1995-01-19 European Computer-Industry Research Centre Gmbh Database structures
US5619693A (en) * 1994-05-02 1997-04-08 Tandem Computers Incorporated Method for sorting and storing data employing dynamic sort tree reconfiguration in volatile memory
US5765175A (en) * 1994-08-26 1998-06-09 Intel Corporation System and method for removing deleted entries in file systems based on write-once or erase-slowly media
JPH0916607A (ja) * 1995-06-26 1997-01-17 Hitachi Ltd データベース管理システムにおけるインデクス管理方法
US5758353A (en) * 1995-12-01 1998-05-26 Sand Technology Systems International, Inc. Storage and retrieval of ordered sets of keys in a compact 0-complete tree
US6427147B1 (en) * 1995-12-01 2002-07-30 Sand Technology Systems International Deletion of ordered sets of keys in a compact O-complete tree
US5842197A (en) * 1996-08-29 1998-11-24 Oracle Corporation Selecting a qualified data repository to create an index
SE510000C2 (sv) * 1997-07-21 1999-03-29 Ericsson Telefon Ab L M Struktur vid databas
US6018741A (en) * 1997-10-22 2000-01-25 International Business Machines Corporation Method and system for managing objects in a dynamic inheritance tree
KR100285265B1 (ko) * 1998-02-25 2001-04-02 윤덕용 데이터 베이스 관리 시스템과 정보 검색의 밀결합을 위하여 서브 인덱스와 대용량 객체를 이용한 역 인덱스 저장 구조
US6381607B1 (en) 1999-06-19 2002-04-30 Kent Ridge Digital Labs System of organizing catalog data for searching and retrieval
GB2363044A (en) * 2000-05-16 2001-12-05 Ibm Method and computer system for selecting and displaying graphic objects
JP2002108662A (ja) * 2000-10-02 2002-04-12 Fujitsu Ltd 情報管理方法
US20070234232A1 (en) * 2006-03-29 2007-10-04 Gheorghe Adrian Citu Dynamic image display
US20080091942A1 (en) * 2006-09-29 2008-04-17 The Boeing Co. Automated two dimensional technical data packaging
US8775373B1 (en) 2008-05-21 2014-07-08 Translattice, Inc. Deleting content in a distributed computing environment
US8346824B1 (en) 2008-05-21 2013-01-01 Translattice, Inc. Data distribution system
US8417679B1 (en) * 2008-05-21 2013-04-09 Translattice, Inc. Fast storage writes
JP5578121B2 (ja) * 2011-03-18 2014-08-27 富士通株式会社 データ管理方法、データ管理プログラム、データ管理装置
US11080253B1 (en) * 2015-12-21 2021-08-03 Amazon Technologies, Inc. Dynamic splitting of contentious index data pages

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH584488A5 (ja) * 1975-05-05 1977-01-31 Ibm
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4468728A (en) * 1981-06-25 1984-08-28 At&T Bell Laboratories Data structure and search method for a data base management system
US4611272A (en) * 1983-02-03 1986-09-09 International Business Machines Corporation Key-accessed file organization
US4677550A (en) * 1983-09-30 1987-06-30 Amalgamated Software Of North America, Inc. Method of compacting and searching a data index
US4945475A (en) * 1986-10-30 1990-07-31 Apple Computer, Inc. Hierarchical file system to provide cataloging and retrieval of data
US4914569A (en) * 1987-10-30 1990-04-03 International Business Machines Corporation Method for concurrent record access, insertion, deletion and alteration using an index tree
CA1273409A (en) * 1988-02-04 1990-08-28 Robert J. Inkol Filter system for radar applications
US5089952A (en) * 1988-10-07 1992-02-18 International Business Machines Corporation Method for allowing weak searchers to access pointer-connected data structures without locking
US5202986A (en) * 1989-09-28 1993-04-13 Bull Hn Information Systems Inc. Prefix search tree partial key branching

Also Published As

Publication number Publication date
US5307486A (en) 1994-04-26

Similar Documents

Publication Publication Date Title
JPH02130647A (ja) 索引木構造の更新方式
US11281544B2 (en) Backup and restore of linked clone VM
CN108363813B (zh) 数据存储方法、装置和***
KR100398753B1 (ko) 효과적인 파일 갱신 처리 및 복구 처리를 이용하는트랜잭션 처리 시스템
JPH0793261A (ja) 並列計算システムにおける分散型ツリー・ファイル構造のバランスをとる方法
EP3895033B1 (en) Efficient database migration using an intermediary secondary storage system
US10063651B2 (en) Parallel streams to maintain a target data transfer rate
CN106326239A (zh) 分布式文件***及其文件元信息管理方法
CN112181309A (zh) 一种海量对象存储的在线扩容方法
KR20210058118A (ko) CaseDB: 엣지컴퓨팅을 위한 저비용 Put-Intensive 키-벨류 저장장치
US10642817B2 (en) Index table update method, and device
CN115599961A (zh) 业务的树结构处理方法及装置
US8612717B2 (en) Storage system
US10614055B2 (en) Method and system for tree management of trees under multi-version concurrency control
JPH0394377A (ja) 地図ファイル更新方式
JP3315752B2 (ja) 概念階層における類似度テーブル作成装置
JP2636806B2 (ja) インデックス更新方式
CN117312327B (zh) 一种数据存储方法、装置、设备及计算机可读存储介质
CN118227571A (zh) 一种文件重划分方法、装置、设备及存储介质
JP2792158B2 (ja) エキスパートシステムのフレーム知識管理装置
JPS63150745A (ja) 複数パ−ジヨン管理システム
JPH05242176A (ja) 図面の世代管理方式
CN117194386A (zh) 结构单元的迁移方法及装置、存储介质及电子装置
CN114706832A (zh) 一种数据重分布方法、装置、设备及存储介质
JPH0580957A (ja) データ管理方法