JPH05216938A - 仮想ファイルの検索方式 - Google Patents
仮想ファイルの検索方式Info
- Publication number
- JPH05216938A JPH05216938A JP4056239A JP5623992A JPH05216938A JP H05216938 A JPH05216938 A JP H05216938A JP 4056239 A JP4056239 A JP 4056239A JP 5623992 A JP5623992 A JP 5623992A JP H05216938 A JPH05216938 A JP H05216938A
- Authority
- JP
- Japan
- Prior art keywords
- file
- search
- record
- chain
- index
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 仮想ファイルの併合検索に使用するのと同一
の複数ファイルインデックスを使用して連鎖検索を併合
検索と動的に切り替えて行えるようにする。 【構成】 統合方式認識手段1はプログラム11からの
基本ファイルA,B,Cからなる仮想ファイルに対する
検索要求が併合検索か連鎖検索かを判定し、併合検索処
理決定手段2は併合検索のための処理を決定し、併合検
索手段3は複数ファイルインデックスzを使用して併合
検索を行い、連鎖検索処理決定手段6は連鎖検索のため
の処理を決定し、連鎖検索手段7は複数ファイルインデ
ックスzを使用して連鎖検索を行い、ファイルレコード
検索手段4は基本ファイルA,B,Cからファイルレコ
ードを検索し、ファイルレコード出力手段5は検索され
たファイルレコードを仮想ファイルの様式に展開する。
の複数ファイルインデックスを使用して連鎖検索を併合
検索と動的に切り替えて行えるようにする。 【構成】 統合方式認識手段1はプログラム11からの
基本ファイルA,B,Cからなる仮想ファイルに対する
検索要求が併合検索か連鎖検索かを判定し、併合検索処
理決定手段2は併合検索のための処理を決定し、併合検
索手段3は複数ファイルインデックスzを使用して併合
検索を行い、連鎖検索処理決定手段6は連鎖検索のため
の処理を決定し、連鎖検索手段7は複数ファイルインデ
ックスzを使用して連鎖検索を行い、ファイルレコード
検索手段4は基本ファイルA,B,Cからファイルレコ
ードを検索し、ファイルレコード出力手段5は検索され
たファイルレコードを仮想ファイルの様式に展開する。
Description
【0001】
【産業上の利用分野】本発明はデータベースシステムに
おけるファイル制御に関し、特に複数の基本ファイルか
らなる仮想ファイルを検索する仮想ファイルの検索方式
に関する。
おけるファイル制御に関し、特に複数の基本ファイルか
らなる仮想ファイルを検索する仮想ファイルの検索方式
に関する。
【0002】
【従来の技術】周知のように、複数の基本ファイルをま
とめて1つの仮想ファイルに統合するときの基本ファイ
ル間の結びつきの方法としては、結合(JOIN),連
鎖(CHAIN)および併合(MERGE)の3つの方
法がある。結合は、結合キーで基本ファイルのファイル
レコードをまとめ、すべての基本ファイルに同一のキー
値をもつファイルレコードのみが仮想ファイルを通して
検索できる。また、連鎖は、アクセス経路(仮想ファイ
ルを定義するときに基本ファイルが定義された順)に従
い結合キーで基本ファイルのファイルレコードをまと
め、仮想ファイルを通して検索できる。さらに、併合
は、結合キーで基本ファイルのファイルレコードをまと
め、すべての基本ファイルに同一のキー値のファイルレ
コードがなくても仮想ファイルを通して検索できる。
とめて1つの仮想ファイルに統合するときの基本ファイ
ル間の結びつきの方法としては、結合(JOIN),連
鎖(CHAIN)および併合(MERGE)の3つの方
法がある。結合は、結合キーで基本ファイルのファイル
レコードをまとめ、すべての基本ファイルに同一のキー
値をもつファイルレコードのみが仮想ファイルを通して
検索できる。また、連鎖は、アクセス経路(仮想ファイ
ルを定義するときに基本ファイルが定義された順)に従
い結合キーで基本ファイルのファイルレコードをまと
め、仮想ファイルを通して検索できる。さらに、併合
は、結合キーで基本ファイルのファイルレコードをまと
め、すべての基本ファイルに同一のキー値のファイルレ
コードがなくても仮想ファイルを通して検索できる。
【0003】従来の仮想ファイルの検索方式では、複数
の基本ファイルを併合した仮想ファイルを検索する場合
に、複数ファイルインデックスを用いて検索する方式が
用いられていた。
の基本ファイルを併合した仮想ファイルを検索する場合
に、複数ファイルインデックスを用いて検索する方式が
用いられていた。
【0004】
【発明が解決しようとする課題】上述した従来の仮想フ
ァイルの検索方式では、複数ファイルインデックスを用
いて検索する場合に、複数の基本ファイルの統合方式に
は併合,連鎖および結合の3種類があるにもかかわら
ず、複数の基本ファイルを併合した仮想ファイルしか検
索できないという問題点があった。
ァイルの検索方式では、複数ファイルインデックスを用
いて検索する場合に、複数の基本ファイルの統合方式に
は併合,連鎖および結合の3種類があるにもかかわら
ず、複数の基本ファイルを併合した仮想ファイルしか検
索できないという問題点があった。
【0005】本発明の目的は、上述の点に鑑み、仮想フ
ァイルの併合検索に使用するのと同一の複数ファイルイ
ンデックスを使用して、連鎖検索を行えるようにすると
ともに、連鎖検索と併合検索とを動的に切り替えられる
ようにした仮想ファイルの検索方式を提供することにあ
る。
ァイルの併合検索に使用するのと同一の複数ファイルイ
ンデックスを使用して、連鎖検索を行えるようにすると
ともに、連鎖検索と併合検索とを動的に切り替えられる
ようにした仮想ファイルの検索方式を提供することにあ
る。
【0006】
【課題を解決するための手段】本発明の仮想ファイルの
検索方式は、データベースシステムの複数の基本ファイ
ルからなる仮想ファイルを検索する検索方式において、
インデックスレコードのポインタ部を仮想ファイルを構
成する基本ファイルのIDと基本ファイル中のファイル
レコードに対するポインタ値とする複数ファイルインデ
ックスと、仮想ファイルに対する検索要求を解析し併合
検索と連鎖検索とのいずれの検索を行うかを判定する統
合方式認識手段と、この統合方式認識手段により併合検
索を行うと判定されたときに併合検索のための処理を決
定する併合処理決定手段と、この併合処理決定手段によ
り決定された処理に従って前記複数ファイルインデック
スのインデックスレコードを使用して併合検索を行う併
合検索手段と、前記統合方式認識手段により連鎖検索を
行うと判定されたときに連鎖検索のための処理を決定す
る連鎖処理決定手段と、この連鎖処理決定手段により決
定された処理に従って前記複数ファイルインデックスの
インデックスレコードを使用して連鎖検索を行う連鎖検
索手段と、前記併合検索手段および前記連鎖検索手段に
より得られた複数ファイルインデックスのインデックス
レコードを使用してファイルレコードを検索するファイ
ルレコード検索手段と、このファイルレコード検索手段
により検索されたファイルレコードを仮想ファイルの様
式に展開するファイルレコード出力手段とを有する。
検索方式は、データベースシステムの複数の基本ファイ
ルからなる仮想ファイルを検索する検索方式において、
インデックスレコードのポインタ部を仮想ファイルを構
成する基本ファイルのIDと基本ファイル中のファイル
レコードに対するポインタ値とする複数ファイルインデ
ックスと、仮想ファイルに対する検索要求を解析し併合
検索と連鎖検索とのいずれの検索を行うかを判定する統
合方式認識手段と、この統合方式認識手段により併合検
索を行うと判定されたときに併合検索のための処理を決
定する併合処理決定手段と、この併合処理決定手段によ
り決定された処理に従って前記複数ファイルインデック
スのインデックスレコードを使用して併合検索を行う併
合検索手段と、前記統合方式認識手段により連鎖検索を
行うと判定されたときに連鎖検索のための処理を決定す
る連鎖処理決定手段と、この連鎖処理決定手段により決
定された処理に従って前記複数ファイルインデックスの
インデックスレコードを使用して連鎖検索を行う連鎖検
索手段と、前記併合検索手段および前記連鎖検索手段に
より得られた複数ファイルインデックスのインデックス
レコードを使用してファイルレコードを検索するファイ
ルレコード検索手段と、このファイルレコード検索手段
により検索されたファイルレコードを仮想ファイルの様
式に展開するファイルレコード出力手段とを有する。
【0007】
【作用】本発明の仮想ファイルの検索方式では、複数フ
ァイルインデックスがインデックスレコードのポインタ
部を仮想ファイルを構成する基本ファイルのIDと基本
ファイル中のファイルレコードに対するポインタ値と
し、統合方式認識手段が仮想ファイルに対する検索要求
を解析し併合検索と連鎖検索とのいずれの検索を行うか
を判定し、併合処理決定手段が統合方式認識手段により
併合検索を行うと判定されたときに併合検索のための処
理を決定し、併合検索手段が併合処理決定手段により決
定された処理に従って複数ファイルインデックスのイン
デックスレコードを使用して併合検索を行い、連鎖処理
決定手段が統合方式認識手段により連鎖検索を行うと判
定されたときに連鎖検索のための処理を決定し、連鎖検
索手段が連鎖処理決定手段により決定された処理に従っ
て複数ファイルインデックスのインデックスレコードを
使用して連鎖検索を行い、ファイルレコード検索手段が
併合検索手段および連鎖検索手段により得られた複数フ
ァイルインデックスのインデックスレコードを使用して
ファイルレコードを検索し、ファイルレコード出力手段
がファイルレコード検索手段により検索されたファイル
レコードを仮想ファイルの様式に展開する。
ァイルインデックスがインデックスレコードのポインタ
部を仮想ファイルを構成する基本ファイルのIDと基本
ファイル中のファイルレコードに対するポインタ値と
し、統合方式認識手段が仮想ファイルに対する検索要求
を解析し併合検索と連鎖検索とのいずれの検索を行うか
を判定し、併合処理決定手段が統合方式認識手段により
併合検索を行うと判定されたときに併合検索のための処
理を決定し、併合検索手段が併合処理決定手段により決
定された処理に従って複数ファイルインデックスのイン
デックスレコードを使用して併合検索を行い、連鎖処理
決定手段が統合方式認識手段により連鎖検索を行うと判
定されたときに連鎖検索のための処理を決定し、連鎖検
索手段が連鎖処理決定手段により決定された処理に従っ
て複数ファイルインデックスのインデックスレコードを
使用して連鎖検索を行い、ファイルレコード検索手段が
併合検索手段および連鎖検索手段により得られた複数フ
ァイルインデックスのインデックスレコードを使用して
ファイルレコードを検索し、ファイルレコード出力手段
がファイルレコード検索手段により検索されたファイル
レコードを仮想ファイルの様式に展開する。
【0008】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
説明する。
【0009】図1(a)は、本発明の一実施例に係る仮
想ファイルの検索方式の構成を示すブロック図である。
本実施例の仮想ファイルの検索方式は、統合方式認識手
段1と、併合処理決定手段2と、併合検索手段3と、フ
ァイルレコード検索手段4と、ファイルレコード出力手
段5と、連鎖処理決定手段6と、連鎖検索手段7と、複
数ファイルインデックスzおよび基本ファイルA,Bお
よびCを格納するデータベース10と、プログラム11
とから構成されている。
想ファイルの検索方式の構成を示すブロック図である。
本実施例の仮想ファイルの検索方式は、統合方式認識手
段1と、併合処理決定手段2と、併合検索手段3と、フ
ァイルレコード検索手段4と、ファイルレコード出力手
段5と、連鎖処理決定手段6と、連鎖検索手段7と、複
数ファイルインデックスzおよび基本ファイルA,Bお
よびCを格納するデータベース10と、プログラム11
とから構成されている。
【0010】仮想ファイルにおいて基本ファイルから任
意の項目をある順序で選択したものを様式と呼ぶ。図7
(a)に定義する仮想ファイルVABCでは、基本ファ
イルAのすべての項目A1,A2,A3およびA4をこ
の順番で選択したものを様式Aとし、基本ファイルBの
すべての項目B1,B2およびB3をこの順番で選択し
たものを様式Bとし、基本ファイルCのすべての項目C
1,C2,C3およびC4をこの順番で選択したものを
様式Cとしている。さらに、そのアクセス経路を複数フ
ァイルインデックスzと定めている。なお、仮想ファイ
ルVABCは、実レコードを持たない。
意の項目をある順序で選択したものを様式と呼ぶ。図7
(a)に定義する仮想ファイルVABCでは、基本ファ
イルAのすべての項目A1,A2,A3およびA4をこ
の順番で選択したものを様式Aとし、基本ファイルBの
すべての項目B1,B2およびB3をこの順番で選択し
たものを様式Bとし、基本ファイルCのすべての項目C
1,C2,C3およびC4をこの順番で選択したものを
様式Cとしている。さらに、そのアクセス経路を複数フ
ァイルインデックスzと定めている。なお、仮想ファイ
ルVABCは、実レコードを持たない。
【0011】図1(c)は、項目A1,A2,A3およ
びA4からなる基本ファイルAのファイルレコードと、
項目B1,B2およびB3からなる基本ファイルBのフ
ァイルレコードと、項目C1,C2,C3およびC4か
らなる基本ファイルCのファイルレコードとを例示する
図である。ここで、基本ファイルAの項目A1、基本フ
ァイルBの項目B1、基本ファイルCの項目C1を結合
キーとし、そのアクセス経路を(A,B,C)としたも
のが、図1(b)に示す複数ファイルインデックスzで
ある。複数ファイルインデックスzのインデックスレコ
ードは、図1(d)に示すように、インデックス値と、
ポインタ部の個数と、ID(IDentificati
on)およびポインタ値からなるポインタ部とから構成
されている。
びA4からなる基本ファイルAのファイルレコードと、
項目B1,B2およびB3からなる基本ファイルBのフ
ァイルレコードと、項目C1,C2,C3およびC4か
らなる基本ファイルCのファイルレコードとを例示する
図である。ここで、基本ファイルAの項目A1、基本フ
ァイルBの項目B1、基本ファイルCの項目C1を結合
キーとし、そのアクセス経路を(A,B,C)としたも
のが、図1(b)に示す複数ファイルインデックスzで
ある。複数ファイルインデックスzのインデックスレコ
ードは、図1(d)に示すように、インデックス値と、
ポインタ部の個数と、ID(IDentificati
on)およびポインタ値からなるポインタ部とから構成
されている。
【0012】図2を参照すると、連鎖検索手段7の処理
は、インデックス値セーブステップS1と、ポインタ値
null判定ステップS2と、処理H実行ステップS3
と、レコード発見判定ステップS4と、処理G実行ステ
ップS5と、レコード発見判定ステップS6と、レコー
ド終了判定ステップS7と、キー値設定ステップS8
と、キー値設定ステップS9と、ポインタ部決定処理S
10と、ポインタ部発見判定ステップS11と、処理F
実行ステップS12と、レコード発見判定ステップS1
3と、キー値設定ステップS14と、ポインタ部決定処
理S15とからなる。
は、インデックス値セーブステップS1と、ポインタ値
null判定ステップS2と、処理H実行ステップS3
と、レコード発見判定ステップS4と、処理G実行ステ
ップS5と、レコード発見判定ステップS6と、レコー
ド終了判定ステップS7と、キー値設定ステップS8
と、キー値設定ステップS9と、ポインタ部決定処理S
10と、ポインタ部発見判定ステップS11と、処理F
実行ステップS12と、レコード発見判定ステップS1
3と、キー値設定ステップS14と、ポインタ部決定処
理S15とからなる。
【0013】図3を参照すると、ポインタ部決定処理S
10およびS15は、インデックス値比較ステップS1
6と、インデックス先頭ポインタ部設定ステップS17
と、カレントインデックスポインタ部設定ステップS1
8と、ID設定ステップS19と、ID差算出ステップ
S20と、ID差判定ステップS21と、ポインタ部発
見ステップS22と、ポインタ部未発見ステップS23
と、先頭ポインタ部設定ステップS24と、ポインタ部
発見処理S25とからなる。
10およびS15は、インデックス値比較ステップS1
6と、インデックス先頭ポインタ部設定ステップS17
と、カレントインデックスポインタ部設定ステップS1
8と、ID設定ステップS19と、ID差算出ステップ
S20と、ID差判定ステップS21と、ポインタ部発
見ステップS22と、ポインタ部未発見ステップS23
と、先頭ポインタ部設定ステップS24と、ポインタ部
発見処理S25とからなる。
【0014】図4を参照すると、ポインタ部発見処理S
25は、順読み判定ステップS26と、ポインタ部個数
設定ステップS27と、カウンタ初期設定ステップS2
8と、カウンタ加算ステップS29と、カウンタ・ポイ
ンタ部個数比較ステップS30と、ポインタ部設定ステ
ップS31と、ID設定ステップS32と、ID差算出
ステップS33と、ID差判定ステップS34と、ポイ
ンタ部設定ステップS35と、ポインタ部発見ステップ
S36と、ポインタ部発見ステップS37とからなる。
25は、順読み判定ステップS26と、ポインタ部個数
設定ステップS27と、カウンタ初期設定ステップS2
8と、カウンタ加算ステップS29と、カウンタ・ポイ
ンタ部個数比較ステップS30と、ポインタ部設定ステ
ップS31と、ID設定ステップS32と、ID差算出
ステップS33と、ID差判定ステップS34と、ポイ
ンタ部設定ステップS35と、ポインタ部発見ステップ
S36と、ポインタ部発見ステップS37とからなる。
【0015】図5を参照すると、併合検索手段3の処理
は、ポインタ部null判定ステップS51と、処理H
実行ステップS52と、レコード発見判断ステップS5
3と、処理G実行ステップS54と、レコード発見判定
ステップS55と、レコード終了判定ステップS56
と、処理F実行ステップS57と、レコード発見判断ス
テップS58と、順読み判定ステップS59と、先頭ポ
インタ部取出しステップS60と、最後ポインタ部取出
しステップS61とからなる。
は、ポインタ部null判定ステップS51と、処理H
実行ステップS52と、レコード発見判断ステップS5
3と、処理G実行ステップS54と、レコード発見判定
ステップS55と、レコード終了判定ステップS56
と、処理F実行ステップS57と、レコード発見判断ス
テップS58と、順読み判定ステップS59と、先頭ポ
インタ部取出しステップS60と、最後ポインタ部取出
しステップS61とからなる。
【0016】図2〜図5中、H,FおよびGは、ある一
定の処理を示す。z’はあるインデックス値であり、p
はポインタ部を示している。ここで、処理Hは、順読み
の場合にはインデックス値z’でポインタ部がpよりも
大きいインデックスレコードを得る処理となり、逆読み
の場合にはインデックス値z’でポインタ部pよりも小
さいインデックスレコードを得る処理となる。このとき
得られるインデックスレコードは、データベース10中
の複数ファイルインデックスzのインデックスレコード
から該当しないポインタ部pを落としたものとなり、そ
のポインタ部pの個数も該当するポインタ部の個数とな
る。ある変数を含む処理の変数がnullである場合、
その処理は実行されず、その処理結果は偽となる。
定の処理を示す。z’はあるインデックス値であり、p
はポインタ部を示している。ここで、処理Hは、順読み
の場合にはインデックス値z’でポインタ部がpよりも
大きいインデックスレコードを得る処理となり、逆読み
の場合にはインデックス値z’でポインタ部pよりも小
さいインデックスレコードを得る処理となる。このとき
得られるインデックスレコードは、データベース10中
の複数ファイルインデックスzのインデックスレコード
から該当しないポインタ部pを落としたものとなり、そ
のポインタ部pの個数も該当するポインタ部の個数とな
る。ある変数を含む処理の変数がnullである場合、
その処理は実行されず、その処理結果は偽となる。
【0017】図6は、連鎖処理決定手段6が要求された
機能に基づいて決定する処理を例示する表である。
機能に基づいて決定する処理を例示する表である。
【0018】図7は、仮想ファイルの定義例ならびに連
鎖検索で得られるファイルレコードおよび併合検索で得
られるファイルレコードを例示する図である。
鎖検索で得られるファイルレコードおよび併合検索で得
られるファイルレコードを例示する図である。
【0019】次に、このように構成された本実施例の仮
想ファイルの検索方式の動作について説明する。
想ファイルの検索方式の動作について説明する。
【0020】(1) まず、プログラム11が仮想ファ
イルVABCの全ファイルレコードを読み込む併合検索
を要求する場合について説明する。
イルVABCの全ファイルレコードを読み込む併合検索
を要求する場合について説明する。
【0021】プログラム11が仮想ファイルVABCの
併合検索を要求すると、結合方式認識手段1は、検索要
求を判断して、併合検索であると判定する。
併合検索を要求すると、結合方式認識手段1は、検索要
求を判断して、併合検索であると判定する。
【0022】次に、併合処理決定手段2は、要求された
併合検索がカレンシに依存するか否かを判定し、要求さ
れた機能に基づき、複数ファイルインデックスzに対し
て実行すべき処理F,GおよびHならびにインデックス
値z’およびポインタ部pを決定する。
併合検索がカレンシに依存するか否かを判定し、要求さ
れた機能に基づき、複数ファイルインデックスzに対し
て実行すべき処理F,GおよびHならびにインデックス
値z’およびポインタ部pを決定する。
【0023】(1−1) ”先頭レコードを取り出す”
処理の場合、併合処理決定手段2は、処理Fを”最小イ
ンデックス値の複数ファイルインデックスzのインデッ
クスレコードを取り出す”とし、処理Hは順読みの場合
をとり、ポインタ部pおよびインデックス値z’をnu
llと定める。
処理の場合、併合処理決定手段2は、処理Fを”最小イ
ンデックス値の複数ファイルインデックスzのインデッ
クスレコードを取り出す”とし、処理Hは順読みの場合
をとり、ポインタ部pおよびインデックス値z’をnu
llと定める。
【0024】続いて、併合検索手段3は、併合処理決定
手段2により決定された処理を、図5の流れ図に従って
実行する。
手段2により決定された処理を、図5の流れ図に従って
実行する。
【0025】詳しくは、併合検索手段3は、ポインタ部
pがnullであるかどうかを判断し(ステップS5
1)、nullであるので、処理F(z’)を実行する
(ステップS57)。これにより、複数ファイルインデ
ックスzで、最小インデックス値は1であり、インデッ
クスレコードz1が得られる(ステップS58でイエ
ス)。いま、順読みであるので(ステップS59でイエ
ス)、このときの最小のポインタ部(1,B1)を該当
のポインタ部として得る。
pがnullであるかどうかを判断し(ステップS5
1)、nullであるので、処理F(z’)を実行する
(ステップS57)。これにより、複数ファイルインデ
ックスzで、最小インデックス値は1であり、インデッ
クスレコードz1が得られる(ステップS58でイエ
ス)。いま、順読みであるので(ステップS59でイエ
ス)、このときの最小のポインタ部(1,B1)を該当
のポインタ部として得る。
【0026】次に、ファイルレコード検索手段4は、併
合検索手段3により得られたポインタ部(1,B1)か
らID=1、ポインタ値B−1を得、仮想ファイルVA
BCの定義情報よりID=1の指し示す基本ファイルが
基本ファイルBであることを確定し、基本ファイルBの
ファイルレコードB−1を取り出す。
合検索手段3により得られたポインタ部(1,B1)か
らID=1、ポインタ値B−1を得、仮想ファイルVA
BCの定義情報よりID=1の指し示す基本ファイルが
基本ファイルBであることを確定し、基本ファイルBの
ファイルレコードB−1を取り出す。
【0027】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードB−1を仮想ファイルVABCの定義情報の様式
Bに従ってプログラム11の領域に展開する。ここで
は、基本ファイルBの定義順で同一の項目B1,B2お
よびB3が選択されているので、ファイルレコードB−
1と同一のものが展開される。
ファイルレコード検索手段4により得られたファイルレ
コードB−1を仮想ファイルVABCの定義情報の様式
Bに従ってプログラム11の領域に展開する。ここで
は、基本ファイルBの定義順で同一の項目B1,B2お
よびB3が選択されているので、ファイルレコードB−
1と同一のものが展開される。
【0028】(1−2) また、”現在読み込まれてい
るファイルレコードの次のファイルレコードを取り出
す”処理の場合は、併合処理決定手段2は、処理Gを”
インデックス値z’の次に大きいインデックス値の複数
ファイルインデックスのインデックスレコードを取り出
す”とし、処理Hを順読みの場合とし、ポインタ部pを
カレントな複数ファイルインデックスzのインデックス
レコードのポインタ部、z’をカレントな複数ファイル
インデックスzのインデックスレコードのインデックス
値とする。ここで、いま、ファイルレコードC−1が読
み込まれているとすると、インデックス値z’は1、ポ
インタ部pはID=2、ポインタ値C−1となる。
るファイルレコードの次のファイルレコードを取り出
す”処理の場合は、併合処理決定手段2は、処理Gを”
インデックス値z’の次に大きいインデックス値の複数
ファイルインデックスのインデックスレコードを取り出
す”とし、処理Hを順読みの場合とし、ポインタ部pを
カレントな複数ファイルインデックスzのインデックス
レコードのポインタ部、z’をカレントな複数ファイル
インデックスzのインデックスレコードのインデックス
値とする。ここで、いま、ファイルレコードC−1が読
み込まれているとすると、インデックス値z’は1、ポ
インタ部pはID=2、ポインタ値C−1となる。
【0029】次に、併合検索手段3は、ポインタ部pが
nullであるかどうかを判断し(ステップS51)、
nullでないので、処理H(p,z’)を実行する
(ステップS52)。すると、インデックスレコードが
見つからないので(ステップS53でノー)、併合検索
手段3は、処理G(z’)を実行して(ステップS5
4)、複数ファイルインデックスzのインデックスレコ
ードz2を得る(ステップS55でイエス)。いま、順
読みであるので(ステップS59でイエス)、このとき
の最小のポインタ部(0,A1)を該当のポインタ部と
して得る。
nullであるかどうかを判断し(ステップS51)、
nullでないので、処理H(p,z’)を実行する
(ステップS52)。すると、インデックスレコードが
見つからないので(ステップS53でノー)、併合検索
手段3は、処理G(z’)を実行して(ステップS5
4)、複数ファイルインデックスzのインデックスレコ
ードz2を得る(ステップS55でイエス)。いま、順
読みであるので(ステップS59でイエス)、このとき
の最小のポインタ部(0,A1)を該当のポインタ部と
して得る。
【0030】次に、ファイルレコード検索手段4は、併
合検索手段3により得られたポインタ部(0,A1)か
らID=0、ポインタ値A−1を得、仮想ファイルVA
BCの定義情報よりID=0の指し示す基本ファイルが
基本ファイルAであることを確定し、基本ファイルAの
ファイルレコードA−1を取り出す。
合検索手段3により得られたポインタ部(0,A1)か
らID=0、ポインタ値A−1を得、仮想ファイルVA
BCの定義情報よりID=0の指し示す基本ファイルが
基本ファイルAであることを確定し、基本ファイルAの
ファイルレコードA−1を取り出す。
【0031】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードA−1を仮想ファイルVABCの定義情報の様式
Aに従ってプログラム11の領域に展開する。ここで
は、基本ファイルAの定義順で同一の項目A1,A2,
A3およびA4が選択されているので、ファイルレコー
ドA−1と同一のものが展開される。
ファイルレコード検索手段4により得られたファイルレ
コードA−1を仮想ファイルVABCの定義情報の様式
Aに従ってプログラム11の領域に展開する。ここで
は、基本ファイルAの定義順で同一の項目A1,A2,
A3およびA4が選択されているので、ファイルレコー
ドA−1と同一のものが展開される。
【0032】このようにして、併合検索で得られる仮想
ファイルVABCのファイルレコードを、図7(c)に
示す。
ファイルVABCのファイルレコードを、図7(c)に
示す。
【0033】(2) 次に、プログラム11が仮想ファ
イルVABCのファイルレコードの連鎖検索を要求する
場合について説明する。
イルVABCのファイルレコードの連鎖検索を要求する
場合について説明する。
【0034】連鎖とは、アクセス経路に従って同一の結
合キー値(インデックス値)のファイルレコードを取り
出すが、アクセス経路の途中に欠落がある場合、それ以
降のアクセス経路上にあるファイルについては処理され
ないような統合方式をいう。
合キー値(インデックス値)のファイルレコードを取り
出すが、アクセス経路の途中に欠落がある場合、それ以
降のアクセス経路上にあるファイルについては処理され
ないような統合方式をいう。
【0035】複数ファイルインデックスzは、各基本フ
ァイルA,BおよびCに対して一意のIDを持つため、
そのポインタ部のIDの数は、0≦複数ファイルインデ
ックスzのポインタ部のID≦複数ファイルインデック
スzを構成するファイル数(=様式の数)−1となる。
この複数ファイルインデックスzのポインタ部は、その
インデックスレコードの作成時点のポインタ部の値によ
ってソートされるという特徴をもつため、この複数ファ
イルインデックスzを使用して連鎖検索を行うには、次
のように考えればよい。
ァイルA,BおよびCに対して一意のIDを持つため、
そのポインタ部のIDの数は、0≦複数ファイルインデ
ックスzのポインタ部のID≦複数ファイルインデック
スzを構成するファイル数(=様式の数)−1となる。
この複数ファイルインデックスzのポインタ部は、その
インデックスレコードの作成時点のポインタ部の値によ
ってソートされるという特徴をもつため、この複数ファ
イルインデックスzを使用して連鎖検索を行うには、次
のように考えればよい。
【0036】連鎖検索において、アクセス経路(A,
B,C)上の基本ファイルA,BおよびCに存在するす
べてのファイルレコードが検索対象となる。したがっ
て、アクセス経路が正方向A→B→Cの場合には、ID
が0から開始されるポインタ部をもつインデックスレコ
ードz2,z3,z5およびz6のみを処理の対象とす
る。これらの各インデックスレコードz2,z3,z5
およびz6について、直前に読み込んだIDとの差が1
以下のIDを有するポインタ部について処理対象とす
る。すなわち、連鎖検索とは、アクセス経路に従ってア
クセス経路中に存在する同一のインデックス値のファイ
ルレコードの集合を取り出すことをいう。
B,C)上の基本ファイルA,BおよびCに存在するす
べてのファイルレコードが検索対象となる。したがっ
て、アクセス経路が正方向A→B→Cの場合には、ID
が0から開始されるポインタ部をもつインデックスレコ
ードz2,z3,z5およびz6のみを処理の対象とす
る。これらの各インデックスレコードz2,z3,z5
およびz6について、直前に読み込んだIDとの差が1
以下のIDを有するポインタ部について処理対象とす
る。すなわち、連鎖検索とは、アクセス経路に従ってア
クセス経路中に存在する同一のインデックス値のファイ
ルレコードの集合を取り出すことをいう。
【0037】(2−1) まず、”最小ファイルレコー
ドを求める”処理の場合の連鎖検索について説明する。
ドを求める”処理の場合の連鎖検索について説明する。
【0038】プログラム11が仮想ファイルVABCの
連鎖検索を要求すると、統合方式認識手段1は、要求さ
れた検索が連鎖検索であるか併合検索であるかを判定
し、連鎖検索であると判定する。
連鎖検索を要求すると、統合方式認識手段1は、要求さ
れた検索が連鎖検索であるか併合検索であるかを判定
し、連鎖検索であると判定する。
【0039】次に、連鎖処理決定手段2は、要求された
機能に基づき(図6参照)、処理F,n,pおよびz’
を決定する。ここで、要求された機能は、”最小レコー
ドを得る”というものなので、処理Fを”IDがnで最
小インデックス値のインデックスレコードを求める”と
し、nを0、カレントとは独立な処理であるためにz’
およびpはnullとし、処理Hを順読みの処理とす
る。
機能に基づき(図6参照)、処理F,n,pおよびz’
を決定する。ここで、要求された機能は、”最小レコー
ドを得る”というものなので、処理Fを”IDがnで最
小インデックス値のインデックスレコードを求める”と
し、nを0、カレントとは独立な処理であるためにz’
およびpはnullとし、処理Hを順読みの処理とす
る。
【0040】続いて、連鎖検索手段7は、連鎖処理決定
手段6により決定された処理Fを図2の流れ図に従って
実行する。
手段6により決定された処理Fを図2の流れ図に従って
実行する。
【0041】詳しくは、連鎖検索手段7は、カレントな
インデックス値z’をr’にセーブし(ステップS
1)、pがnullなので(ステップS2でイエス)、
処理F(p,z)を実行する(ステップS12)。
インデックス値z’をr’にセーブし(ステップS
1)、pがnullなので(ステップS2でイエス)、
処理F(p,z)を実行する(ステップS12)。
【0042】図1(b)に例示する複数ファイルインデ
ックスzのデータを元にすると、複数ファイルインデッ
クスzの最小インデックス値のインデックスレコードは
インデックス値1のインデックスレコードz1である
が、IDが0である最小インデックス値のインデックス
レコードはインデックスレコードz2となる(ステップ
S13でイエス)。そこで、連鎖検索手段7は、z’を
インデックス値=2とし(ステップS14)、この後に
ポインタ部決定処理S15を実行する。
ックスzのデータを元にすると、複数ファイルインデッ
クスzの最小インデックス値のインデックスレコードは
インデックス値1のインデックスレコードz1である
が、IDが0である最小インデックス値のインデックス
レコードはインデックスレコードz2となる(ステップ
S13でイエス)。そこで、連鎖検索手段7は、z’を
インデックス値=2とし(ステップS14)、この後に
ポインタ部決定処理S15を実行する。
【0043】ポインタ部決定処理S15では、もともと
nullであったインデックス値z’(r’にセーブし
てある)はインデックス値2となっているために一致し
ないので(ステップS16でノー)、連鎖検索手段7
は、qをID=0の先頭のポインタ部(0,A−1)と
し(ステップS24)、ポインタ部発見処理S25を実
行する。
nullであったインデックス値z’(r’にセーブし
てある)はインデックス値2となっているために一致し
ないので(ステップS16でノー)、連鎖検索手段7
は、qをID=0の先頭のポインタ部(0,A−1)と
し(ステップS24)、ポインタ部発見処理S25を実
行する。
【0044】ポインタ部発見処理S25では、連鎖検索
手段7は、最小ファイルレコードを求める処理は、連鎖
処理決定手段2により決定されたように順読みであるの
で(ステップ26でイエス)、qの値(0,A−1)を
求めるポインタ部とする(ステップS36)。
手段7は、最小ファイルレコードを求める処理は、連鎖
処理決定手段2により決定されたように順読みであるの
で(ステップ26でイエス)、qの値(0,A−1)を
求めるポインタ部とする(ステップS36)。
【0045】次に、ファイルレコード検索手段4は、連
鎖検索手段7により得られたポインタ部(0,A−1)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−1から基本ファイルA中のファイルレコード
A−1を得る。
鎖検索手段7により得られたポインタ部(0,A−1)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−1から基本ファイルA中のファイルレコード
A−1を得る。
【0046】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードA−1を仮想ファイルVABCの定義情報の様式
Aに従ってプログラム11の領域に展開する。ここで
は、基本ファイルAの定義順で同一の項目A1,A2,
A3およびA4が選択されているので、ファイルレコー
ドA−1と同一のものが展開される。
ファイルレコード検索手段4により得られたファイルレ
コードA−1を仮想ファイルVABCの定義情報の様式
Aに従ってプログラム11の領域に展開する。ここで
は、基本ファイルAの定義順で同一の項目A1,A2,
A3およびA4が選択されているので、ファイルレコー
ドA−1と同一のものが展開される。
【0047】(2−2) ”最大ファイルレコードを求
める”処理の場合の連鎖検索について説明する。
める”処理の場合の連鎖検索について説明する。
【0048】プログラム11が仮想ファイルVABCの
連鎖検索を要求すると、統合方式認識手段1は、要求さ
れた検索が連鎖検索であるか併合検索であるかを判定
し、連鎖検索であると判定する。
連鎖検索を要求すると、統合方式認識手段1は、要求さ
れた検索が連鎖検索であるか併合検索であるかを判定
し、連鎖検索であると判定する。
【0049】次に、連鎖処理決定手段6は、要求された
機能に基づき(図6参照)、最大ファイルレコードを求
めるために、処理Fを”ID=nを含む最大インデック
ス値のインデックスレコードを求める”とし、z’およ
びpをそれぞれnullおよび0とし、処理Hを逆読み
処理とする。
機能に基づき(図6参照)、最大ファイルレコードを求
めるために、処理Fを”ID=nを含む最大インデック
ス値のインデックスレコードを求める”とし、z’およ
びpをそれぞれnullおよび0とし、処理Hを逆読み
処理とする。
【0050】続いて、連鎖検索手段7は、連鎖処理決定
手段6により決定された処理Fを図2の流れ図に従って
実行する。
手段6により決定された処理Fを図2の流れ図に従って
実行する。
【0051】詳しくは、連鎖検索手段7は、まず、カレ
ントなインデックス値z’をr’にセーブし(ステップ
S1)、pがnullであるかどうかを判定する(ステ
ップS2)。いま、pがnullであるので、連鎖検索
手段7は、処理F(p,z’)を実行する(ステップS
12)。これにより、連鎖検索手段7は、最大インデッ
クス値のインデックスレコードとしてインデックスレコ
ードz6を得(ステップS13でイエス)、z’を読み
込んだキー値として(ステップS14)、ポインタ部決
定処理S15を実行する。
ントなインデックス値z’をr’にセーブし(ステップ
S1)、pがnullであるかどうかを判定する(ステ
ップS2)。いま、pがnullであるので、連鎖検索
手段7は、処理F(p,z’)を実行する(ステップS
12)。これにより、連鎖検索手段7は、最大インデッ
クス値のインデックスレコードとしてインデックスレコ
ードz6を得(ステップS13でイエス)、z’を読み
込んだキー値として(ステップS14)、ポインタ部決
定処理S15を実行する。
【0052】ポインタ部決定処理S15では、もともと
nullであったインデックス値z’(r’にセーブし
てある)はインデックス値2となっているために一致し
ないので(ステップS16でノー)、連鎖検索手段7
は、qをID=0の先頭のポインタ部(0,A−5)と
し(ステップS24)、ポインタ部発見処理S25を実
行する。
nullであったインデックス値z’(r’にセーブし
てある)はインデックス値2となっているために一致し
ないので(ステップS16でノー)、連鎖検索手段7
は、qをID=0の先頭のポインタ部(0,A−5)と
し(ステップS24)、ポインタ部発見処理S25を実
行する。
【0053】ポインタ部発見処理S25では、連鎖検索
手段7は、最大ファイルレコードを求める処理は、連鎖
処理決定手段6により決定されたように逆読みであるの
で(ステップ26でノー)、Lにポインタ部の個数3を
設定し(ステップS27)、kに初期値1を入れる(ス
テップS28)。
手段7は、最大ファイルレコードを求める処理は、連鎖
処理決定手段6により決定されたように逆読みであるの
で(ステップ26でノー)、Lにポインタ部の個数3を
設定し(ステップS27)、kに初期値1を入れる(ス
テップS28)。
【0054】次に、連鎖検索手段7は、kを1つインク
リメントした後に(ステップS29)、次のポインタ部
が存在するか否かを比較し(kとLとを比較し)、存在
しなければ(ステップS30でイエス)、qのポインタ
部を該当のポインタ部とする(ステップS37)。ここ
で、インデックスレコードz6のポインタ部の個数は3
であり(L=3)、次のポインタ部が存在するため(ス
テップS30でノー)、連鎖検索手段7は、pにインデ
ックスレコードz6の次のポインタ部(2,C−5)を
設定する(ステップS31)。
リメントした後に(ステップS29)、次のポインタ部
が存在するか否かを比較し(kとLとを比較し)、存在
しなければ(ステップS30でイエス)、qのポインタ
部を該当のポインタ部とする(ステップS37)。ここ
で、インデックスレコードz6のポインタ部の個数は3
であり(L=3)、次のポインタ部が存在するため(ス
テップS30でノー)、連鎖検索手段7は、pにインデ
ックスレコードz6の次のポインタ部(2,C−5)を
設定する(ステップS31)。
【0055】続いて、連鎖検索手段7は、xおよびyに
qのIDおよびpのIDを設定し(ステップS32)、
yとxとの差をyに代入した後に(ステップS33)、
qのIDとpのIDとの差が1以内であるかどうかをチ
ェックする(ステップS34)。その差が1より大きい
場合には(ステップS34でイエス)、連鎖検索手段7
は、連鎖に欠落があるので、qのポインタ部を有効とす
る(ステップS37)。いま、IDはそれぞれ0と2と
であるため、qのポインタ部(0,A−5)が有効とな
る。
qのIDおよびpのIDを設定し(ステップS32)、
yとxとの差をyに代入した後に(ステップS33)、
qのIDとpのIDとの差が1以内であるかどうかをチ
ェックする(ステップS34)。その差が1より大きい
場合には(ステップS34でイエス)、連鎖検索手段7
は、連鎖に欠落があるので、qのポインタ部を有効とす
る(ステップS37)。いま、IDはそれぞれ0と2と
であるため、qのポインタ部(0,A−5)が有効とな
る。
【0056】次に、ファイルレコード検索手段4は、連
鎖検索手段7により得られたポインタ部(0,A−5)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−5から基本ファイルA中のファイルレコード
A−5を得る。
鎖検索手段7により得られたポインタ部(0,A−5)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−5から基本ファイルA中のファイルレコード
A−5を得る。
【0057】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードA−5を様式Aに従ってプログラム11の領域に
展開する。
ファイルレコード検索手段4により得られたファイルレ
コードA−5を様式Aに従ってプログラム11の領域に
展開する。
【0058】(2−3) 次に、”与えられたカレント
なファイルレコードの次のファイルレコードを求める”
処理の場合について説明する。
なファイルレコードの次のファイルレコードを求める”
処理の場合について説明する。
【0059】与えられたカレントなファイルレコードの
次のファイルレコードを求める場合、順読みであれば、
連鎖処理決定手段6は、pをカレントなポインタ部、
z’をカレントなインデックス値、処理Gを”ID=n
となるインデックス値z’の次に大きいインデックス値
のインデックスレコードを得る”処理とする。nは0で
ある。
次のファイルレコードを求める場合、順読みであれば、
連鎖処理決定手段6は、pをカレントなポインタ部、
z’をカレントなインデックス値、処理Gを”ID=n
となるインデックス値z’の次に大きいインデックス値
のインデックスレコードを得る”処理とする。nは0で
ある。
【0060】いま、仮想ファイルVABCで、ファイル
レコードC−3が読み込まれているとする。カレントな
インデックスレコードはインデックスレコードz3で、
インデックス値z’は3、ポインタ部は(2,C−3)
である。
レコードC−3が読み込まれているとする。カレントな
インデックスレコードはインデックスレコードz3で、
インデックス値z’は3、ポインタ部は(2,C−3)
である。
【0061】連鎖検索手段7は、r’にインデックス値
z’=3をセットし(ステップS1)、pがnullで
あるかどうかを判定する(ステップS2)。いま、pは
nullではないので、連鎖検索手段3は、処理H
(p,z’)を実行し(ステップS3)、インデックス
値3でカレントなポインタ部より大きいポインタ部が存
在しないので(ステップS4でノー)、処理G(n,
z’)を行う(ステップS5)。すると、ID=0で、
次に大きいインデックス値のインデックスレコードはイ
ンデックスレコードz5である。
z’=3をセットし(ステップS1)、pがnullで
あるかどうかを判定する(ステップS2)。いま、pは
nullではないので、連鎖検索手段3は、処理H
(p,z’)を実行し(ステップS3)、インデックス
値3でカレントなポインタ部より大きいポインタ部が存
在しないので(ステップS4でノー)、処理G(n,
z’)を行う(ステップS5)。すると、ID=0で、
次に大きいインデックス値のインデックスレコードはイ
ンデックスレコードz5である。
【0062】いま、順読みであるから、連鎖検索手段7
は、ポインタ部(0,A−4)を得る。
は、ポインタ部(0,A−4)を得る。
【0063】次に、ファイルレコード検索手段4は、連
鎖検索手段7により得られたポインタ部(0,A−4)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−4から基本ファイルA中のファイルレコード
A−4を得る。
鎖検索手段7により得られたポインタ部(0,A−4)
からID=0に該当する基本ファイルAを確定し、ポイ
ンタ値A−4から基本ファイルA中のファイルレコード
A−4を得る。
【0064】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードA−4を様式Aに従ってプログラム11の領域に
展開する。
ファイルレコード検索手段4により得られたファイルレ
コードA−4を様式Aに従ってプログラム11の領域に
展開する。
【0065】(2−4) ”仮想ファイルVABCでフ
ァイルレコードA−4が読み込まれているときにその前
のファイルレコードを読もうとする”処理の場合につい
て説明する。
ァイルレコードA−4が読み込まれているときにその前
のファイルレコードを読もうとする”処理の場合につい
て説明する。
【0066】仮想ファイルVABCでファイルレコード
A−4が読み込まれているときにその前のファイルレコ
ードを読もうとする場合には、カレントなインデックス
レコードはインデックスレコードz5で、インデックス
値z’は5、ポインタ部qは(0,A−4)である。
A−4が読み込まれているときにその前のファイルレコ
ードを読もうとする場合には、カレントなインデックス
レコードはインデックスレコードz5で、インデックス
値z’は5、ポインタ部qは(0,A−4)である。
【0067】連鎖処理決定手段6は、要求された機能に
基づき(図6参照)、処理Hは逆読み処理、処理GはI
D=0を含むインデックス値z’より次に小さいインデ
ックス値のインデックスレコードを求める処理とする。
基づき(図6参照)、処理Hは逆読み処理、処理GはI
D=0を含むインデックス値z’より次に小さいインデ
ックス値のインデックスレコードを求める処理とする。
【0068】次に、連鎖検索手段7は、カレントなイン
デックス値z’をr’にセーブし(ステップS1)、カ
レントなポインタ部pがnullであるかどうかを判定
する(ステップS2)。いま、pがnullでないの
で、連鎖検索手段7は、処理H(p,z’)を実行し
(ステップS3)、インデックス値5でカレントなポイ
ンタ部より小さいポインタ部が存在しないので(ステッ
プS4でノー)、処理G(n,z’)を行う(ステップ
S5)。すると、ID=0を含み、次に小さいインデッ
クス値のインデックスレコードはインデックスレコード
z3である。連鎖検索手段7は、z’を読み込んだキー
値として(ステップS9)、ポインタ部決定処理S10
を実行する。
デックス値z’をr’にセーブし(ステップS1)、カ
レントなポインタ部pがnullであるかどうかを判定
する(ステップS2)。いま、pがnullでないの
で、連鎖検索手段7は、処理H(p,z’)を実行し
(ステップS3)、インデックス値5でカレントなポイ
ンタ部より小さいポインタ部が存在しないので(ステッ
プS4でノー)、処理G(n,z’)を行う(ステップ
S5)。すると、ID=0を含み、次に小さいインデッ
クス値のインデックスレコードはインデックスレコード
z3である。連鎖検索手段7は、z’を読み込んだキー
値として(ステップS9)、ポインタ部決定処理S10
を実行する。
【0069】ポインタ部決定処理S10では、連鎖検索
手段7は、インデックス値がカレントなインデックス値
3からインデックス値5に変わったので(ステップS1
6でノー)、qにID=0の先頭ポインタ部を設定し
(ステップS24)、ポインタ部発見処理S25を実行
する。逆読み処理なので、次のような処理を行う。
手段7は、インデックス値がカレントなインデックス値
3からインデックス値5に変わったので(ステップS1
6でノー)、qにID=0の先頭ポインタ部を設定し
(ステップS24)、ポインタ部発見処理S25を実行
する。逆読み処理なので、次のような処理を行う。
【0070】ポインタ部発見処理25では、連鎖検索手
段7は、まず、インデックスレコードz3のポインタ部
の個数Lが、図1(b)に例示する複数ファイルインデ
ックスzのデータで見ると5であるので、2番目のポイ
ンタ部(0,A−3)をpにセットする(ステップS3
1)。pのIDとqのIDとはそれぞれ0であるから、
その差は1以下なので(ステップS34でノー)、qに
ポインタ部(0,A−3)をセットし(ステップS3
5)、次のポインタ部(1,B−3)とのIDの比較を
行う。これを繰り返すと、インデックスレコードz3の
場合、最後のポインタ部である(2,C−3)が得られ
る。
段7は、まず、インデックスレコードz3のポインタ部
の個数Lが、図1(b)に例示する複数ファイルインデ
ックスzのデータで見ると5であるので、2番目のポイ
ンタ部(0,A−3)をpにセットする(ステップS3
1)。pのIDとqのIDとはそれぞれ0であるから、
その差は1以下なので(ステップS34でノー)、qに
ポインタ部(0,A−3)をセットし(ステップS3
5)、次のポインタ部(1,B−3)とのIDの比較を
行う。これを繰り返すと、インデックスレコードz3の
場合、最後のポインタ部である(2,C−3)が得られ
る。
【0071】ファイルレコード検索手段4は、連鎖検索
手段3により得られたポインタ部(2,C−3)からI
D=2に該当する基本ファイルCを確定し、基本ファイ
ルC中のファイルレコードC−3を得る。
手段3により得られたポインタ部(2,C−3)からI
D=2に該当する基本ファイルCを確定し、基本ファイ
ルC中のファイルレコードC−3を得る。
【0072】続いて、ファイルレコード出力手段5は、
ファイルレコード検索手段4により得られたファイルレ
コードC−3を仮想ファイルVABCの定義情報の様式
Cに従ってプログラム11の領域に展開する。
ファイルレコード検索手段4により得られたファイルレ
コードC−3を仮想ファイルVABCの定義情報の様式
Cに従ってプログラム11の領域に展開する。
【0073】
【発明の効果】以上説明したように本発明は、仮想ファ
イルに対する検索要求を解析し併合検索と連鎖検索との
いずれの検索を行うかを判定する統合方式認識手段と、
統合方式認識手段により連鎖検索を行うと判定されたと
きに連鎖検索のための処理を決定する連鎖処理決定手段
と、連鎖処理決定手段により決定された処理に従って前
記複数ファイルインデックスのインデックスレコードを
使用して連鎖検索を行う連鎖検索手段とを設けたことに
より、併合検索に用いるのと同一の複数ファイルインデ
ックスを使用して連鎖検索を行うことができるという効
果がある。
イルに対する検索要求を解析し併合検索と連鎖検索との
いずれの検索を行うかを判定する統合方式認識手段と、
統合方式認識手段により連鎖検索を行うと判定されたと
きに連鎖検索のための処理を決定する連鎖処理決定手段
と、連鎖処理決定手段により決定された処理に従って前
記複数ファイルインデックスのインデックスレコードを
使用して連鎖検索を行う連鎖検索手段とを設けたことに
より、併合検索に用いるのと同一の複数ファイルインデ
ックスを使用して連鎖検索を行うことができるという効
果がある。
【0074】また、統合方式認識手段により連鎖検索と
併合検索とを動的に切り替えることができるという効果
がある。
併合検索とを動的に切り替えることができるという効果
がある。
【図1】本発明の一実施例に係る仮想ファイルの検索方
式の構成を示すブロック図,複数ファイルインデックス
および基本ファイルのデータ例ならびにインデックスレ
コードの内容を示す図である。
式の構成を示すブロック図,複数ファイルインデックス
および基本ファイルのデータ例ならびにインデックスレ
コードの内容を示す図である。
【図2】図1中の連鎖検索手段の処理を示す流れ図であ
る。
る。
【図3】図2中のポインタ部決定処理を詳細に示す流れ
図である。
図である。
【図4】図3中のポインタ部発見処理を詳細に示す流れ
図である。
図である。
【図5】図1中の併合検索手段の処理を示す流れ図であ
る。
る。
【図6】図1中の連鎖処理決定手段が要求された機能に
基づいて決定する処理の具体例を示す図である。
基づいて決定する処理の具体例を示す図である。
【図7】仮想ファイルの定義例ならびに連鎖検索および
併合検索で得られるファイルレコードを例示する図であ
る。
併合検索で得られるファイルレコードを例示する図であ
る。
1 統合方式認識手段 2 併合処理決定手段 3 併合検索手段 4 ファイルレコード検索手段 5 ファイルレコード出力手段 6 連鎖処理決定手段 7 連鎖検索手段 10 データベース 11 プログラム A,B,C 基本ファイル z 複数ファイルインデックス
Claims (1)
- 【請求項1】 データベースシステムの複数の基本ファ
イルからなる仮想ファイルを検索する検索方式におい
て、 インデックスレコードのポインタ部を仮想ファイルを構
成する基本ファイルのIDと基本ファイル中のファイル
レコードに対するポインタ値とする複数ファイルインデ
ックスと、 仮想ファイルに対する検索要求を解析し併合検索と連鎖
検索とのいずれの検索を行うかを判定する統合方式認識
手段と、 この統合方式認識手段により併合検索を行うと判定され
たときに併合検索のための処理を決定する併合処理決定
手段と、 この併合処理決定手段により決定された処理に従って前
記複数ファイルインデックスのインデックスレコードを
使用して併合検索を行う併合検索手段と、 前記統合方式認識手段により連鎖検索を行うと判定され
たときに連鎖検索のための処理を決定する連鎖処理決定
手段と、 この連鎖処理決定手段により決定された処理に従って前
記複数ファイルインデックスのインデックスレコードを
使用して連鎖検索を行う連鎖検索手段と、 前記併合検索手段および前記連鎖検索手段により得られ
た複数ファイルインデックスのインデックスレコードを
使用してファイルレコードを検索するファイルレコード
検索手段と、 このファイルレコード検索手段により検索されたファイ
ルレコードを仮想ファイルの様式に展開するファイルレ
コード出力手段とを有することを特徴とする仮想ファイ
ルの検索方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4056239A JPH05216938A (ja) | 1992-02-06 | 1992-02-06 | 仮想ファイルの検索方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4056239A JPH05216938A (ja) | 1992-02-06 | 1992-02-06 | 仮想ファイルの検索方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05216938A true JPH05216938A (ja) | 1993-08-27 |
Family
ID=13021548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4056239A Pending JPH05216938A (ja) | 1992-02-06 | 1992-02-06 | 仮想ファイルの検索方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05216938A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004531831A (ja) * | 2001-06-22 | 2004-10-14 | ワンダーウェア コーポレイション | 時系列なリアルタイムのデータおよび非リアルタイムのデータを収集し検索する方法およびシステム |
US10321167B1 (en) | 2016-01-21 | 2019-06-11 | GrayMeta, Inc. | Method and system for determining media file identifiers and likelihood of media file relationships |
US10719492B1 (en) | 2016-12-07 | 2020-07-21 | GrayMeta, Inc. | Automatic reconciliation and consolidation of disparate repositories |
-
1992
- 1992-02-06 JP JP4056239A patent/JPH05216938A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004531831A (ja) * | 2001-06-22 | 2004-10-14 | ワンダーウェア コーポレイション | 時系列なリアルタイムのデータおよび非リアルタイムのデータを収集し検索する方法およびシステム |
US10321167B1 (en) | 2016-01-21 | 2019-06-11 | GrayMeta, Inc. | Method and system for determining media file identifiers and likelihood of media file relationships |
US10719492B1 (en) | 2016-12-07 | 2020-07-21 | GrayMeta, Inc. | Automatic reconciliation and consolidation of disparate repositories |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6154737A (en) | Document retrieval system | |
US5357431A (en) | Character string retrieval system using index and unit for making the index | |
US20030061244A1 (en) | System and method for database query optimization | |
JPH05216938A (ja) | 仮想ファイルの検索方式 | |
JPH08235033A (ja) | オブジェクト指向データベース管理システムにおける結合演算方式 | |
JPH07210569A (ja) | 情報検索方法および情報検索装置 | |
JPH06139280A (ja) | ファイル管理システム | |
JP2842413B2 (ja) | データベース検索方法およびその装置 | |
JP3183252B2 (ja) | データベース検索システム | |
JPH05314188A (ja) | 範囲をもつデータの検索処理方式 | |
EP3660694B1 (en) | A method of structuring and querying a database | |
US20040193589A1 (en) | Key word frequency calculation method and program for carrying out the same | |
JPH01248233A (ja) | データベース検索装置 | |
JP3374946B2 (ja) | 検索装置 | |
JP2943744B2 (ja) | データベース検索システム | |
JPH04241672A (ja) | 文字列検索方式 | |
JPH1091493A (ja) | データベースの構築方法 | |
JP2666703B2 (ja) | データユニット構成レコード突合方式 | |
JPH04337867A (ja) | データベース検索システム | |
JPH04373071A (ja) | データ検索装置 | |
JPH10320403A (ja) | 検索式作成方法、検索式作成装置、及び記録媒体 | |
JPH0452967A (ja) | 集合ファイルに対する論理積演算処理方式 | |
JPH06119214A (ja) | リレーショナルデータベースシステム | |
JPH04102172A (ja) | 情報検索方式 | |
JPH05266078A (ja) | データ検索方式 |