JPH10124363A - 順編成索引管理方法 - Google Patents
順編成索引管理方法Info
- Publication number
- JPH10124363A JPH10124363A JP8298031A JP29803196A JPH10124363A JP H10124363 A JPH10124363 A JP H10124363A JP 8298031 A JP8298031 A JP 8298031A JP 29803196 A JP29803196 A JP 29803196A JP H10124363 A JPH10124363 A JP H10124363A
- Authority
- JP
- Japan
- Prior art keywords
- entry
- index
- index block
- stored
- entries
- 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
Links
- 238000000034 method Methods 0.000 title description 8
- 238000007726 management method Methods 0.000 claims description 44
- 230000008520 organization Effects 0.000 claims 2
- 230000001174 ascending effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 108010074506 Transfer Factor Proteins 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 格納されるエントリのキーの傾向が様々な場
合においても索引ブロック中の空き領域を低減させ、順
編成索引の記憶効率を向上させる。 【解決手段】 エントリを格納する際に当該エントリを
格納する対象の第1索引ブロックに空き領域がないと空
き領域検出手段3が検出した場合には、索引ブロック作
成手段4が新たな第2索引ブロックを作成し、エントリ
移動数算出手段5がエントリに関するキーの傾向に応じ
て指定されたエントリ移動ファクタに基づいて第1索引
ブロックから第2索引ブロックへ移動させるエントリ移
動数を決定し、当該エントリ移動数のエントリをエント
リ移動手段6が第1索引ブロックから第2索引ブロック
へ移動させる。したがって、第1索引ブロックと第2索
引ブロックとの空き領域を格納されるエントリに適した
配分にすることができ、後続するエントリを格納した場
合において、無駄な空き領域が発生することを防ぐこと
ができる。
合においても索引ブロック中の空き領域を低減させ、順
編成索引の記憶効率を向上させる。 【解決手段】 エントリを格納する際に当該エントリを
格納する対象の第1索引ブロックに空き領域がないと空
き領域検出手段3が検出した場合には、索引ブロック作
成手段4が新たな第2索引ブロックを作成し、エントリ
移動数算出手段5がエントリに関するキーの傾向に応じ
て指定されたエントリ移動ファクタに基づいて第1索引
ブロックから第2索引ブロックへ移動させるエントリ移
動数を決定し、当該エントリ移動数のエントリをエント
リ移動手段6が第1索引ブロックから第2索引ブロック
へ移動させる。したがって、第1索引ブロックと第2索
引ブロックとの空き領域を格納されるエントリに適した
配分にすることができ、後続するエントリを格納した場
合において、無駄な空き領域が発生することを防ぐこと
ができる。
Description
【0001】
【発明の属する技術分野】本発明は、索引ブロックで構
成された順編成索引を管理する順編成索引管理方法に関
し、特に、エントリを格納するに足る空き領域のない索
引ブロックに対してエントリの格納が発生した場合に順
編成索引を拡張する順編成索引管理方法に関する。
成された順編成索引を管理する順編成索引管理方法に関
し、特に、エントリを格納するに足る空き領域のない索
引ブロックに対してエントリの格納が発生した場合に順
編成索引を拡張する順編成索引管理方法に関する。
【0002】
【従来の技術】順編成索引としては、データベースシス
テムにおいては、例えば、B+-Treeという手法が利用さ
れている。B+-Treeとは「Douglas Comer. The Ubiquitou
s B-Tree. ACMComputing Surveys, 11(2):121-137,197
9」等で紹介されているように、動的なデータ構造であ
り、一般に二次記憶装置上において実現され、格納、削
除、ランダムサーチ、シーケンシャルサーチ等といった
データベースに対する処理をサポートしている。
テムにおいては、例えば、B+-Treeという手法が利用さ
れている。B+-Treeとは「Douglas Comer. The Ubiquitou
s B-Tree. ACMComputing Surveys, 11(2):121-137,197
9」等で紹介されているように、動的なデータ構造であ
り、一般に二次記憶装置上において実現され、格納、削
除、ランダムサーチ、シーケンシャルサーチ等といった
データベースに対する処理をサポートしている。
【0003】このようなB+-Treeの典型的な構成は、例
えば図7に示すように、上位の索引ブロック21が下位
の索引ブロック22を複数管理する構成となっており、
各下位の索引ブロック22には、下位索引ブロックの次
の順序の索引ブロックを表すポインタを記憶する領域2
5と、キーとキーに対応する内容(バリュー)とを有し
たエントリを格納する領域26とが、備えられている。
えば図7に示すように、上位の索引ブロック21が下位
の索引ブロック22を複数管理する構成となっており、
各下位の索引ブロック22には、下位索引ブロックの次
の順序の索引ブロックを表すポインタを記憶する領域2
5と、キーとキーに対応する内容(バリュー)とを有し
たエントリを格納する領域26とが、備えられている。
【0004】このB+-Treeでは、索引ブロックにエント
リを格納する場合には、エントリを格納すべき第1索引
ブロックを検索し、当該第1索引ブロックにエントリを
格納するための空き領域が存在しない場合には、新たな
第2索引ブロックを作成し、第1索引ブロックに格納さ
れているエントリの50%(変えることのできない固定
値)を第2索引ブロックに移動させることによって、順
編成索引全体を索引ブロック単位で拡張して動的なエン
トリの増加に対応している。
リを格納する場合には、エントリを格納すべき第1索引
ブロックを検索し、当該第1索引ブロックにエントリを
格納するための空き領域が存在しない場合には、新たな
第2索引ブロックを作成し、第1索引ブロックに格納さ
れているエントリの50%(変えることのできない固定
値)を第2索引ブロックに移動させることによって、順
編成索引全体を索引ブロック単位で拡張して動的なエン
トリの増加に対応している。
【0005】しかしながら、上記したB+-Treeの方法で
は、順編成索引を拡張した時点では、第1索引ブロック
及び第2索引ブロックそれぞれに50%の空き領域がで
きており、拡張した後に順編成索引に格納されるエント
リのキーの分布が一様でない場合、例えば、キーが大き
くなる傾向で複数のエントリが追加される場合、或いは
キーが小さくなる傾向で複数のエントリが追加される場
合には、前記索引ブロック中の50%の空き領域がほと
んど未使用のままとなってしまい、順編成索引全体の記
憶効率が悪くなるという問題が生じていた。
は、順編成索引を拡張した時点では、第1索引ブロック
及び第2索引ブロックそれぞれに50%の空き領域がで
きており、拡張した後に順編成索引に格納されるエント
リのキーの分布が一様でない場合、例えば、キーが大き
くなる傾向で複数のエントリが追加される場合、或いは
キーが小さくなる傾向で複数のエントリが追加される場
合には、前記索引ブロック中の50%の空き領域がほと
んど未使用のままとなってしまい、順編成索引全体の記
憶効率が悪くなるという問題が生じていた。
【0006】これに対して、特開平4−106641号
公報(以下、文献1という。)に記載された「索引の分
割率変更処理方式」では、上記した従来のB+-Treeの方
法において、エントリを追加する索引ブロックが階層の
最後の索引ブロックである場合に、当該索引ブロックに
空き領域が存在せず、且つ、格納するエントリのキーが
当該索引ブロックの最後のエントリのキーよりも大きい
時にのみ、元の索引ブロックから新たに作成した索引ブ
ロックにエントリを移動させず、格納対象のエントリの
みを新たな索引ブロックに格納するといった方法によっ
て、元の索引ブロック中に空き領域が発生することを防
ぎ、キーが昇順となっている複数のエントリが追加され
る状況での順編成索引の記憶効率を向上している。
公報(以下、文献1という。)に記載された「索引の分
割率変更処理方式」では、上記した従来のB+-Treeの方
法において、エントリを追加する索引ブロックが階層の
最後の索引ブロックである場合に、当該索引ブロックに
空き領域が存在せず、且つ、格納するエントリのキーが
当該索引ブロックの最後のエントリのキーよりも大きい
時にのみ、元の索引ブロックから新たに作成した索引ブ
ロックにエントリを移動させず、格納対象のエントリの
みを新たな索引ブロックに格納するといった方法によっ
て、元の索引ブロック中に空き領域が発生することを防
ぎ、キーが昇順となっている複数のエントリが追加され
る状況での順編成索引の記憶効率を向上している。
【0007】
【発明が解決しようとする課題】しかしながら、文献1
に記載された方法を用いた場合には、例えば、キーが昇
順となっていないが、全体としてキーが大きくなる傾向
で複数のエントリが追加される場合には、階層の最後の
索引ブロックのエントリの最大のキーより小さいキーを
持つエントリが格納されることもあるが、この時には、
従来のB+-Treeと同様な方法によって順編成索引の拡張
が行われるために、50%の空き領域を持つ索引ブロッ
クを生じさせてしまい、後続のエントリを格納しても前
記空き領域をそのまま残してしまって順編成索引の記憶
効率を向上することができない。このように、文献1に
記載された方法では、キーの昇順となっているエントリ
が追加される場合を除いては、順編成索引の記憶効率を
向上することができない。
に記載された方法を用いた場合には、例えば、キーが昇
順となっていないが、全体としてキーが大きくなる傾向
で複数のエントリが追加される場合には、階層の最後の
索引ブロックのエントリの最大のキーより小さいキーを
持つエントリが格納されることもあるが、この時には、
従来のB+-Treeと同様な方法によって順編成索引の拡張
が行われるために、50%の空き領域を持つ索引ブロッ
クを生じさせてしまい、後続のエントリを格納しても前
記空き領域をそのまま残してしまって順編成索引の記憶
効率を向上することができない。このように、文献1に
記載された方法では、キーの昇順となっているエントリ
が追加される場合を除いては、順編成索引の記憶効率を
向上することができない。
【0008】本発明は、上記した従来の事情に鑑みなさ
れたもので、格納されるエントリのキーの傾向が様々な
場合においても索引ブロック中の空き領域を低減させ、
順編成索引の記憶効率を向上させる順編成索引管理方法
を提供することを目的としている。
れたもので、格納されるエントリのキーの傾向が様々な
場合においても索引ブロック中の空き領域を低減させ、
順編成索引の記憶効率を向上させる順編成索引管理方法
を提供することを目的としている。
【0009】
【課題を解決するための手段】上記目的を達成するため
に本発明の請求項1に係る順編成索引管理方法は、索引
ブロックによって構成された順編成索引を管理する順編
成索引管理方法において、複数の索引ブロック間のエン
トリの移動数を規定するエントリ移動ファクタを、格納
されるエントリに関するキーの傾向に応じて順編成索引
に対して指定し、エントリを格納する際に第1索引ブロ
ックに当該エントリを格納するに足る空き領域がない場
合には、新たな第2索引ブロックを作成し、前記エント
リ移動ファクタに基づいて第1索引ブロックから第2索
引ブロックへ移動させるエントリ移動数を決定し、当該
エントリ移動数のエントリを第1索引ブロックから第2
索引ブロックへ移動させることを特徴とする。
に本発明の請求項1に係る順編成索引管理方法は、索引
ブロックによって構成された順編成索引を管理する順編
成索引管理方法において、複数の索引ブロック間のエン
トリの移動数を規定するエントリ移動ファクタを、格納
されるエントリに関するキーの傾向に応じて順編成索引
に対して指定し、エントリを格納する際に第1索引ブロ
ックに当該エントリを格納するに足る空き領域がない場
合には、新たな第2索引ブロックを作成し、前記エント
リ移動ファクタに基づいて第1索引ブロックから第2索
引ブロックへ移動させるエントリ移動数を決定し、当該
エントリ移動数のエントリを第1索引ブロックから第2
索引ブロックへ移動させることを特徴とする。
【0010】上記した請求項1に係る順編成索引管理方
法では、エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動するエントリ数が決定
されるために、順編成索引全体の索引ブロックに対する
エントリ移動ファクタを格納するエントリに関するキー
の傾向に応じて指定することによって、第1索引ブロッ
クと第2索引ブロックとの空き領域を格納されるエント
リに適した配分にすることができる。
法では、エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動するエントリ数が決定
されるために、順編成索引全体の索引ブロックに対する
エントリ移動ファクタを格納するエントリに関するキー
の傾向に応じて指定することによって、第1索引ブロッ
クと第2索引ブロックとの空き領域を格納されるエント
リに適した配分にすることができる。
【0011】本発明の請求項2に係る順編成索引管理方
法は、索引ブロックによって構成された順編成索引を管
理する順編成索引管理方法において、複数の索引ブロッ
ク間のエントリの移動数を規定するエントリ移動ファク
タを、格納されるエントリに関するキーの傾向に応じて
索引ブロック毎に対して指定し、エントリを格納する際
に第1索引ブロックに当該エントリを格納するに足る空
き領域がない場合には、新たな第2索引ブロックを作成
し、前記エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動させるエントリ移動数
を決定し、当該エントリ移動数のエントリを第1索引ブ
ロックから第2索引ブロックへ移動させることを特徴と
する。
法は、索引ブロックによって構成された順編成索引を管
理する順編成索引管理方法において、複数の索引ブロッ
ク間のエントリの移動数を規定するエントリ移動ファク
タを、格納されるエントリに関するキーの傾向に応じて
索引ブロック毎に対して指定し、エントリを格納する際
に第1索引ブロックに当該エントリを格納するに足る空
き領域がない場合には、新たな第2索引ブロックを作成
し、前記エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動させるエントリ移動数
を決定し、当該エントリ移動数のエントリを第1索引ブ
ロックから第2索引ブロックへ移動させることを特徴と
する。
【0012】上記した請求項2に係る順編成索引管理方
法では、エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動するエントリ数が決定
されるために、各索引ブロックに対するエントリ移動フ
ァクタを格納するエントリに関するキーの傾向に応じて
指定することによって、第1索引ブロックと第2索引ブ
ロックとの空き領域を格納されるエントリに適した配分
にすることができる。また、前記空き領域の配分を格納
する対象の索引ブロック毎に適した配分にすることがで
きる。
法では、エントリ移動ファクタに基づいて第1索引ブロ
ックから第2索引ブロックへ移動するエントリ数が決定
されるために、各索引ブロックに対するエントリ移動フ
ァクタを格納するエントリに関するキーの傾向に応じて
指定することによって、第1索引ブロックと第2索引ブ
ロックとの空き領域を格納されるエントリに適した配分
にすることができる。また、前記空き領域の配分を格納
する対象の索引ブロック毎に適した配分にすることがで
きる。
【0013】本発明の請求項3に係る順編成索引管理方
法は、請求項1または請求項2に記載した順編成索引管
理方法において、前記エントリ移動ファクタを応用が指
定することを特徴とする。
法は、請求項1または請求項2に記載した順編成索引管
理方法において、前記エントリ移動ファクタを応用が指
定することを特徴とする。
【0014】上記した請求項3に係る順編成索引管理方
法では、応用が把握している格納するエントリのキーの
傾向に応じて、第1索引ブロックと第2索引ブロックと
の空き領域を格納されるエントリに適した配分にするこ
とができる。
法では、応用が把握している格納するエントリのキーの
傾向に応じて、第1索引ブロックと第2索引ブロックと
の空き領域を格納されるエントリに適した配分にするこ
とができる。
【0015】本発明の請求項4に係る順編成索引管理方
法は、請求項1または請求項2に記載した順編成索引管
理方法において、エントリが格納される傾向に基づいて
前記エントリ移動ファクタを指定することを特徴とす
る。
法は、請求項1または請求項2に記載した順編成索引管
理方法において、エントリが格納される傾向に基づいて
前記エントリ移動ファクタを指定することを特徴とす
る。
【0016】上記した請求項4に係る順編成索引管理方
法では、予め格納されるエントリのキーの傾向が分から
ない場合でも、順編成索引にエントリが格納される傾向
に基づいて、格納されるエントリのキーの傾向を推測で
き、第1索引ブロックと第2索引ブロックとの空き領域
を格納されるエントリに適した配分にすることができ
る。
法では、予め格納されるエントリのキーの傾向が分から
ない場合でも、順編成索引にエントリが格納される傾向
に基づいて、格納されるエントリのキーの傾向を推測で
き、第1索引ブロックと第2索引ブロックとの空き領域
を格納されるエントリに適した配分にすることができ
る。
【0017】本発明の請求項5に係る順編成索引管理方
法は、請求項1または請求項2に記載した順編成索引管
理方法において、前記エントリ移動ファクタとして複数
のエントリ移動ファクタが指定され、前記複数のエント
リ移動ファクタ中に応用によって指定されているエント
リ移動ファクタがある場合には、当該応用によって指定
されたエントリ移動ファクタに基づいてエントリ移動数
を決定することを特徴とする。
法は、請求項1または請求項2に記載した順編成索引管
理方法において、前記エントリ移動ファクタとして複数
のエントリ移動ファクタが指定され、前記複数のエント
リ移動ファクタ中に応用によって指定されているエント
リ移動ファクタがある場合には、当該応用によって指定
されたエントリ移動ファクタに基づいてエントリ移動数
を決定することを特徴とする。
【0018】上記した請求項5に係る順編成索引管理方
法では、応用がエントリ移動ファクタを指定している場
合には、他のエントリ移動ファクタが指定されていて
も、応用が指定したエントリ移動ファクタによって、第
1索引ブロックと第2索引ブロックとの空き領域の配分
を決定する。
法では、応用がエントリ移動ファクタを指定している場
合には、他のエントリ移動ファクタが指定されていて
も、応用が指定したエントリ移動ファクタによって、第
1索引ブロックと第2索引ブロックとの空き領域の配分
を決定する。
【0019】
【発明の実施の形態】本発明に係る順編成索引管理方法
を実施する順編成索引管理装置の一実施例を図1を参照
して説明する。この順編成索引管理装置は、順編成索引
に格納するエントリを入力するエントリ入力手段1と、
格納するエントリを格納すべき第1索引ブロックを特定
する索引ブロック特定手段2と、特定された第1索引ブ
ロックに空き領域があるか否かを検出する空き領域検出
手段3と、空き領域がないことを検出されたことに基づ
いて新たな第2索引ブロックを作成する索引ブロック作
成手段4と、第1索引ブロックから第2索引ブロックへ
移動するエントリ移動数を算出するエントリ移動数算出
手段5と、算出されたエントリ移動数のエントリを第1
索引ブロックから第2索引ブロックへ移動するエントリ
移動手段6と、入力されたエントリを索引ブロックに格
納する入力エントリ格納手段7と、エントリが格納され
る傾向からエントリ移動ファクタを算出する移動ファク
タ算出手段8と、エントリ移動ファクタを管理する移動
ファクタ管理手段9と、を備えている。
を実施する順編成索引管理装置の一実施例を図1を参照
して説明する。この順編成索引管理装置は、順編成索引
に格納するエントリを入力するエントリ入力手段1と、
格納するエントリを格納すべき第1索引ブロックを特定
する索引ブロック特定手段2と、特定された第1索引ブ
ロックに空き領域があるか否かを検出する空き領域検出
手段3と、空き領域がないことを検出されたことに基づ
いて新たな第2索引ブロックを作成する索引ブロック作
成手段4と、第1索引ブロックから第2索引ブロックへ
移動するエントリ移動数を算出するエントリ移動数算出
手段5と、算出されたエントリ移動数のエントリを第1
索引ブロックから第2索引ブロックへ移動するエントリ
移動手段6と、入力されたエントリを索引ブロックに格
納する入力エントリ格納手段7と、エントリが格納され
る傾向からエントリ移動ファクタを算出する移動ファク
タ算出手段8と、エントリ移動ファクタを管理する移動
ファクタ管理手段9と、を備えている。
【0020】まず、上記した順編成索引管理装置が管理
する順編成索引を図2を参照して説明する。なお、図7
に示す従来の順編成索引と同一部分には同一番号を付
し、重複する説明を省略する。この順編成索引は、図7
に示す従来の順編成索引に、さらに索引ブロック22内
に格納しているエントリの数を保持するエントリ数保持
領域23と、当該索引ブロックに対するエントリ移動フ
ァクタを保持する移動ファクタ保持領域24と、を備え
ている。
する順編成索引を図2を参照して説明する。なお、図7
に示す従来の順編成索引と同一部分には同一番号を付
し、重複する説明を省略する。この順編成索引は、図7
に示す従来の順編成索引に、さらに索引ブロック22内
に格納しているエントリの数を保持するエントリ数保持
領域23と、当該索引ブロックに対するエントリ移動フ
ァクタを保持する移動ファクタ保持領域24と、を備え
ている。
【0021】次に、上記した順編成索引管理装置を詳細
に説明する。空き領域管理手段3は、索引ブロック特定
手段2によって特定された第1索引ブロック中のエント
リ保持領域23のエントリ数に基づいて、第1索引ブロ
ックに空き領域があるか否かを検出し、空き領域がない
と検出した場合には索引ブロック作成手段4に空き領域
がないことを通知する。一方、空き領域があると検出し
た場合には、入力エントリ格納手段7に入力されたエン
トリを格納させる指示を行う。索引ブロック作成手段4
は、空き領域管理手段3から空き領域がないとの通知を
受け取ると、第1索引ブロックの直後に繋がる新たな第
2索引ブロックを作成する。
に説明する。空き領域管理手段3は、索引ブロック特定
手段2によって特定された第1索引ブロック中のエント
リ保持領域23のエントリ数に基づいて、第1索引ブロ
ックに空き領域があるか否かを検出し、空き領域がない
と検出した場合には索引ブロック作成手段4に空き領域
がないことを通知する。一方、空き領域があると検出し
た場合には、入力エントリ格納手段7に入力されたエン
トリを格納させる指示を行う。索引ブロック作成手段4
は、空き領域管理手段3から空き領域がないとの通知を
受け取ると、第1索引ブロックの直後に繋がる新たな第
2索引ブロックを作成する。
【0022】エントリ移動数算出手段5は、索引ブロッ
ク作成手段4によって第2索引ブロックが作成された場
合に動作し、移動ファクタ管理手段9からエントリ移動
ファクタを受け取る。次いで、第1索引ブロックから第
2索引ブロックへ移動させるエントリの移動数を以下の
式(1)を用いて算出し、算出したエントリ移動数をエ
ントリ移動手段6に通知する。
ク作成手段4によって第2索引ブロックが作成された場
合に動作し、移動ファクタ管理手段9からエントリ移動
ファクタを受け取る。次いで、第1索引ブロックから第
2索引ブロックへ移動させるエントリの移動数を以下の
式(1)を用いて算出し、算出したエントリ移動数をエ
ントリ移動手段6に通知する。
【0023】
【数1】
【0024】エントリ移動手段6は、通知されたエント
リ移動数のエントリを第1索引ブロックからキーの大き
い順に取り出し、第2索引ブロックへ移動させて格納
し、エントリ入力手段1によって入力されたエントリを
格納させる指示を入力エントリ格納手段7に行う。ここ
で、索引ブロック間で移動するエントリの数を規定する
エントリ移動ファクタは、”0”〜”1”の間の数値と
なっており、エントリ移動数算出手段5及びエントリ移
動手段6の処理によってエントリ移動ファクタが”0”
に近いほど第2索引ブロックに移動するエントリ移動数
が多く、第1索引ブロックの空き領域が多くなる。一
方、”1”に近いほど第2索引ブロックに移動するエン
トリ移動数が少なく、第2索引ブロックの空き領域が多
くなる。
リ移動数のエントリを第1索引ブロックからキーの大き
い順に取り出し、第2索引ブロックへ移動させて格納
し、エントリ入力手段1によって入力されたエントリを
格納させる指示を入力エントリ格納手段7に行う。ここ
で、索引ブロック間で移動するエントリの数を規定する
エントリ移動ファクタは、”0”〜”1”の間の数値と
なっており、エントリ移動数算出手段5及びエントリ移
動手段6の処理によってエントリ移動ファクタが”0”
に近いほど第2索引ブロックに移動するエントリ移動数
が多く、第1索引ブロックの空き領域が多くなる。一
方、”1”に近いほど第2索引ブロックに移動するエン
トリ移動数が少なく、第2索引ブロックの空き領域が多
くなる。
【0025】したがって、格納されるエントリのキーが
増加傾向であれば、エントリ移動ファクタを”1”に近
い値とし、逆に、エントリのキーが減少傾向であればエ
ントリ移動ファクタを”0”に近い値としておくことに
よって、第1索引ブロックと第2索引ブロックとの空き
領域の配分をエントリのキーの傾向に適したものとする
ことができ、後続するエントリが格納されていく際に、
無駄な空き領域が発生することを防ぐことができる。
増加傾向であれば、エントリ移動ファクタを”1”に近
い値とし、逆に、エントリのキーが減少傾向であればエ
ントリ移動ファクタを”0”に近い値としておくことに
よって、第1索引ブロックと第2索引ブロックとの空き
領域の配分をエントリのキーの傾向に適したものとする
ことができ、後続するエントリが格納されていく際に、
無駄な空き領域が発生することを防ぐことができる。
【0026】入力エントリ格納手段7は、エントリ移動
手段6から入力エントリの格納指示を受け取った場合に
は、第1索引ブロック或いは第2索引ブロックのいずれ
に格納するかを入力エントリのキーに基づいて決定し、
決定した索引ブロック中のキーに応じた位置に入力エン
トリを格納する。なお、空き領域検出手段3から入力エ
ントリの格納指示を受け取った場合には、第1索引ブロ
ックの入力エントリーのキーに応じた位置にエントリを
格納する。
手段6から入力エントリの格納指示を受け取った場合に
は、第1索引ブロック或いは第2索引ブロックのいずれ
に格納するかを入力エントリのキーに基づいて決定し、
決定した索引ブロック中のキーに応じた位置に入力エン
トリを格納する。なお、空き領域検出手段3から入力エ
ントリの格納指示を受け取った場合には、第1索引ブロ
ックの入力エントリーのキーに応じた位置にエントリを
格納する。
【0027】移動ファクタ算出部8は、索引ブロック毎
にエントリが格納される傾向に基づいてエントリ移動フ
ァクタを算出する。すなわち、エントリが空の状態から
格納されていく場合の索引ブロックのエントリ移動ファ
クタは、例えば以下に示すように算出される。空の索引
ブロックのエントリ移動ファクターを初期値”0”と
し、空の索引ブロックに対して最初にエントリを格納す
る場合のエントリ移動ファクタの増加を”0”とする。
また、n個(0<n≦S)のエントリが格納されている
索引ブロックに対してエントリを格納する場合のエント
リ移動ファクタの増加Mnは以下の式(2)によって求
める。
にエントリが格納される傾向に基づいてエントリ移動フ
ァクタを算出する。すなわち、エントリが空の状態から
格納されていく場合の索引ブロックのエントリ移動ファ
クタは、例えば以下に示すように算出される。空の索引
ブロックのエントリ移動ファクターを初期値”0”と
し、空の索引ブロックに対して最初にエントリを格納す
る場合のエントリ移動ファクタの増加を”0”とする。
また、n個(0<n≦S)のエントリが格納されている
索引ブロックに対してエントリを格納する場合のエント
リ移動ファクタの増加Mnは以下の式(2)によって求
める。
【0028】
【数2】
【0029】したがって、空の状態からエントリが格納
された索引ブロックを拡張する際のエントリ移動ファク
タMeは以下の式(3)で算出される。
された索引ブロックを拡張する際のエントリ移動ファク
タMeは以下の式(3)で算出される。
【0030】
【数3】
【0031】例えば、図4に示す上から10個のエント
リが空の索引ブロックに格納された場合には、以下の式
(4)に示すようにエントリ移動ファクタが算出され
る。
リが空の索引ブロックに格納された場合には、以下の式
(4)に示すようにエントリ移動ファクタが算出され
る。
【0032】
【数4】
【0033】なお、エントリ移動ファクタが0.752
となっている空き領域のない索引ブロックに対してエン
トリが格納される場合には、新たに作成される索引ブロ
ックには、以下の式(5)に示すように2個のエントリ
が移動されることとなる。
となっている空き領域のない索引ブロックに対してエン
トリが格納される場合には、新たに作成される索引ブロ
ックには、以下の式(5)に示すように2個のエントリ
が移動されることとなる。
【0034】
【数5】
【0035】また、新たに作成された際にj個のエント
リが移動された索引ブロックに対してのエントリ移動フ
ァクタは、例えば、以下のように算出される。まず、空
の索引ブロックのエントリ移動ファクターを初期値”
0”とし、移動されたエントリの中の1つのエントリに
よるエントリ移動ファクタの増加を”0”とする。ま
た、移動されたエントリ中の他のエントリについては、
各エントリによるエントリ移動ファクターの増加を0.
5/(S−1)とする。よって、j個のエントリが移動
された索引ブロックがエントリを格納して、空き領域が
なくなった時点でのエントリ移動ファクターMeは以下
の式(6)で求められる。
リが移動された索引ブロックに対してのエントリ移動フ
ァクタは、例えば、以下のように算出される。まず、空
の索引ブロックのエントリ移動ファクターを初期値”
0”とし、移動されたエントリの中の1つのエントリに
よるエントリ移動ファクタの増加を”0”とする。ま
た、移動されたエントリ中の他のエントリについては、
各エントリによるエントリ移動ファクターの増加を0.
5/(S−1)とする。よって、j個のエントリが移動
された索引ブロックがエントリを格納して、空き領域が
なくなった時点でのエントリ移動ファクターMeは以下
の式(6)で求められる。
【0036】
【数6】
【0037】上記した式(3)及び式(4)によって算
出されるエントリ移動ファクタは、エントリがキーの減
少する傾向で格納されている場合には、”0”に近い値
となり、特にエントリのキーが降順で格納されている場
合には”0”となる。また、エントリがキーの増加する
傾向で格納されている場合には”1”に近い値となり、
特に、エントリが昇順で格納されている場合には”1”
となる。したがって、格納されるエントリのキーの傾向
を予め知らない場合であっても、格納されるエントリの
キーの傾向を把握することができ、上記したエントリ移
動数算出手段4及びエントリ移動手段5による処理によ
って、第1索引ブロック及び第2索引ブロックの空き領
域の配分を、格納されるエントリのキーの傾向に適した
ものとすることができる。
出されるエントリ移動ファクタは、エントリがキーの減
少する傾向で格納されている場合には、”0”に近い値
となり、特にエントリのキーが降順で格納されている場
合には”0”となる。また、エントリがキーの増加する
傾向で格納されている場合には”1”に近い値となり、
特に、エントリが昇順で格納されている場合には”1”
となる。したがって、格納されるエントリのキーの傾向
を予め知らない場合であっても、格納されるエントリの
キーの傾向を把握することができ、上記したエントリ移
動数算出手段4及びエントリ移動手段5による処理によ
って、第1索引ブロック及び第2索引ブロックの空き領
域の配分を、格納されるエントリのキーの傾向に適した
ものとすることができる。
【0038】移動ファクタ管理部9は、移動ファクタ算
出手段8によって算出されたエントリ移動ファクタを索
引ブロック中の移動ファクタ保持領域24に格納する。
また、応用からエントリ移動ファクタの指定があった場
合には、指定されたエントリ移動ファクタをメモリ(図
示せず)に保持する。そして、移動ファクタ管理部9
は、エントリ移動数算出手段5からエントリ移動ファク
タの要求があった場合には、応用によって指定されたエ
ントリ移動ファクタがあれば、当該エントリ移動ファク
タをエントリ移動数算出手段5に渡す一方、応用によっ
て指定されていなければ、第1索引ブロックの移動ファ
クタ保持領域24に保持されたエントリ移動ファクタを
エントリ移動数算出手段5に渡す。
出手段8によって算出されたエントリ移動ファクタを索
引ブロック中の移動ファクタ保持領域24に格納する。
また、応用からエントリ移動ファクタの指定があった場
合には、指定されたエントリ移動ファクタをメモリ(図
示せず)に保持する。そして、移動ファクタ管理部9
は、エントリ移動数算出手段5からエントリ移動ファク
タの要求があった場合には、応用によって指定されたエ
ントリ移動ファクタがあれば、当該エントリ移動ファク
タをエントリ移動数算出手段5に渡す一方、応用によっ
て指定されていなければ、第1索引ブロックの移動ファ
クタ保持領域24に保持されたエントリ移動ファクタを
エントリ移動数算出手段5に渡す。
【0039】上記したように、応用からエントリ移動フ
ァクタの指示を優先的に使用することによって、格納さ
れるエントリについて応用が把握している正確なキーの
傾向(例えば、昇順、降順)に基づいて第1索引ブロッ
クと第2索引ブロックとの空き領域を適切に配分するこ
とができる。
ァクタの指示を優先的に使用することによって、格納さ
れるエントリについて応用が把握している正確なキーの
傾向(例えば、昇順、降順)に基づいて第1索引ブロッ
クと第2索引ブロックとの空き領域を適切に配分するこ
とができる。
【0040】ここで、応用は、エントリがキーの増加傾
向で格納される場合には、エントリ移動ファクタを”
1”に近い値を指定し、特に昇順で格納される場合に
は”1”を指定しており、一方、エントリが減少傾向で
格納される場合には、”0”に近い値を指定し、特に降
順で格納される場合には”0”を指定している。なお、
応用を、格納するエントリのキーの傾向が変化する毎に
エントリ移動ファクタを動的に指定させるようにしても
よい。
向で格納される場合には、エントリ移動ファクタを”
1”に近い値を指定し、特に昇順で格納される場合に
は”1”を指定しており、一方、エントリが減少傾向で
格納される場合には、”0”に近い値を指定し、特に降
順で格納される場合には”0”を指定している。なお、
応用を、格納するエントリのキーの傾向が変化する毎に
エントリ移動ファクタを動的に指定させるようにしても
よい。
【0041】なお、上記した各機能手段はCPUがプロ
グラムに従って処理を実行することにより構成される
が、これら機能手段を独立したハードウエア回路として
構成することもできる。
グラムに従って処理を実行することにより構成される
が、これら機能手段を独立したハードウエア回路として
構成することもできる。
【0042】次に、上記した順編成索引管理装置による
順編成索引管理方法を図3を参照して説明する。応用か
らエントリ入力手段1がエントリを取得すると当該エン
トリを索引ブロック特定手段2に渡す(ステップS
1)。索引ブロック特定手段2は、エントリを受け取る
と、当該エントリ中のキーから格納する対象の第1索引
ブロックを特定し、当該第1索引ブロックを空き領域検
出手段2に通知する(ステップS2)。
順編成索引管理方法を図3を参照して説明する。応用か
らエントリ入力手段1がエントリを取得すると当該エン
トリを索引ブロック特定手段2に渡す(ステップS
1)。索引ブロック特定手段2は、エントリを受け取る
と、当該エントリ中のキーから格納する対象の第1索引
ブロックを特定し、当該第1索引ブロックを空き領域検
出手段2に通知する(ステップS2)。
【0043】通知された空き領域検出手段2は、当該第
1索引ブロックに空き領域があるか否かを検出し(ステ
ップS3)、空き領域がないと検出した場合には、空き
領域がないことを索引ブロック作成手段4に通知し、通
知された索引ブロック作成手段4は、新たな第2索引ブ
ロックを作成する(ステップS4)。
1索引ブロックに空き領域があるか否かを検出し(ステ
ップS3)、空き領域がないと検出した場合には、空き
領域がないことを索引ブロック作成手段4に通知し、通
知された索引ブロック作成手段4は、新たな第2索引ブ
ロックを作成する(ステップS4)。
【0044】新たな第2索引ブロックが作成されると、
エントリ移動数算出手段5が移動ファクタ管理手段9に
エントリ移動ファクタを要求する。要求を受けた移動フ
ァクタ管理手段9は応用から指定されたエントリ移動フ
ァクタがある場合には、当該エントリ移動ファクタをエ
ントリ移動数算出手段に返送する一方、応用から指定が
ない場合には、第1索引ブロックの移動ファクタ保持領
域24に保持されたエントリ移動ファクタをエントリ移
動数算出手段5に返送する(ステップS5、S6、S
7)。
エントリ移動数算出手段5が移動ファクタ管理手段9に
エントリ移動ファクタを要求する。要求を受けた移動フ
ァクタ管理手段9は応用から指定されたエントリ移動フ
ァクタがある場合には、当該エントリ移動ファクタをエ
ントリ移動数算出手段に返送する一方、応用から指定が
ない場合には、第1索引ブロックの移動ファクタ保持領
域24に保持されたエントリ移動ファクタをエントリ移
動数算出手段5に返送する(ステップS5、S6、S
7)。
【0045】エントリ移動ファクタが返送されると、当
該エントリ移動ファクタに基づいてエントリ移動数算出
手段5はエントリ移動数を算出し、結果をエントリ移動
手段6に通知する(ステップS8)。エントリ移動数を
通知されたエントリ移動手段6は、エントリ移動数に対
応するエントリを第1索引ブロックから第2索引ブロッ
クへ移動させ(ステップS9)、さらに、第1索引ブロ
ック及び第2索引ブロックのエントリ数を再設定する。
また、このときに移動ファクタ算出手段8は、エントリ
移動ファクタを算出して索引ブロックに再設定する(ス
テップS10)。
該エントリ移動ファクタに基づいてエントリ移動数算出
手段5はエントリ移動数を算出し、結果をエントリ移動
手段6に通知する(ステップS8)。エントリ移動数を
通知されたエントリ移動手段6は、エントリ移動数に対
応するエントリを第1索引ブロックから第2索引ブロッ
クへ移動させ(ステップS9)、さらに、第1索引ブロ
ック及び第2索引ブロックのエントリ数を再設定する。
また、このときに移動ファクタ算出手段8は、エントリ
移動ファクタを算出して索引ブロックに再設定する(ス
テップS10)。
【0046】次いで、入力エントリ格納手段7が応用か
ら入力されたエントリのキーに基づいて、格納する索引
ブロックを特定するとともに索引ブロック内の位置を特
定し、該当する位置にエントリを格納し(ステップS1
1)、格納した索引ブロックのエントリ数を再設定す
る。また、このときに移動ファクタ算出手段8は、エン
トリ移動ファクタを算出して索引ブロックに再設定する
(ステップS12)。
ら入力されたエントリのキーに基づいて、格納する索引
ブロックを特定するとともに索引ブロック内の位置を特
定し、該当する位置にエントリを格納し(ステップS1
1)、格納した索引ブロックのエントリ数を再設定す
る。また、このときに移動ファクタ算出手段8は、エン
トリ移動ファクタを算出して索引ブロックに再設定する
(ステップS12)。
【0047】なお、空き領域検出手段3によって入力さ
れたエントリを格納する対象の索引ブロックに空き領域
あると検出された場合には、入力エントリ格納手段7が
当該索引ブロック中の入力エントリのキーに応じた位置
に入力エントリを格納し(S11)、索引ブロック内の
エントリ数を再設定する。また、このときに移動ファク
タ算出手段8は、エントリ移動ファクタを算出して索引
ブロックに再設定する(ステップS12)。
れたエントリを格納する対象の索引ブロックに空き領域
あると検出された場合には、入力エントリ格納手段7が
当該索引ブロック中の入力エントリのキーに応じた位置
に入力エントリを格納し(S11)、索引ブロック内の
エントリ数を再設定する。また、このときに移動ファク
タ算出手段8は、エントリ移動ファクタを算出して索引
ブロックに再設定する(ステップS12)。
【0048】次に、上記した本発明に係る順編成索引管
理方法によって、図4に示すキーとバリューとの組から
なるエントリ群を順次格納した場合の順編成索引の記憶
効率を説明する。なお、順編成索引は予め空の索引ブロ
ックを一つ持っているものとし、索引ブロックには10
個のエントリを格納することができるものとする。ま
た、応用は13番目以降のエントリがキーの昇順となっ
ていることを予め把握しているものとする。
理方法によって、図4に示すキーとバリューとの組から
なるエントリ群を順次格納した場合の順編成索引の記憶
効率を説明する。なお、順編成索引は予め空の索引ブロ
ックを一つ持っているものとし、索引ブロックには10
個のエントリを格納することができるものとする。ま
た、応用は13番目以降のエントリがキーの昇順となっ
ていることを予め把握しているものとする。
【0049】16番目までのエントリを格納した後の順
編成索引は図5に示す状態となり、この場合は20個の
エントリ格納可能領域に対して16個のエントリが格納
されており、順編成索引の記憶効率は16/20=0.
8となる。さらに26番目までのエントリを格納する場
合には、キーの昇順でエントリが格納されることを応用
が予め把握しているので、応用の指示によって順編成索
引に対してエントリ移動ファクタを”1”に設定するこ
とができ、新たな索引ブロックを作成する際には、当該
新たな索引ブロックにはエントリを移動させず、キーが
昇順となっているエントリを効率よく格納することがで
きる。この結果、26番目までのエントリを格納した後
の順編成索引は図6に示す状態となり、順編成索引の記
憶効率は26/30=0.87となる。
編成索引は図5に示す状態となり、この場合は20個の
エントリ格納可能領域に対して16個のエントリが格納
されており、順編成索引の記憶効率は16/20=0.
8となる。さらに26番目までのエントリを格納する場
合には、キーの昇順でエントリが格納されることを応用
が予め把握しているので、応用の指示によって順編成索
引に対してエントリ移動ファクタを”1”に設定するこ
とができ、新たな索引ブロックを作成する際には、当該
新たな索引ブロックにはエントリを移動させず、キーが
昇順となっているエントリを効率よく格納することがで
きる。この結果、26番目までのエントリを格納した後
の順編成索引は図6に示す状態となり、順編成索引の記
憶効率は26/30=0.87となる。
【0050】なお、上記したように応用からエントリ移
動ファクタの指示がない場合でも、エントリの格納され
る傾向に基づいてエントリを格納しきれない索引ブロッ
クに対して算出されるエントリ移動ファクタは0.94
となるので、新たな索引ブロックへ移動するエントリの
数は1個だけであり、多くの無駄な空き領域が発生する
ことが防げ、26番目までエントリを格納した後の順編
成索引の記憶効率は26/30=0.87となってい
る。
動ファクタの指示がない場合でも、エントリの格納され
る傾向に基づいてエントリを格納しきれない索引ブロッ
クに対して算出されるエントリ移動ファクタは0.94
となるので、新たな索引ブロックへ移動するエントリの
数は1個だけであり、多くの無駄な空き領域が発生する
ことが防げ、26番目までエントリを格納した後の順編
成索引の記憶効率は26/30=0.87となってい
る。
【0051】これに対して、上記同様なエントリ群を文
献1に記載された方法で格納すると、新たな索引ブロッ
クを作成するときには、エントリのキーが索引ブロック
中で最大でなければ、エントリを格納しきれない索引ブ
ロック及び新たに作成された索引ブロックのいずれの索
引ブロックにも、常に50%の空き領域ができてしま
う。したがって、16番目までのエントリを格納した後
は図8に示す状態となってしまい、順編成索引の記憶効
率は16/30=0.53となって、記憶効率が悪い。
また、26番目までのエントリを格納した後でも、順編
成索引の記憶効率は26/40=0.65となってお
り、記憶効率が悪い。
献1に記載された方法で格納すると、新たな索引ブロッ
クを作成するときには、エントリのキーが索引ブロック
中で最大でなければ、エントリを格納しきれない索引ブ
ロック及び新たに作成された索引ブロックのいずれの索
引ブロックにも、常に50%の空き領域ができてしま
う。したがって、16番目までのエントリを格納した後
は図8に示す状態となってしまい、順編成索引の記憶効
率は16/30=0.53となって、記憶効率が悪い。
また、26番目までのエントリを格納した後でも、順編
成索引の記憶効率は26/40=0.65となってお
り、記憶効率が悪い。
【0052】上記したように、順編成索引を拡張する際
に、キーの傾向に応じてエントリの移動を行うことがで
き、第1索引ブロック及び第2索引ブロックの空き領域
を格納されるエントリに適した配分に変えることができ
る。したがって、後続するエントリが格納された場合に
は、無駄な空き領域が残ってしまうといった状況を防
げ、順編成索引の記憶効率を向上することができる。
に、キーの傾向に応じてエントリの移動を行うことがで
き、第1索引ブロック及び第2索引ブロックの空き領域
を格納されるエントリに適した配分に変えることができ
る。したがって、後続するエントリが格納された場合に
は、無駄な空き領域が残ってしまうといった状況を防
げ、順編成索引の記憶効率を向上することができる。
【0053】なお、エントリ移動ファクタは上記に限ら
ず、エントリの移動数そのものでもよく、要は、第1索
引ブロックから第2索引ブロックへ移動させるエントリ
の数を規定するものであればよい。また、上記した実施
例では、順編成索引のブロック22内にエントリ数保持
領域23を備えて、当該索引ブロック中のエントリ数を
把握していたが、エントリ数保持領域23を索引ブロッ
ク22内に備えずに、例えば、索引ブロックに格納され
ているデータ量に基づいてエントリ数を算出して把握す
るようにしてもよい。また、上記した実施例では応用が
順編成索引に対してエントリ移動ファクタを指定してい
たが、各索引ブロック毎にエントリ移動ファクタを指定
するようにしてもよい。
ず、エントリの移動数そのものでもよく、要は、第1索
引ブロックから第2索引ブロックへ移動させるエントリ
の数を規定するものであればよい。また、上記した実施
例では、順編成索引のブロック22内にエントリ数保持
領域23を備えて、当該索引ブロック中のエントリ数を
把握していたが、エントリ数保持領域23を索引ブロッ
ク22内に備えずに、例えば、索引ブロックに格納され
ているデータ量に基づいてエントリ数を算出して把握す
るようにしてもよい。また、上記した実施例では応用が
順編成索引に対してエントリ移動ファクタを指定してい
たが、各索引ブロック毎にエントリ移動ファクタを指定
するようにしてもよい。
【0054】また、上記した実施例では、エントリが格
納される傾向に基づいて各索引ブロック毎にエントリ移
動ファクタを指定して、各索引ブロック毎に適した空き
領域を配分させるようにしていたが、順編成索引全体に
対してエントリ移動ファクタを指定するようにしてもよ
い。また、上記した実施例では、エントリが格納される
傾向に基づいてエントリ移動ファクタを指定するととも
に、応用がエントリ移動ファクタを指定できるようにし
ていたが、いずれか一方のエントリ移動ファクタだけを
指定するようにしてもよい。
納される傾向に基づいて各索引ブロック毎にエントリ移
動ファクタを指定して、各索引ブロック毎に適した空き
領域を配分させるようにしていたが、順編成索引全体に
対してエントリ移動ファクタを指定するようにしてもよ
い。また、上記した実施例では、エントリが格納される
傾向に基づいてエントリ移動ファクタを指定するととも
に、応用がエントリ移動ファクタを指定できるようにし
ていたが、いずれか一方のエントリ移動ファクタだけを
指定するようにしてもよい。
【0055】なお、上記した実施例では、エントリを索
引ブロックに格納する際に、実際に索引ブロック中に空
き領域があるか否かを検出し、空き領域がないと検出し
た場合に順編成索引の拡張処理を行っていたが、格納す
るエントリを格納するに足る空き領域が索引ブロックに
あるか否かを予め検出し、空き領域が足りないと検出し
た場合に順編成索引の拡張処理を行うようにしてもよ
い。なお、上記した実施例では、B+-Treeによる順編成
索引を例にとって説明したが、B+-Treeによる順編成索
引に限らず、複数のエントリを格納する索引ブロックで
構成された順編成索引であれば本発明を適用することが
できる。
引ブロックに格納する際に、実際に索引ブロック中に空
き領域があるか否かを検出し、空き領域がないと検出し
た場合に順編成索引の拡張処理を行っていたが、格納す
るエントリを格納するに足る空き領域が索引ブロックに
あるか否かを予め検出し、空き領域が足りないと検出し
た場合に順編成索引の拡張処理を行うようにしてもよ
い。なお、上記した実施例では、B+-Treeによる順編成
索引を例にとって説明したが、B+-Treeによる順編成索
引に限らず、複数のエントリを格納する索引ブロックで
構成された順編成索引であれば本発明を適用することが
できる。
【0056】
【発明の効果】以上説明したように、本発明の順編成索
引管理方法によると、エントリ移動ファクタを格納する
エントリに関するキーの傾向に応じて指定し、当該エン
トリ移動ファクタに基づいて第1索引ブロックから第2
索引ブロックへ移動するエントリ数を決定するようにし
たために、第1索引ブロックと第2索引ブロックとの空
き領域を格納されるエントリに適した配分にすることが
できる。したがって、格納されるエントリのキーの傾向
が様々な場合であっても、空き領域の発生を防ぎ、効率
よく順編成索引へ格納することができる。さらに、順編
成索引の記憶効率がよいために、当該順編成索引を使用
した検索、格納等といった処理の効率を向上することが
できる。
引管理方法によると、エントリ移動ファクタを格納する
エントリに関するキーの傾向に応じて指定し、当該エン
トリ移動ファクタに基づいて第1索引ブロックから第2
索引ブロックへ移動するエントリ数を決定するようにし
たために、第1索引ブロックと第2索引ブロックとの空
き領域を格納されるエントリに適した配分にすることが
できる。したがって、格納されるエントリのキーの傾向
が様々な場合であっても、空き領域の発生を防ぎ、効率
よく順編成索引へ格納することができる。さらに、順編
成索引の記憶効率がよいために、当該順編成索引を使用
した検索、格納等といった処理の効率を向上することが
できる。
【図1】 本発明に係る順編成索引管理方法を実施する
順編成索引管理装置の構成図である。
順編成索引管理装置の構成図である。
【図2】 本発明に係る順編成索引管理方法で管理する
順編成索引の構成図である。
順編成索引の構成図である。
【図3】 本発明に係る順編成索引管理方法を説明する
フローチャートである。
フローチャートである。
【図4】 エントリを格納される順番で並べた図であ
る。
る。
【図5】 本発明に係る順編成索引管理方法によって1
6番目までのエントリを格納した時の順編成索引の状態
を示す図である。
6番目までのエントリを格納した時の順編成索引の状態
を示す図である。
【図6】 本発明に係る順編成索引管理方法によって2
6番目までのエントリを格納した時の順編成索引の状態
を示す図である。
6番目までのエントリを格納した時の順編成索引の状態
を示す図である。
【図7】 従来例における順編成索引の構成図である。
【図8】 従来の方法により16番目までのエントリを
格納した時の順編成索引の状態を示す図である。
格納した時の順編成索引の状態を示す図である。
1・・エントリ入力手段、 2・・索引ブロック特定
手段、3・・空き領域検出手段、 4・・索引ブロッ
ク作成手段、5・・エントリ移動数算出手段、6・・エ
ントリ移動手段、7・・入力エントリ格納手段、 8・
・移動ファクタ算出手段、9・・移動ファクタ管理手
段、22・・エントリ数保持領域、 24・・移動ファ
クタ保持領域、
手段、3・・空き領域検出手段、 4・・索引ブロッ
ク作成手段、5・・エントリ移動数算出手段、6・・エ
ントリ移動手段、7・・入力エントリ格納手段、 8・
・移動ファクタ算出手段、9・・移動ファクタ管理手
段、22・・エントリ数保持領域、 24・・移動ファ
クタ保持領域、
Claims (5)
- 【請求項1】索引ブロックによって構成された順編成索
引を管理する順編成索引管理方法において、 複数の索引ブロック間のエントリの移動数を規定するエ
ントリ移動ファクタを、格納されるエントリに関するキ
ーの傾向に応じて順編成索引に対して指定し、 エントリを格納する際に第1索引ブロックに当該エント
リを格納するに足る空き領域がない場合には、新たな第
2索引ブロックを作成し、前記エントリ移動ファクタに
基づいて第1索引ブロックから第2索引ブロックへ移動
させるエントリ移動数を決定し、当該エントリ移動数の
エントリを第1索引ブロックから第2索引ブロックへ移
動させることを特徴とする順編成索引管理方法。 - 【請求項2】索引ブロックによって構成された順編成索
引を管理する順編成索引管理方法において、 複数の索引ブロック間のエントリの移動数を規定するエ
ントリ移動ファクタを、格納されるエントリに関するキ
ーの傾向に応じて索引ブロック毎に対して指定し、 エントリを格納する際に第1索引ブロックに当該エント
リを格納するに足る空き領域がない場合には、新たな第
2索引ブロックを作成し、前記エントリ移動ファクタに
基づいて第1索引ブロックから第2索引ブロックへ移動
させるエントリ移動数を決定し、当該エントリ移動数の
エントリを第1索引ブロックから第2索引ブロックへ移
動させることを特徴とする順編成索引管理方法。 - 【請求項3】請求項1または請求項2に記載した順編成
索引管理方法において、前記エントリ移動ファクタを応
用が指定することを特徴とする順編成索引管理方法。 - 【請求項4】請求項1または請求項2に記載した順編成
索引管理方法において、エントリが格納される傾向に基
づいて前記エントリ移動ファクタを指定することを特徴
とする順編成索引管理方法。 - 【請求項5】請求項1または請求項2に記載した順編成
索引管理方法において、前記エントリ移動ファクタとし
て複数のエントリ移動ファクタが指定され、前記複数の
エントリ移動ファクタ中に応用によって指定されている
エントリ移動ファクタがある場合には、当該応用によっ
て指定されたエントリ移動ファクタに基づいてエントリ
移動数を決定することを特徴とする順編成索引管理方
法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8298031A JPH10124363A (ja) | 1996-10-22 | 1996-10-22 | 順編成索引管理方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8298031A JPH10124363A (ja) | 1996-10-22 | 1996-10-22 | 順編成索引管理方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10124363A true JPH10124363A (ja) | 1998-05-15 |
Family
ID=17854231
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8298031A Pending JPH10124363A (ja) | 1996-10-22 | 1996-10-22 | 順編成索引管理方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10124363A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008123426A (ja) * | 2006-11-15 | 2008-05-29 | Hitachi Ltd | インデックス処理方法及び計算機システム |
| JP2012099133A (ja) * | 2011-12-27 | 2012-05-24 | Hitachi Ltd | インデックス処理方法及び計算機システム |
| JP2014520323A (ja) * | 2011-06-08 | 2014-08-21 | ネイバー ビジネス プラットフォーム コーポレーション | 累積移動平均に基づく多重検索ツリーのノードを分割する方法および装置 |
-
1996
- 1996-10-22 JP JP8298031A patent/JPH10124363A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008123426A (ja) * | 2006-11-15 | 2008-05-29 | Hitachi Ltd | インデックス処理方法及び計算機システム |
| JP2014520323A (ja) * | 2011-06-08 | 2014-08-21 | ネイバー ビジネス プラットフォーム コーポレーション | 累積移動平均に基づく多重検索ツリーのノードを分割する方法および装置 |
| JP2012099133A (ja) * | 2011-12-27 | 2012-05-24 | Hitachi Ltd | インデックス処理方法及び計算機システム |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5542087A (en) | Linear hashing for distributed records | |
| JP2745794B2 (ja) | 文書処理装置 | |
| Cornell et al. | An effective approach to vertical partitioning for physical design of relational databases | |
| EP4524770A1 (en) | Graph data query method, apparatus and device | |
| JPH0546447A (ja) | 空き領域検索方法 | |
| Bender et al. | Exponential structures for efficient cache-oblivious algorithms | |
| US8275968B2 (en) | Managing unallocated storage space using extents and bitmaps | |
| US6269363B1 (en) | Method of accessing data using approximate data structures by relaxing the operations that define same | |
| CN115495248B (zh) | 一种推理卡的内存分配方法、装置、电子设备及存储介质 | |
| JPH10124363A (ja) | 順編成索引管理方法 | |
| US12253974B2 (en) | Metadata processing method and apparatus, and a computer-readable storage medium | |
| CN110275813B (zh) | 一种数据处理方法、装置、设备及计算机可读存储介质 | |
| JP2001022621A (ja) | 多次元データベース管理システム | |
| WO2024235197A1 (zh) | 用于文件的操作方法、电子设备及存储介质 | |
| CN111090653A (zh) | 一种数据缓存方法、装置及相关产品 | |
| JPH08278894A (ja) | ハッシュ法による情報処理方法および情報処理装置 | |
| JPH05233390A (ja) | 分散データベースのデータ分割管理方式 | |
| JP3728820B2 (ja) | 描画処理装置 | |
| CN110377237A (zh) | 一种多数据池选择方法、系统及装置 | |
| JPH0581102A (ja) | テーブル管理方式 | |
| US12056054B2 (en) | Dynamic growth of data caches using background processes for hash bucket growth | |
| JP3792194B2 (ja) | メモリ管理システム | |
| JP3823497B2 (ja) | 資源の優先管理システム | |
| JP2689928B2 (ja) | データベースシステムにおけるデータ格納装置 | |
| JP3127634B2 (ja) | 制約緩和推論方法 |