JPH02129763A - 索引検索方式 - Google Patents
索引検索方式Info
- Publication number
- JPH02129763A JPH02129763A JP63284181A JP28418188A JPH02129763A JP H02129763 A JPH02129763 A JP H02129763A JP 63284181 A JP63284181 A JP 63284181A JP 28418188 A JP28418188 A JP 28418188A JP H02129763 A JPH02129763 A JP H02129763A
- Authority
- JP
- Japan
- Prior art keywords
- block
- key value
- lowest
- pointer information
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 27
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は索引ファイルを用いたデータレコードキ★索シ
ステムにおける索引検索方式に関するものである。
ステムにおける索引検索方式に関するものである。
多数のデータレコードを格納しているデータファイルか
ら所望のデータレコードを検索する場合、の方式として
、予めデータファイルに対し、データレコード内のキー
値とそのデータレコードの格納アドレスを示すポインタ
情報とから構成される索引レコードをキー値順に並べて
格納した索引ファイルを作成しておき、人力された検索
条件に従って索引ファイルの検索を行い、索引レコード
からポインタ情報を得、このポインタ情報を使ってデー
タファイルの実際のデータレコードにアクセスする方式
が一般的に用いられている。
ら所望のデータレコードを検索する場合、の方式として
、予めデータファイルに対し、データレコード内のキー
値とそのデータレコードの格納アドレスを示すポインタ
情報とから構成される索引レコードをキー値順に並べて
格納した索引ファイルを作成しておき、人力された検索
条件に従って索引ファイルの検索を行い、索引レコード
からポインタ情報を得、このポインタ情報を使ってデー
タファイルの実際のデータレコードにアクセスする方式
が一般的に用いられている。
第3図は従来の索引検索方式の構成図を示したものであ
り、lが上述した索引ファイルである。
り、lが上述した索引ファイルである。
索引ファイル1は複数のブロックから構成され、最上位
、上位、最下位というようにブロックが階層的に配置さ
れている。第2図は索引ファイルの例を示したものであ
り、この例では、管理情報lO1と、最上位のブロック
(最上位ブロック)102と、上位のブロック(上位ブ
ロック)103〜105と、最下位のブロック(最下位
ブロック)106〜111とから構成されている。なお
、第2図において、矢印を伴った実線は次方向(NEX
T)ポインタによる論理的なリンクを、破線は前方向(
PRIOR)ポインタによる論理的なリンクを、二重線
は下位のブロックへのポインタによる論理的なリンクを
それぞれ示している。すなわち、この例では、データレ
コード内のキー値として“3′〜177”までを扱って
おり、各々のキー値とそのキー値に対応するデータレコ
ードの格納アドレスを示すポインタ情44!(P01〜
P14)とから構成される索引レコードがキー値の大小
の順に最下位ブロック106〜111に格納され、上位
ブロック103〜105は最下位ブロック106〜11
1のそれぞれに格納された最大のキー値と各最下位ブロ
ックへのポインタとを管理し、最上位ブロック102は
上位ブロック103〜105のそれぞれで管理している
最大のキー値と各上位ブロックへのポインタとを更に管
理している。
、上位、最下位というようにブロックが階層的に配置さ
れている。第2図は索引ファイルの例を示したものであ
り、この例では、管理情報lO1と、最上位のブロック
(最上位ブロック)102と、上位のブロック(上位ブ
ロック)103〜105と、最下位のブロック(最下位
ブロック)106〜111とから構成されている。なお
、第2図において、矢印を伴った実線は次方向(NEX
T)ポインタによる論理的なリンクを、破線は前方向(
PRIOR)ポインタによる論理的なリンクを、二重線
は下位のブロックへのポインタによる論理的なリンクを
それぞれ示している。すなわち、この例では、データレ
コード内のキー値として“3′〜177”までを扱って
おり、各々のキー値とそのキー値に対応するデータレコ
ードの格納アドレスを示すポインタ情44!(P01〜
P14)とから構成される索引レコードがキー値の大小
の順に最下位ブロック106〜111に格納され、上位
ブロック103〜105は最下位ブロック106〜11
1のそれぞれに格納された最大のキー値と各最下位ブロ
ックへのポインタとを管理し、最上位ブロック102は
上位ブロック103〜105のそれぞれで管理している
最大のキー値と各上位ブロックへのポインタとを更に管
理している。
以下、第3図に示した従来の索引検索方式の動作を、第
2図の索引ファイルの例を用いて説明する。なお、第3
図において、矢印を伴った実線は制御の流れを、破線は
データの流れをそれぞれ示している。
2図の索引ファイルの例を用いて説明する。なお、第3
図において、矢印を伴った実線は制御の流れを、破線は
データの流れをそれぞれ示している。
先ず、検索条件入力手段2によって検索条件(例えば2
4≦X≦45)が入力されると、検索条件解析手段3が
解析を行い、解析結果として開始キー値(“24”)と
終了キー値(45”)とを解析結果記憶手段4に記憶す
る。
4≦X≦45)が入力されると、検索条件解析手段3が
解析を行い、解析結果として開始キー値(“24”)と
終了キー値(45”)とを解析結果記憶手段4に記憶す
る。
次いで、開始ブロック取得手段5は解析結果記憶手段4
に記憶されている開始キー値(“24”)を用いて、索
引ファイル1内を検索するように索引検索手段6に対し
て指示する。
に記憶されている開始キー値(“24”)を用いて、索
引ファイル1内を検索するように索引検索手段6に対し
て指示する。
索引検索手段6は索引ファイルlの管理情報101から
各ブロックのポインタをたどり、開始キー値(“24”
)を範囲内に含む最下位ブロック(108)を検索し、
読み込んだ最下位ブロック(108)を開始ブロック取
得手段5に渡す。
各ブロックのポインタをたどり、開始キー値(“24”
)を範囲内に含む最下位ブロック(108)を検索し、
読み込んだ最下位ブロック(108)を開始ブロック取
得手段5に渡す。
次いで、終了ブロック判定手段9は解析結果記憶手段4
に記憶されている終了キー値(°45“)を用い、開始
ブロック取得手段5が得た最下位ブロック(10B)内
に終了キー値(“45”)が含まれているか否かを判定
する。括弧内に記載した例の場合、終了ブロック判定手
段9は含まれていないと判定し、処理をポインタ情報取
得手段13に移す。
に記憶されている終了キー値(°45“)を用い、開始
ブロック取得手段5が得た最下位ブロック(10B)内
に終了キー値(“45”)が含まれているか否かを判定
する。括弧内に記載した例の場合、終了ブロック判定手
段9は含まれていないと判定し、処理をポインタ情報取
得手段13に移す。
次いで、ポインタ情報取得手段13はその最下位ブロッ
ク(10B)から必要なポインタ情報、すなわち開始キ
ー値(“24”)以上のキー値(“25”)に対するポ
インタ情報(PO7)を取得してポインタ情軸記憶手段
11に記憶する。
ク(10B)から必要なポインタ情報、すなわち開始キ
ー値(“24”)以上のキー値(“25”)に対するポ
インタ情報(PO7)を取得してポインタ情軸記憶手段
11に記憶する。
次いで、次処理ブロック取得手段14はその最下位ブロ
ック(108)の次方向ポインタから次に処理すべき最
下位ブロック(109)を決定し、次処理ブロック読み
込み手段16に対してその最下位ブロック(109)の
読み込み指示を行う。
ック(108)の次方向ポインタから次に処理すべき最
下位ブロック(109)を決定し、次処理ブロック読み
込み手段16に対してその最下位ブロック(109)の
読み込み指示を行う。
次処理ブロック読み込み手段16は索引ファイル1に対
して指示された最下位ブロック(109)の読み込み動
作を行い、次処理ブロック取得手段14は次に処理すべ
き最下位ブロック(109)を得る。
して指示された最下位ブロック(109)の読み込み動
作を行い、次処理ブロック取得手段14は次に処理すべ
き最下位ブロック(109)を得る。
次いで、終了ブロック判定手段9は再び解析結果記憶手
段4に記憶されている終了キー値(“45″)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
09)内に終了キー値(“45“)が含まれているか否
かを判定する。括弧内に記載した例の場合、終了ブロッ
ク判定手段9は再び含まれていないと判定し、処理をポ
インタ情報取得手段13に移す。
段4に記憶されている終了キー値(“45″)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
09)内に終了キー値(“45“)が含まれているか否
かを判定する。括弧内に記載した例の場合、終了ブロッ
ク判定手段9は再び含まれていないと判定し、処理をポ
インタ情報取得手段13に移す。
次いで、ポインタ情報取得手段13はその最下位ブロッ
ク(109)から必要なポインタ情報、すなわち全ての
キー値(“31″、136”)に対するポインタ情報(
POS、PO9)を取得してポインタ情報記憶手段11
に記憶する。
ク(109)から必要なポインタ情報、すなわち全ての
キー値(“31″、136”)に対するポインタ情報(
POS、PO9)を取得してポインタ情報記憶手段11
に記憶する。
次いで、次処理ブロック取得手段14はその最下位ブロ
ック(109)の次方向ポインタから次に処理すべき最
下位ブロック(110)を決定し、次処理ブロック読み
込み手段16に対してその最下位ブロック(110)の
読み込み指示を行う。
ック(109)の次方向ポインタから次に処理すべき最
下位ブロック(110)を決定し、次処理ブロック読み
込み手段16に対してその最下位ブロック(110)の
読み込み指示を行う。
次処理ブロック読み込み手段16は索引ファイルlに対
して指示された最下位ブロック(110)の読み込み動
作を行い、次処理ブロック取得手段14は次に処理すべ
き最下位ブロック(110)を得る。
して指示された最下位ブロック(110)の読み込み動
作を行い、次処理ブロック取得手段14は次に処理すべ
き最下位ブロック(110)を得る。
次いで、終了ブロック判定手段9は再び解析結果記憶手
段4に記憶されている終了キー値(“45”)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
10)内に終了キー値じ45″)が含まれているか否か
を判定する。括弧内に記載した例の場合、終了ブロック
判定手段9は含まれていると判定する。
段4に記憶されている終了キー値(“45”)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
10)内に終了キー値じ45″)が含まれているか否か
を判定する。括弧内に記載した例の場合、終了ブロック
判定手段9は含まれていると判定する。
終了ブロック判定手段9が終了キー値が含まれていると
判定すると、制御はポインタ情報取得手段10に移り、
ポインタ情報取得手段10は取得した最下位ブロック(
110)内の必要なポインタ情報、すなわち終了キー値
(“45”)以下のキー値(“40”)に対するポイン
タ情報(PLO)を取得し、ポインタ情報記憶手段11
に記憶する。
判定すると、制御はポインタ情報取得手段10に移り、
ポインタ情報取得手段10は取得した最下位ブロック(
110)内の必要なポインタ情報、すなわち終了キー値
(“45”)以下のキー値(“40”)に対するポイン
タ情報(PLO)を取得し、ポインタ情報記憶手段11
に記憶する。
しかして、上述の動作により得られ、ポインタ情報記憶
手段11に記憶されたポインタ情報(P7〜P10)を
用いてデータファイル(図示せず)に対してアクセスす
ることにより、検索条件(24≦X≦45)を満たすデ
ータレコードを得ることができる。
手段11に記憶されたポインタ情報(P7〜P10)を
用いてデータファイル(図示せず)に対してアクセスす
ることにより、検索条件(24≦X≦45)を満たすデ
ータレコードを得ることができる。
従来の索引検索方式は上述したように構成され動作する
ものであり、データファイルに対して直接に検索を行う
場合に比して非常に効率よく検索が行えるものであった
が、索引ファイル1の最下位ブロックを読み込む処理と
、最下位ブロック内の索引レコードからデータレコード
を指すポインタ情報を取り出す処理とを順次に行ってい
たため、処理時間の短縮化が困難であり、時間的な処理
効率が上がらないという欠点があった0例えば、最下位
ブロックを読み込む処理時間をTiとし、ポインタ情報
を取り出す処理時間をTpとすると、他の処理時間を無
視すると、合計してTi+Tpの処理時間を要するもの
であり、これ以下には短縮できないものであった。
ものであり、データファイルに対して直接に検索を行う
場合に比して非常に効率よく検索が行えるものであった
が、索引ファイル1の最下位ブロックを読み込む処理と
、最下位ブロック内の索引レコードからデータレコード
を指すポインタ情報を取り出す処理とを順次に行ってい
たため、処理時間の短縮化が困難であり、時間的な処理
効率が上がらないという欠点があった0例えば、最下位
ブロックを読み込む処理時間をTiとし、ポインタ情報
を取り出す処理時間をTpとすると、他の処理時間を無
視すると、合計してTi+Tpの処理時間を要するもの
であり、これ以下には短縮できないものであった。
本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、最下位ブロックを読み込む処理とポ
インタ情報を取り出す処理とを並列動作させることによ
り、処理時間を短縮することのできる索引検索方式を提
供することにある。
的とするところは、最下位ブロックを読み込む処理とポ
インタ情報を取り出す処理とを並列動作させることによ
り、処理時間を短縮することのできる索引検索方式を提
供することにある。
本発明は上記の目的を達成するため、入力した検索条件
から検索の開始キー値と終了キー値とを解析し、階層的
な複数のブロックから構成される索引ファイルから前記
開始キー値を含む最下位ブロックを検索して読み込み、
前記開始キー値から前記終了キー値までのキー値に対応
するデータレコードのポインタ情報を得、前記終了キー
値を含む最下位ブロックまで順次読み込みを行ってポイ
ンタ情報の取得を繰り返す索引検索方式において、前記
の読み込んだ最下位ブロックに終了キー値が含まれてい
るか否かの判断処理および最下位ブロックからポインタ
情報を得る処理と並行して次に必要となる複数の最下位
ブロックの読み込みを行わせるブロック先読み一括要求
手段と、要求した複数の最下位ブロックが読み込まれる
まで処理を待ち合わせると共に、未処理の最下位ブロッ
クを保持する読み込み完了待ち合わせ手段とを備えるよ
うにしている。
から検索の開始キー値と終了キー値とを解析し、階層的
な複数のブロックから構成される索引ファイルから前記
開始キー値を含む最下位ブロックを検索して読み込み、
前記開始キー値から前記終了キー値までのキー値に対応
するデータレコードのポインタ情報を得、前記終了キー
値を含む最下位ブロックまで順次読み込みを行ってポイ
ンタ情報の取得を繰り返す索引検索方式において、前記
の読み込んだ最下位ブロックに終了キー値が含まれてい
るか否かの判断処理および最下位ブロックからポインタ
情報を得る処理と並行して次に必要となる複数の最下位
ブロックの読み込みを行わせるブロック先読み一括要求
手段と、要求した複数の最下位ブロックが読み込まれる
まで処理を待ち合わせると共に、未処理の最下位ブロッ
クを保持する読み込み完了待ち合わせ手段とを備えるよ
うにしている。
本発明の索引検索方式にあっては、入力した検索条件か
ら検索の開始キー値と終了キー値とを解析し、階層的な
複数のブロックから構成される索引ファイルから前記開
始キー値を含む最下位ブロックを検索して読み込み、前
記開始キー値から前記終了キー値までのキー値に対応す
るデータレコードのポインタ情報を得、前記終了キー値
を含む最下位ブロックまで順次読み込みを行ってポイン
タ情報の取得を繰り返すという基本的な動作に加え、前
記の読み込んだ最下位ブロックに終了キー値が含まれて
いるか否かの判断処理および最下位ブロックからポイン
タ情報を得る処理と並行して、次に必要となる複数の最
下位ブロックの読み込みの要求がブロック先読み一括要
求手段により行われ、読み込み完了待ち合わせ手段によ
り、要求した複数の最下位ブロックが読み込まれるまで
処理が待ち合わされると共に未処理の最下位ブロックが
保持される。
ら検索の開始キー値と終了キー値とを解析し、階層的な
複数のブロックから構成される索引ファイルから前記開
始キー値を含む最下位ブロックを検索して読み込み、前
記開始キー値から前記終了キー値までのキー値に対応す
るデータレコードのポインタ情報を得、前記終了キー値
を含む最下位ブロックまで順次読み込みを行ってポイン
タ情報の取得を繰り返すという基本的な動作に加え、前
記の読み込んだ最下位ブロックに終了キー値が含まれて
いるか否かの判断処理および最下位ブロックからポイン
タ情報を得る処理と並行して、次に必要となる複数の最
下位ブロックの読み込みの要求がブロック先読み一括要
求手段により行われ、読み込み完了待ち合わせ手段によ
り、要求した複数の最下位ブロックが読み込まれるまで
処理が待ち合わされると共に未処理の最下位ブロックが
保持される。
以下、本発明の実施例につき図面を参照して説明する。
第1図は本発明の索引検索方式の一実施例を示す構成図
であり、本実施例は、索引ファイル1と、検索条件入力
手段2と、検索条件解析手段3と、解析結果記憶手段4
と、開始プロ7り取得手段5と、索引検索手段6と、処
理ブロック−括決定手段7と、ブロック先読み一括要求
手段8と、終了ブロック判定手段9と、ポインタ情報取
得手段10と、ポインタ情報記憶手段11と、最終先読
みブロック判定手段12と、ポインタ情報取得手段13
と、次処理ブロック取得手段14と、読み込み完了待ち
合わせ手段15とから構成されている。
であり、本実施例は、索引ファイル1と、検索条件入力
手段2と、検索条件解析手段3と、解析結果記憶手段4
と、開始プロ7り取得手段5と、索引検索手段6と、処
理ブロック−括決定手段7と、ブロック先読み一括要求
手段8と、終了ブロック判定手段9と、ポインタ情報取
得手段10と、ポインタ情報記憶手段11と、最終先読
みブロック判定手段12と、ポインタ情報取得手段13
と、次処理ブロック取得手段14と、読み込み完了待ち
合わせ手段15とから構成されている。
第3図に示した従来例と異なる構成は、処理ブロック−
括決定手段7.ブロック先読み一括要求手段8.最終先
読みブロック判定手段12.読み込み完了待ち合わせ手
段15である。
括決定手段7.ブロック先読み一括要求手段8.最終先
読みブロック判定手段12.読み込み完了待ち合わせ手
段15である。
なお、各手段の機能は次の通りである。
索引ファイル1;複数のブロックから構成され、最上位
、上位、最下位というようにブロックが階、層的に配置
され、最下位のブロック(最下位ブロック)に、データ
レコード内のキー値とそのデータレコー ドの格納アド
レスを示すポインタ情報とから構成される索引レコード
をキー値順に並べて格納・保持する機能。
、上位、最下位というようにブロックが階、層的に配置
され、最下位のブロック(最下位ブロック)に、データ
レコード内のキー値とそのデータレコー ドの格納アド
レスを示すポインタ情報とから構成される索引レコード
をキー値順に並べて格納・保持する機能。
検索条件入力手段2;検索条件を入力する機能。
検索条件解析手段3;入力された検索条件を解析し、開
始キー値と終了キー値とを得る機能。
始キー値と終了キー値とを得る機能。
解析結果記憶手段4;検索条件解析手段3の解析結果で
ある開始キー値と終了キー値とを記憶する機能。
ある開始キー値と終了キー値とを記憶する機能。
開始ブロック取得手段5;解析結果記憶手段4に記憶さ
れた開始キー値を用い、索引検索手段6を起動して索引
ファイルlから開始キー偵が格納されている最下位ブロ
ックを取得する機能。
れた開始キー値を用い、索引検索手段6を起動して索引
ファイルlから開始キー偵が格納されている最下位ブロ
ックを取得する機能。
索引検索手段6;開始ブロック取得手段5による開始ブ
ロック検索指示によって索引ファイルlから開始キー値
が格納されている最下位ブロックを検索する機能。
ロック検索指示によって索引ファイルlから開始キー値
が格納されている最下位ブロックを検索する機能。
処理ブロック−括決定手段7;開始ブロック取得手段5
の処理の後もしくは最終先読みブロック判定手段12か
ら指示を受けた後、開始ブロック取得手段5もしくは次
処理ブロック取得手段14によらて取得された最下位ブ
ロックに対する上位のブロックから次に必要とする複数
のブロックを決定する機能。
の処理の後もしくは最終先読みブロック判定手段12か
ら指示を受けた後、開始ブロック取得手段5もしくは次
処理ブロック取得手段14によらて取得された最下位ブ
ロックに対する上位のブロックから次に必要とする複数
のブロックを決定する機能。
ブロック先読み2括要求手段8;処理ブロックー括決定
手段7で決定した複数のブロックについて索引ファイル
1に対して読み込みの要求(要求のみを行い、読み込み
の完了を待たない、)を行う機能。
手段7で決定した複数のブロックについて索引ファイル
1に対して読み込みの要求(要求のみを行い、読み込み
の完了を待たない、)を行う機能。
終了ブロック判定手段9;開始ブロック取得手段5もし
くは次処理ブロック取得手段14により取得した索引フ
ァイル1の最下位ブロックに解析結果記憶手段4に記憶
された終了キー値が含まれているか否かを判定する機能
。
くは次処理ブロック取得手段14により取得した索引フ
ァイル1の最下位ブロックに解析結果記憶手段4に記憶
された終了キー値が含まれているか否かを判定する機能
。
ポインタ情報取得手段10:終了ブロック判定手段9で
終了キー値が含まれていると判定された場合に、その最
下位ブロックから必要なポインタ情報を取得してポイン
タ情報記憶手段11に記憶させる機能。
終了キー値が含まれていると判定された場合に、その最
下位ブロックから必要なポインタ情報を取得してポイン
タ情報記憶手段11に記憶させる機能。
ポインタ情報記憶手段11;解析結果記憶手段4に記憶
された開始キー値から終了キー値までの範囲に属する索
引レコードのポインタ情報を記憶する機能。
された開始キー値から終了キー値までの範囲に属する索
引レコードのポインタ情報を記憶する機能。
最終先読みブロック判定手段12;終了ブロック判定手
段9で終了キー値が含まれていないと判定された場合に
、その最下位ブロックがブロンク先読み一括要求手段8
で読み込みを要求した最終のブロックであるか否かを判
定し、最終のブロックである場合には処理ブロック−括
決定手段7に新たな読み込みを指示する機能。
段9で終了キー値が含まれていないと判定された場合に
、その最下位ブロックがブロンク先読み一括要求手段8
で読み込みを要求した最終のブロックであるか否かを判
定し、最終のブロックである場合には処理ブロック−括
決定手段7に新たな読み込みを指示する機能。
ポインタ情報取得手段13;終了ブロック判定手段9で
最下位ブロックに終了キー値が含まれていないと判定さ
れた場合に、その最下位ブロックから必要なポインタ情
報を取得してポインタ情報記憶手段11に記憶させる機
能。
最下位ブロックに終了キー値が含まれていないと判定さ
れた場合に、その最下位ブロックから必要なポインタ情
報を取得してポインタ情報記憶手段11に記憶させる機
能。
次処理ブロック取得手段14;次に処理する最下位ブロ
ックを読み込み完了待ち合わせ手段15から得る機能。
ックを読み込み完了待ち合わせ手段15から得る機能。
読み込み完了待ち合わせ手段15;ブロック先読み一括
要求手段8で要求した複数の最下位ブロックが読み込ま
れるまで処理を待ち合わせると共に、未処理の最下位プ
ロ・/りを保持し、次処理ブロック取得手段14に読み
込んだ最下位ブロックを渡すm能。
要求手段8で要求した複数の最下位ブロックが読み込ま
れるまで処理を待ち合わせると共に、未処理の最下位プ
ロ・/りを保持し、次処理ブロック取得手段14に読み
込んだ最下位ブロックを渡すm能。
以下、従来例の説明でも使用した第2図の索引ファイル
の例を用いて、上記の実施例の動作を説明する。なお、
第1図において、矢印を伴った実線は制御の流れを、破
線はデータの流れをそれぞれ示している。
の例を用いて、上記の実施例の動作を説明する。なお、
第1図において、矢印を伴った実線は制御の流れを、破
線はデータの流れをそれぞれ示している。
先ず、検索条件入力手段2によって検索条件(例えば2
4≦X≦45)が人力されると、検索条件解析手段3が
解析を行い、解析結果として開始キー値(” 24 ”
)と終了キー値(“45”)とを解析結果記憶手段4
に記憶する。
4≦X≦45)が人力されると、検索条件解析手段3が
解析を行い、解析結果として開始キー値(” 24 ”
)と終了キー値(“45”)とを解析結果記憶手段4
に記憶する。
次いで、開始ブロック取得手段5は解析結果記憶手段4
に記憶されている開始キー値(”24”)を用いて、索
引ファイルl内を検索するように索引検索手段6に対し
て指示する。
に記憶されている開始キー値(”24”)を用いて、索
引ファイルl内を検索するように索引検索手段6に対し
て指示する。
索引検索手段6は索引ファイル1の管理情9[j 10
1から各ブロックのポインタをたどり、開始キー値(“
°24”)を範囲内に含む最下位ブロック(108)を
検索し、読み込んだ最下位ブロック(108)を開始ブ
ロック取得手段5に渡す。
1から各ブロックのポインタをたどり、開始キー値(“
°24”)を範囲内に含む最下位ブロック(108)を
検索し、読み込んだ最下位ブロック(108)を開始ブ
ロック取得手段5に渡す。
次いで、処理ブロック−括決定手段7は読み込んだ最下
位ブロック(108)の上位ブロック(104)と終了
キー(i (“45“)とを用いて次に必要とする複数
のブロック(109,105)を決定する。
位ブロック(108)の上位ブロック(104)と終了
キー(i (“45“)とを用いて次に必要とする複数
のブロック(109,105)を決定する。
次いで、ブロック先読み一括要求手段8は処理ブロック
−括決定手段7で決定したプロ・7り(109,105
)に対して読み込みの要求のみを行い、読み込みの完了
は待たないでその処理を終了する。
−括決定手段7で決定したプロ・7り(109,105
)に対して読み込みの要求のみを行い、読み込みの完了
は待たないでその処理を終了する。
一方、終了ブロック判定手段9は解析結果記憶手段4に
記憶されている終了キー値じ45″)を用い、開始ブロ
ック取得手段5が得た最下位ブロック(108)内に終
了キー値(“45”)が含まれているか否かを判定する
。括弧内に記載した例の場合、終了ブロック判定手段9
は含まれていないと判定し、処理を最終先読みブロック
判定手段12に移す。
記憶されている終了キー値じ45″)を用い、開始ブロ
ック取得手段5が得た最下位ブロック(108)内に終
了キー値(“45”)が含まれているか否かを判定する
。括弧内に記載した例の場合、終了ブロック判定手段9
は含まれていないと判定し、処理を最終先読みブロック
判定手段12に移す。
次いで、最終先読みブロック判定手段12はその最下位
ブロック(108)がブロック先読み一括要求手段8で
読み込みの要求を行った最終の最下位ブロック(109
)であるか否かを判定する。
ブロック(108)がブロック先読み一括要求手段8で
読み込みの要求を行った最終の最下位ブロック(109
)であるか否かを判定する。
この場合は最終の最下位ブロックではないと判定する。
次いで、ポインタ情報取得手段13は取得された最下位
ブロック(108)から必要なポインタ情報、すなわち
開始キー値(“24−以上のキー値(“25”)に対す
るポインタ情1(PO7)を取得してポインタ情報記憶
手段11に記憶する。
ブロック(108)から必要なポインタ情報、すなわち
開始キー値(“24−以上のキー値(“25”)に対す
るポインタ情1(PO7)を取得してポインタ情報記憶
手段11に記憶する。
次いで、次処理ブロック取得手段14は読み込み完了待
ち合わせ手段15に対してブロック先読み一括要求手段
8が読み込みの要求を行っていたブロック(109)に
対する読み込みの完了の待ち合わせを行わせ、読み込み
が行われた時点で次に処理すべき最下位ブロック(10
9)を得る。
ち合わせ手段15に対してブロック先読み一括要求手段
8が読み込みの要求を行っていたブロック(109)に
対する読み込みの完了の待ち合わせを行わせ、読み込み
が行われた時点で次に処理すべき最下位ブロック(10
9)を得る。
次いで、終了ブロック判定手段9は再び解析結果記憶手
段4に記憶されている終了キー値(“45”)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
09)内に終了キーIII!(“45′)が含まれてい
るか否かを判定する。括弧内に記載した例の場合、終了
ブロック判定手段9は再び含まれていないと判定し、処
理を最終先読みブロック判定手段12に移す。
段4に記憶されている終了キー値(“45”)を用いて
次処理ブロック取得手段14が得た最下位ブロック(1
09)内に終了キーIII!(“45′)が含まれてい
るか否かを判定する。括弧内に記載した例の場合、終了
ブロック判定手段9は再び含まれていないと判定し、処
理を最終先読みブロック判定手段12に移す。
次いで、最終先読みブロック判定手段12は取得された
最下位ブロック(109)がブロック先読み一括要求手
段8で読み込みの要求を行った最終の最下位ブロック(
109)であるか否かを判定する。括弧内の例では最終
の最下位ブロックであると判定し、処理ブロック−括決
定手段7に指示を与え、処理を一時的に移す。
最下位ブロック(109)がブロック先読み一括要求手
段8で読み込みの要求を行った最終の最下位ブロック(
109)であるか否かを判定する。括弧内の例では最終
の最下位ブロックであると判定し、処理ブロック−括決
定手段7に指示を与え、処理を一時的に移す。
処理ブロック−括決定手段7は読み込んで待ち合わせて
いる上位ブロック(105)と終了キー値じ45”)と
を用いて次に必要とするブロック(110)を決定する
。
いる上位ブロック(105)と終了キー値じ45”)と
を用いて次に必要とするブロック(110)を決定する
。
次いで、ブロック先読み一括要求手段8は処理ブロック
−括決定手段7で決定したブロック(110)に対して
読み込みの要求のみを行い、読み込みの完了は待たない
でその処理を終了する。
−括決定手段7で決定したブロック(110)に対して
読み込みの要求のみを行い、読み込みの完了は待たない
でその処理を終了する。
次いで、ポインタ情報取得手段13は現在処理の対象と
なっている最下位ブロック(l O9)から必要なポイ
ンタ情報、すなわち全てのキー値(“31°、“36”
)に対するポインタ情報(PO8,PO9)を取得して
ポインタ情報記憶手段11に記憶する。
なっている最下位ブロック(l O9)から必要なポイ
ンタ情報、すなわち全てのキー値(“31°、“36”
)に対するポインタ情報(PO8,PO9)を取得して
ポインタ情報記憶手段11に記憶する。
次いで、次処理ブロック取得手段14は読み込み完了待
ち合わせ手段15に対してブロック先読み一括要求手段
8が読み込みの要求を行っていたブロック(110)に
対する読み込みの完了の待ち合わせを行わせ、読み込み
が行われた時点で次に処理すべき最下位ブロック(11
0)を得る。
ち合わせ手段15に対してブロック先読み一括要求手段
8が読み込みの要求を行っていたブロック(110)に
対する読み込みの完了の待ち合わせを行わせ、読み込み
が行われた時点で次に処理すべき最下位ブロック(11
0)を得る。
次いで、終了ブロック判定手段9は再び解析結果記憶手
段4に記憶されている終了キー値じ45”)を用いて次
処理ブロック取得手段14が得た最下位ブロック(11
0)内に終了キー値(“45”)が含まれているか否か
を判定する。括弧内に記載した例の場合、終了ブロック
判定手段9は含まれていると判定する。
段4に記憶されている終了キー値じ45”)を用いて次
処理ブロック取得手段14が得た最下位ブロック(11
0)内に終了キー値(“45”)が含まれているか否か
を判定する。括弧内に記載した例の場合、終了ブロック
判定手段9は含まれていると判定する。
終了ブロック判定手段9が終了キー値が含まれていると
判定すると、制御はポインタ情報取得手段10に移り、
ポインタ情報取得手段10は取得した最下位ブロック(
110)内の必要なポインタ情報、すなわち終了キー値
じ45”)以下のキー値じ40”)に対するポインタ情
報(Pio)を取得し、ポインタ情報記憶手段11に記
憶する。
判定すると、制御はポインタ情報取得手段10に移り、
ポインタ情報取得手段10は取得した最下位ブロック(
110)内の必要なポインタ情報、すなわち終了キー値
じ45”)以下のキー値じ40”)に対するポインタ情
報(Pio)を取得し、ポインタ情報記憶手段11に記
憶する。
しかして、ポインタ情報取得手段13等の処理は索引フ
ァイルlからブロックを読み込む処理と並列に動作する
こととなり、処理時間の大幅な短縮が可能となる。
ァイルlからブロックを読み込む処理と並列に動作する
こととなり、処理時間の大幅な短縮が可能となる。
なお、上述の動作により得られ、ポインタ情報記憶手段
11に記憶されたポインタ情報(P7〜P10)を用い
てデータファイル(図示せず)に対してアクセスするこ
とにより、検索条件(24≦X≦45)を満たすデータ
レコードを得る。
11に記憶されたポインタ情報(P7〜P10)を用い
てデータファイル(図示せず)に対してアクセスするこ
とにより、検索条件(24≦X≦45)を満たすデータ
レコードを得る。
以上説明したように本発明の索引検索方式にあっては、
索引ファイルの最下位ブロックを読み込む処理と、最下
位ブロック内の索引レコードからデータレコードを指す
ポインタ情報を取り出す処理とを並列動作させるように
しているため、処理の高速化が図れる効果がある。すな
わち、最下位ブロックを読み込む処理時間をTiとし、
ポインタ情報を取り出す処理時間を’rpとすると、他
の処理時間を無視すると、従来は合計してTi+Tpの
処理時間を要するものであったが、本発明によれば、T
i≧”rpの場合はTi5Ti<Tpの場合はTpとな
り、TpあるいはTiだけ処理時間が短縮化できるもの
である。
索引ファイルの最下位ブロックを読み込む処理と、最下
位ブロック内の索引レコードからデータレコードを指す
ポインタ情報を取り出す処理とを並列動作させるように
しているため、処理の高速化が図れる効果がある。すな
わち、最下位ブロックを読み込む処理時間をTiとし、
ポインタ情報を取り出す処理時間を’rpとすると、他
の処理時間を無視すると、従来は合計してTi+Tpの
処理時間を要するものであったが、本発明によれば、T
i≧”rpの場合はTi5Ti<Tpの場合はTpとな
り、TpあるいはTiだけ処理時間が短縮化できるもの
である。
第1図は本発明の索引検索方式の一実施例を示す構成図
、 第2rgJは索引ファイルの論理的構成の一例を示す図
および、 第3図は従来の索引検索方式の説明図である。 図において、 1・・・・・・・・・索引ファイル 2・・・・・・・・・検索条件入力手段3・・・・・・
・・・検索条件解析手段4・・・・・・・・・解析結果
記憶手段5・・・・・・・・・開始ブロック取得手段6
・・・・・・・・・索引検索手段 7・・・・・・・・・処理ブロック−括決定手段8・・
・・・・・・・ブロック先読み−括要求手段・・・・・
・・・・終了ブロック判定手段0・・・・・・ポインタ
情報取得手段 1・・・・・・ポインタ情報記憶手段 2・・・・・・最終先読みブロック判定手段3・・・・
・・ポインタ情報取得手段 4・・・・・・次処理ブロック取得手段5・・・・・・
読み込み完了待ち合わせ手段6・・・・・・次処理ブロ
ック読み込み手段01・・・管理情報 02〜111・・・ブロック
、 第2rgJは索引ファイルの論理的構成の一例を示す図
および、 第3図は従来の索引検索方式の説明図である。 図において、 1・・・・・・・・・索引ファイル 2・・・・・・・・・検索条件入力手段3・・・・・・
・・・検索条件解析手段4・・・・・・・・・解析結果
記憶手段5・・・・・・・・・開始ブロック取得手段6
・・・・・・・・・索引検索手段 7・・・・・・・・・処理ブロック−括決定手段8・・
・・・・・・・ブロック先読み−括要求手段・・・・・
・・・・終了ブロック判定手段0・・・・・・ポインタ
情報取得手段 1・・・・・・ポインタ情報記憶手段 2・・・・・・最終先読みブロック判定手段3・・・・
・・ポインタ情報取得手段 4・・・・・・次処理ブロック取得手段5・・・・・・
読み込み完了待ち合わせ手段6・・・・・・次処理ブロ
ック読み込み手段01・・・管理情報 02〜111・・・ブロック
Claims (1)
- 【特許請求の範囲】 入力した検索条件から検索の開始キー値と終了キー値と
を解析し、階層的な複数のブロックから構成される索引
ファイルから前記開始キー値を含む最下位ブロックを検
索して読み込み、前記開始キー値から前記終了キー値ま
でのキー値に対応するデータレコードのポインタ情報を
得、前記終了キー値を含む最下位ブロックまで順次読み
込みを行ってポインタ情報の取得を繰り返す索引検索方
式において、 前記の読み込んだ最下位ブロックに終了キー値が含まれ
ているか否かの判断処理および最下位ブロックからポイ
ンタ情報を得る処理と並行して次に必要となる複数の最
下位ブロックの読み込みを行わせるブロック先読み一括
要求手段と、 要求した複数の最下位ブロックが読み込まれるまで処理
を待ち合わせると共に、未処理の最下位ブロックを保持
する読み込み完了待ち合わせ手段とを備えたことを特徴
とする索引検索方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63284181A JP2734023B2 (ja) | 1988-11-10 | 1988-11-10 | 索引検索方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63284181A JP2734023B2 (ja) | 1988-11-10 | 1988-11-10 | 索引検索方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02129763A true JPH02129763A (ja) | 1990-05-17 |
JP2734023B2 JP2734023B2 (ja) | 1998-03-30 |
Family
ID=17675227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63284181A Expired - Lifetime JP2734023B2 (ja) | 1988-11-10 | 1988-11-10 | 索引検索方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2734023B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190230809A1 (en) * | 2018-01-19 | 2019-07-25 | Fanuc Corporation | Electric device and motor driving device |
-
1988
- 1988-11-10 JP JP63284181A patent/JP2734023B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190230809A1 (en) * | 2018-01-19 | 2019-07-25 | Fanuc Corporation | Electric device and motor driving device |
US10827638B2 (en) * | 2018-01-19 | 2020-11-03 | Fanuc Corporation | Electric device and motor driving device |
Also Published As
Publication number | Publication date |
---|---|
JP2734023B2 (ja) | 1998-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2405464C (en) | Associative database scanning and information retrieval | |
US5089985A (en) | System and method for performing a sort operation in a relational database manager to pass results directly to a user without writing to disk | |
AU2001256986A1 (en) | Associative database scanning and information retrieval | |
JPH02129763A (ja) | 索引検索方式 | |
US4809214A (en) | Information searching apparatus | |
JP2001513930A (ja) | データベース・システム及びデータベース・システムの運用方法 | |
JPH01298430A (ja) | 索引検索方式 | |
JP2000250921A (ja) | データベースの管理方法およびシステム | |
JPH05314188A (ja) | 範囲をもつデータの検索処理方式 | |
JP3111498B2 (ja) | レコード検索方法及びデータ処理装置 | |
JPH0728836A (ja) | データベース検索方法及びこの方法を用いたデータベースシステム | |
JP2586610B2 (ja) | ファイル作成方式 | |
JPH0814503B2 (ja) | 履歴データ処理装置 | |
Berdalieva et al. | SOME ASPECTS OF SEARCH ENGINE MODELING | |
JPH02156399A (ja) | プラント解析装置 | |
JPH03225412A (ja) | ファイルデータ読込み方式 | |
JPH03202934A (ja) | データ処理装置 | |
JPH06180716A (ja) | 時系列データ管理装置 | |
JPS60225938A (ja) | 情報検索方式 | |
JPS63250739A (ja) | フアイル装置 | |
JPS63178347A (ja) | スプ−ルフアイルの管理方法および装置 | |
JPS63285631A (ja) | 索引ファイル更新処理方式 | |
JPH04102172A (ja) | 情報検索方式 | |
JPH05108664A (ja) | 部品展開処理装置 | |
JPS63217417A (ja) | インデツクス部縮退処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080109 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090109 Year of fee payment: 11 |
|
EXPY | Cancellation because of completion of term |