JPH06131392A - データベースシステム - Google Patents
データベースシステムInfo
- Publication number
- JPH06131392A JPH06131392A JP2405642A JP40564290A JPH06131392A JP H06131392 A JPH06131392 A JP H06131392A JP 2405642 A JP2405642 A JP 2405642A JP 40564290 A JP40564290 A JP 40564290A JP H06131392 A JPH06131392 A JP H06131392A
- Authority
- JP
- Japan
- Prior art keywords
- comparisons
- cost
- comparison
- search
- order
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
- G06F16/24545—Selectivity estimation or determination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24542—Plan optimisation
-
- Y—GENERAL 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
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Operations Research (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
[目的] 本発明はデータベースの照会の実行速度を速
めるシステムに向けられている。 [構成] データベースシステムは、それぞれが1つあ
るいはそれ以上のフィールドからなる一連のレコードの
形のデータを保持している。データベースは探索照会に
よって問い合わせられ、その探索照会は各レコードの特
定のフィールドに関してなされるべき比較の特別な論理
的組合せを特定する。探索が始まる前に、探索照会は最
適化されたシーケンスの探索コードを生じさせるように
コンパイルされる。各比較演算には、所望のフィールド
を検索しかつそれら比較を行うように時間的にコストに
反映させてそのコストを割当て、かつ比較が真の結果を
生じさせる可能性を指示してその確率を割当てる。次い
で、探索照会の各論理演算が、最少の見込コストを与え
るその引数を処理する順序を見いだすように実行され、
それら引数はその順序に再配列される。
めるシステムに向けられている。 [構成] データベースシステムは、それぞれが1つあ
るいはそれ以上のフィールドからなる一連のレコードの
形のデータを保持している。データベースは探索照会に
よって問い合わせられ、その探索照会は各レコードの特
定のフィールドに関してなされるべき比較の特別な論理
的組合せを特定する。探索が始まる前に、探索照会は最
適化されたシーケンスの探索コードを生じさせるように
コンパイルされる。各比較演算には、所望のフィールド
を検索しかつそれら比較を行うように時間的にコストに
反映させてそのコストを割当て、かつ比較が真の結果を
生じさせる可能性を指示してその確率を割当てる。次い
で、探索照会の各論理演算が、最少の見込コストを与え
るその引数を処理する順序を見いだすように実行され、
それら引数はその順序に再配列される。
Description
【0001】
【産業上の利用分野】本発明はデータベースシステムに
関する。より詳細には、このようなシステムで照会を処
理するための方法および装置に関する。
関する。より詳細には、このようなシステムで照会を処
理するための方法および装置に関する。
【0002】
【従来の技術】一般的に、データベースシステムは、そ
れぞれが多数のフィールドからなるレコードの形のデー
タを記憶する。このようなシステムでデータをアクセス
する一つの方法は、特定の探索照会と一致するレコード
に対してデータベースを探索することである。探索照会
は各レコードの特定のフィールドについてなされなけれ
ばならない比較演算の特別な論理的な組合せから構成さ
れてもよく、その場合1つのレコードは論理的な組合せ
がそのレコードに対して「真」値となった場合のみ検索
される。
れぞれが多数のフィールドからなるレコードの形のデー
タを記憶する。このようなシステムでデータをアクセス
する一つの方法は、特定の探索照会と一致するレコード
に対してデータベースを探索することである。探索照会
は各レコードの特定のフィールドについてなされなけれ
ばならない比較演算の特別な論理的な組合せから構成さ
れてもよく、その場合1つのレコードは論理的な組合せ
がそのレコードに対して「真」値となった場合のみ検索
される。
【0003】
【発明が解決しようとする課題】このような構成に付随
した問題点は、もし照会が極めて複雑であれば、各レコ
ードの処理時間が長くなることであり、このため探索照
会の実行は極めて遅くなってしまう。本発明の目的はこ
の問題点を軽減することである。
した問題点は、もし照会が極めて複雑であれば、各レコ
ードの処理時間が長くなることであり、このため探索照
会の実行は極めて遅くなってしまう。本発明の目的はこ
の問題点を軽減することである。
【0004】
【課題を解決しようとする手段】本発明によれば、一連
のレコードからなるデータベースを記憶するための手段
と、各レコードに関して行われなければならない比較の
論理的な組合せからなる探索照会で上記データベースを
問い合わせるための手段とを含んだデータベースシステ
ムにおいて、上記探索照会の実行を最適化するために上
記比較の順序を再配列するための手段を設けたことを特
徴とするデータベースシステムが与えられる。探索照会
を最適化することによって、各レコードに対する処理時
間は短縮され、このため照会の全体の実行速度は速めら
れる。探索照会の最適化は、例えば探索が実際実行され
る前に照会翻訳プロセスの一部として、一度だけ行われ
るという点に留意されたい。従って、探索が実行される
時に、この最適化プロセスは実行時間にコストがかから
ないようにする。
のレコードからなるデータベースを記憶するための手段
と、各レコードに関して行われなければならない比較の
論理的な組合せからなる探索照会で上記データベースを
問い合わせるための手段とを含んだデータベースシステ
ムにおいて、上記探索照会の実行を最適化するために上
記比較の順序を再配列するための手段を設けたことを特
徴とするデータベースシステムが与えられる。探索照会
を最適化することによって、各レコードに対する処理時
間は短縮され、このため照会の全体の実行速度は速めら
れる。探索照会の最適化は、例えば探索が実際実行され
る前に照会翻訳プロセスの一部として、一度だけ行われ
るという点に留意されたい。従って、探索が実行される
時に、この最適化プロセスは実行時間にコストがかから
ないようにする。
【0005】
【実施例】本発明に従った一つのデータ処理システムを
添付図面に関連して一例として次に記載する。
添付図面に関連して一例として次に記載する。
【0006】図1において、データ処理システムはホス
トコンピュータ10と探索プロセッサ11とを含んでいる。
探索プロセッサはバス13により多数のディスク駆動ユニ
ット12に接続されている。
トコンピュータ10と探索プロセッサ11とを含んでいる。
探索プロセッサはバス13により多数のディスク駆動ユニ
ット12に接続されている。
【0007】ディスク駆動ユニット12は1つあるいはそ
れ以上のファイルからなるリレーショナルデータベース
を保持する。各ファイルは、それぞれが1つあるいはそ
れ以上のフィールドからなる一連のレコードから構成さ
れる。各フィールドは数値あるいはテキストのいずれか
を表し、それは固定長あるいは可変長のいずれであって
もよい。固定長フィールドの場合、全てのレコードにお
いてフィールドの長さは同一であるが、可変長フィール
ドの場合は、レコード対レコードで変化する。可変長フ
ィールドの長さは、例えばフィールドの初めに設けられ
た長さコードから計算可能である。
れ以上のファイルからなるリレーショナルデータベース
を保持する。各ファイルは、それぞれが1つあるいはそ
れ以上のフィールドからなる一連のレコードから構成さ
れる。各フィールドは数値あるいはテキストのいずれか
を表し、それは固定長あるいは可変長のいずれであって
もよい。固定長フィールドの場合、全てのレコードにお
いてフィールドの長さは同一であるが、可変長フィール
ドの場合は、レコード対レコードで変化する。可変長フ
ィールドの長さは、例えばフィールドの初めに設けられ
た長さコードから計算可能である。
【0008】動作にあって、ホストコンピュータ10は1
つあるいはそれ以上の応用プログラム14からなるシステ
ムの主処理ワークロードを実行する。応用プログラム
は、当該データベースで実行されるべき探索を指定し
て、探索照会を発生するようなものであってもよい。各
探索照会は照会コンパイラ15によって処理され、一連の
探索命令を発生する。これら探索命令は探索プロセッサ
11に与えられて実行される。
つあるいはそれ以上の応用プログラム14からなるシステ
ムの主処理ワークロードを実行する。応用プログラム
は、当該データベースで実行されるべき探索を指定し
て、探索照会を発生するようなものであってもよい。各
探索照会は照会コンパイラ15によって処理され、一連の
探索命令を発生する。これら探索命令は探索プロセッサ
11に与えられて実行される。
【0009】1つの探索照会は1つのファイルの各レコ
ードに対して行われるべき比較演算の1つの組合せから
なる。例えば、照会は((C1 AND C2) OR
C3) AND (C4 OR C5)の形であって
もよい。ここで、C1−−C5は個々の比較演算を表
す。各演算はレコードの1つの特定のフィールドを予め
定められた探索キーと比較することを含んでもよく、あ
るいはレコード内の2つの異なったフィールドを比較す
ることを含んでもよい。
ードに対して行われるべき比較演算の1つの組合せから
なる。例えば、照会は((C1 AND C2) OR
C3) AND (C4 OR C5)の形であって
もよい。ここで、C1−−C5は個々の比較演算を表
す。各演算はレコードの1つの特定のフィールドを予め
定められた探索キーと比較することを含んでもよく、あ
るいはレコード内の2つの異なったフィールドを比較す
ることを含んでもよい。
【0010】照会コンパイラ 次に、図2は照会コンパイラ15をより詳細に示す。照会
コンパイラ15の最初のステップ20は照会を分析し、その
照会の論理構造を表すシンタックスツリーを作る。
コンパイラ15の最初のステップ20は照会を分析し、その
照会の論理構造を表すシンタックスツリーを作る。
【0011】例えば、照会((C1 AND C2)
OR C3) AND (C4 OR C5)は図3に
示されるようなツリー構造を生じさせる。このシンタッ
クスツリーはブランチで相互接続された一組のノードか
らなる。各ノードは比較(C1、C2等)あるいは論理
演算(AND、OR)のいずれかを表す。各ノードは以
下のアイテムを含んだデータ構造としてコンパイラによ
って表される。すなわち、「オペレータ形式(AND、
OR、比較)」、「ブランチ数(すなわちサブノード
群)」、「最も左のブランチ(ポインタからサブノード
へ)」、「他のブランチ(ポインタからサブノード
へ)」である。
OR C3) AND (C4 OR C5)は図3に
示されるようなツリー構造を生じさせる。このシンタッ
クスツリーはブランチで相互接続された一組のノードか
らなる。各ノードは比較(C1、C2等)あるいは論理
演算(AND、OR)のいずれかを表す。各ノードは以
下のアイテムを含んだデータ構造としてコンパイラによ
って表される。すなわち、「オペレータ形式(AND、
OR、比較)」、「ブランチ数(すなわちサブノード
群)」、「最も左のブランチ(ポインタからサブノード
へ)」、「他のブランチ(ポインタからサブノード
へ)」である。
【0012】照会コンパイラの次のステップ21はコスト
設定サブルーチンをコールすることである。このコスト
設定サブルーチンはコストと各ノードの確率を割当て
る。1つのノードに割当てられたコストは、そのノード
が真あるいは偽の結果を生じるかどうかを設定する見込
コスト(処理時間での)の評価である。1つのノードに
割当てられた確率は真の結果の可能性である。
設定サブルーチンをコールすることである。このコスト
設定サブルーチンはコストと各ノードの確率を割当て
る。1つのノードに割当てられたコストは、そのノード
が真あるいは偽の結果を生じるかどうかを設定する見込
コスト(処理時間での)の評価である。1つのノードに
割当てられた確率は真の結果の可能性である。
【0013】後に、より詳細に記載するように、論理ノ
ード(AND、OR)のコストはそのブランチのコスト
および確率と、それらブランチが評価される順序に依存
する。コスト設定サブルーチンは、シンタックスツリー
のポインタを必要に応じて再配列し、最も少ないコスト
を与える順序になるようにブランチをソートして、それ
らブランチがこの順序で評価されるようにする。(1つ
の論理ノードのブランチは常に最も左のブランチから順
に評価されるものと想定する)。あるノードがn個のブ
ランチを有するならば、n!通りのブランチの順序決め
があり、コスト設定サブルーチンは最適な順列を決定す
る。
ード(AND、OR)のコストはそのブランチのコスト
および確率と、それらブランチが評価される順序に依存
する。コスト設定サブルーチンは、シンタックスツリー
のポインタを必要に応じて再配列し、最も少ないコスト
を与える順序になるようにブランチをソートして、それ
らブランチがこの順序で評価されるようにする。(1つ
の論理ノードのブランチは常に最も左のブランチから順
に評価されるものと想定する)。あるノードがn個のブ
ランチを有するならば、n!通りのブランチの順序決め
があり、コスト設定サブルーチンは最適な順列を決定す
る。
【0014】照会コンパイラの次のステップ22はコード
発生サブルーチンをコールすることである。このサブル
ーチンは特定のフィールドあるいはフィールド群を取出
して特定の比較を行うための命令を発生する。それは、
また、これら比較を特定の論理構造において互いにリン
クするようにジャンプ命令を挿入する。
発生サブルーチンをコールすることである。このサブル
ーチンは特定のフィールドあるいはフィールド群を取出
して特定の比較を行うための命令を発生する。それは、
また、これら比較を特定の論理構造において互いにリン
クするようにジャンプ命令を挿入する。
【0015】例えば、図3に示されたシンタックスツリ
ー構造を満たすために発生される命令は以下の表1の形
のものとなる。
ー構造を満たすために発生される命令は以下の表1の形
のものとなる。
【0016】
【表1】 論理的な組合せの演算を行うためのコンパイラルーチン
は公知であるため、コード発生サブルーチンを更に詳細
に記載することは不必要である。
は公知であるため、コード発生サブルーチンを更に詳細
に記載することは不必要である。
【0017】コスト設定サブルーチン 次に、図4はコスト設定サブルーチンをより詳細に示
す。これは最初に根元のノードに関してコールされ、次
で、シンタックスツリーの全体をスキャンしてこのツリ
ーの各ノードのプロセスを行うように再帰的にそれ自体
をコールする。
す。これは最初に根元のノードに関してコールされ、次
で、シンタックスツリーの全体をスキャンしてこのツリ
ーの各ノードのプロセスを行うように再帰的にそれ自体
をコールする。
【0018】40は、ノードの形式を試験し、それが比較
ノードであるかあるいは論理ノードであるかどうかに従
って分岐する最初の機能を示す。
ノードであるかあるいは論理ノードであるかどうかに従
って分岐する最初の機能を示す。
【0019】41は、比較ノードの場合に、そのノードに
コストの値と確率値を割当てることを示す。ある比較ノ
ードのコストはその比較のため必要なフィールド(フィ
ールド群)をアクセスするコストとその比較を実行する
コストとの和に等しい。1つのフィールドをアクセスす
るコストはレコードの構造に依存する。詳細には、1つ
あるいはそれ以上の可変長のフィールドが先行したフィ
ールドをアクセスするには、所望のフィールドの開始に
もたらすように全てのこれら先行したフィールドを順に
逐次的にアクセスする必要があるため、一般的により長
い時間を要する。一般的には、あるフィールドをアクセ
スするコストはa+nbで評価されることができ、ここ
で、aおよびbは常数であり、nは先行する可変長フィ
ールドの数である。比較を実行するコストは比較の形式
に依存する。「等しい」、「以上」あるいは「以下」と
いった簡単な比較は迅速に行われることができ、従って
低いコスト値に割当てられる。「含む」等のより複雑な
条件の比較はより長い時間がかかるため、比較的高いコ
スト値が割当てられる。
コストの値と確率値を割当てることを示す。ある比較ノ
ードのコストはその比較のため必要なフィールド(フィ
ールド群)をアクセスするコストとその比較を実行する
コストとの和に等しい。1つのフィールドをアクセスす
るコストはレコードの構造に依存する。詳細には、1つ
あるいはそれ以上の可変長のフィールドが先行したフィ
ールドをアクセスするには、所望のフィールドの開始に
もたらすように全てのこれら先行したフィールドを順に
逐次的にアクセスする必要があるため、一般的により長
い時間を要する。一般的には、あるフィールドをアクセ
スするコストはa+nbで評価されることができ、ここ
で、aおよびbは常数であり、nは先行する可変長フィ
ールドの数である。比較を実行するコストは比較の形式
に依存する。「等しい」、「以上」あるいは「以下」と
いった簡単な比較は迅速に行われることができ、従って
低いコスト値に割当てられる。「含む」等のより複雑な
条件の比較はより長い時間がかかるため、比較的高いコ
スト値が割当てられる。
【0020】比較ノードに割当てられる確率値は比較が
「真」の結果を生じるような可能性の評価である。この
評価は比較の成果の過去の経験に基づいてなされる。前
の成果についての情報がなんら存在しなければ、予め定
められたデフォルト値が使用される。典型的な値は以下
の表2の通りである。
「真」の結果を生じるような可能性の評価である。この
評価は比較の成果の過去の経験に基づいてなされる。前
の成果についての情報がなんら存在しなければ、予め定
められたデフォルト値が使用される。典型的な値は以下
の表2の通りである。
【0021】
【表2】
【0022】42は、論理ノードである場合に、コスト設
定ルーチンの次のステップが、そのノードから各ブラン
チに対して、それ自体への再帰的コールを行うことであ
るということを示す。これは、サブノードのそれぞれが
これらサブノードにコストと確率とを割当てるようにコ
スト設定サブルーチンにより処理されるといる結果にな
る。任意のサブノードがそれ自体論理ノードであるなら
ば、これがコスト設定サブルーチンへの更に入れ子形に
されたコールになり、比較ノードに達するまでそのよう
になることに留意されたい。
定ルーチンの次のステップが、そのノードから各ブラン
チに対して、それ自体への再帰的コールを行うことであ
るということを示す。これは、サブノードのそれぞれが
これらサブノードにコストと確率とを割当てるようにコ
スト設定サブルーチンにより処理されるといる結果にな
る。任意のサブノードがそれ自体論理ノードであるなら
ば、これがコスト設定サブルーチンへの更に入れ子形に
されたコールになり、比較ノードに達するまでそのよう
になることに留意されたい。
【0023】43は、論理ノードの全てのブランチが処理
されると、このノードのブランチがこの論理ノードのコ
ストを最少にするように再配置され、かつコストおよび
確率値が割当てられることを示す。
されると、このノードのブランチがこの論理ノードのコ
ストを最少にするように再配置され、かつコストおよび
確率値が割当てられることを示す。
【0024】ある論理ノードに対して、コストはそのブ
ランチ群のコストおよび確率とこれらブランチが評価さ
れる順序に依存する。簡単にするため、ここでただ2つ
のブランチが存在する場合を考える。3つあるいはそれ
以上のブランチへの拡大は明白である。
ランチ群のコストおよび確率とこれらブランチが評価さ
れる順序に依存する。簡単にするため、ここでただ2つ
のブランチが存在する場合を考える。3つあるいはそれ
以上のブランチへの拡大は明白である。
【0025】ANDノード ANDノードがコストc1.c2と確率p1.p2とを
有する2つのブランチを供えているものと想定する。ブ
ランチ1 が最初に評価されるとしたら、見込コストはc
1+p1.c2となる。他方ブランチ2 が最初に評価さ
れるならば、見込コストはc1+p2.c1となる。
有する2つのブランチを供えているものと想定する。ブ
ランチ1 が最初に評価されるとしたら、見込コストはc
1+p1.c2となる。他方ブランチ2 が最初に評価さ
れるならば、見込コストはc1+p2.c1となる。
【0026】コスト設定ルーチンは、これら2つの可能
な評価順序の内のどれが最も少ないコストを与えるかを
決定し、必要に応じてシンタックスツリー構造のポイン
タに渡ってスワップし、最も少ないコストを有するブラ
ンチが最も左のブランチとなるようにし、従って最初に
評価されるようにする。そのノードに割当てられるコス
トはこの最少のコスト値である。
な評価順序の内のどれが最も少ないコストを与えるかを
決定し、必要に応じてシンタックスツリー構造のポイン
タに渡ってスワップし、最も少ないコストを有するブラ
ンチが最も左のブランチとなるようにし、従って最初に
評価されるようにする。そのノードに割当てられるコス
トはこの最少のコスト値である。
【0027】比較結果が統計的に独立していると想定す
れば、ANDノードに割当てられる確率はp1.p2で
ある。
れば、ANDノードに割当てられる確率はp1.p2で
ある。
【0028】ORノード コストc1.c2と確率p1.p2とを有するORノー
ドを考える。ブランチ1 が最初に評価されるならば、見
込コストはc1+(1−p1)c2となり、他方ブラン
チ2 が最初に評価されるとしたら、見込コストはc2+
(1−p2)c1となる。
ドを考える。ブランチ1 が最初に評価されるならば、見
込コストはc1+(1−p1)c2となり、他方ブラン
チ2 が最初に評価されるとしたら、見込コストはc2+
(1−p2)c1となる。
【0029】前と同じように、コスト設定ルーチンは最
も少ないコストを与える評価の順序を決定し、必要に応
じてポインタに渡ってスワップし、最も少ないコストの
ブランチが最初に評価されるようにする。
も少ないコストを与える評価の順序を決定し、必要に応
じてポインタに渡ってスワップし、最も少ないコストの
ブランチが最初に評価されるようにする。
【0030】比較が統計的に独立しているものと想定す
れば、ORノードに割当てられる確率はp1+p2−p
1.p2となる。
れば、ORノードに割当てられる確率はp1+p2−p
1.p2となる。
【0031】
【発明の効果】以上述べた本発明のデータベースシステ
ムによれば、探索照会は最適化され、それによって各レ
コードに対する処理時間は短縮され、このため照会の全
体の実行速度は速められる効果を有する。
ムによれば、探索照会は最適化され、それによって各レ
コードに対する処理時間は短縮され、このため照会の全
体の実行速度は速められる効果を有する。
【図1】本発明を実施するデータ処理システムを示す。
【図2】探索照会を最適化するためのコンパイラのフロ
ーチャートを示す。
ーチャートを示す。
【図3】探索照会を表すシンタックスツリーを示す。
【図4】コンパイラサブルーチンをより詳細に示す。
10 ホストコンピュータ 11 探索プロセッサ 12 ディスク駆動ユニット 13 バス 14 応用プログラム 15 コンパイラ
Claims (7)
- 【請求項1】 一連のレコードを含んだデータベースを
記憶するための手段(12)と各レコードに対して行われる
べき比較の論理的な組合せからなる探索照会で上記デー
タベースを問い合わせるための手段(11)とを備えたデー
タベースシステムにおいて、上記探索照会の実行を最適
化するために上記比較の順序を再配列するための手段(1
5)を具備したことを特徴とするデータベースシステム。 - 【請求項2】 上記比較の順序を再配列するための上記
手段は、(イ)比較のためにデータを検索しかつ比較を
実行するために必要な時間的なコストを指示して、上記
探索照会に関連した各比較に上記コストを割当てるため
の手段(42)と、(ロ)予め定められた結果を生じさせる
比較の可能性を指示して、各比較にその確率を割当てる
ための手段(43)と、(ハ)最少の見込コストを与える上
記比較を行う順序を見いだし、かつそれら比較をその順
序に再配列するための手段(43)とを含んだことを特徴と
する請求項1のデータベースシステム。 - 【請求項3】 上記探索照会を発生するためのホストコ
ンピュータを含んでおり、上記データベースを問い合わ
せるための上記手段は専用探索プロセッサ(11)を含んだ
ことを特徴とする請求項1のデータベースシステム。 - 【請求項4】 上記比較の順序を再配列するための上記
手段は上記ホストコンピュータ内のコンパイラ手段(15)
を含んだことを特徴とする請求項3のデータベースシス
テム。 - 【請求項5】 上記データベースを記憶するための上記
手段は複数のディスクファイルユニット(12)を含んだこ
とを特徴とする請求項1のデータベースシステム。 - 【請求項6】 比較の論理的な組合せからなる探索照会
をコンパイルして最適化されたシーケンスの探索指令を
生じさせる方法において、(イ)比較のためにデータを
検索しかつ比較を実行するために必要な時間的なコスト
を指示して、上記探索照会に関連した各比較に上記コス
トを割当てるステップと、(ロ)予め定められた結果を
生じさせる比較の可能性を指示して、各比較にその確率
を割当てるステップと、(ハ)最少の見込コストを与え
る上記比較を行う順序を見いだしかつそれら比較をその
順序に再配列するステップを含んだことを特徴とする上
記方法。 - 【請求項7】 上記比較の論理的な組合せはツリー構造
からなり、コストを各比較に割当てる上記ステップは上
記ツリーの根元から、上記ツリー構造の各ノードで再帰
的に行われることを特徴とする請求項7の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB898929158A GB8929158D0 (en) | 1989-12-23 | 1989-12-23 | Database system |
GB8929158.7 | 1989-12-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06131392A true JPH06131392A (ja) | 1994-05-13 |
JP2859447B2 JP2859447B2 (ja) | 1999-02-17 |
Family
ID=10668481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2405642A Expired - Fee Related JP2859447B2 (ja) | 1989-12-23 | 1990-12-25 | データベースシステム |
Country Status (7)
Country | Link |
---|---|
US (1) | US5794227A (ja) |
EP (1) | EP0435476B1 (ja) |
JP (1) | JP2859447B2 (ja) |
AU (1) | AU633670B2 (ja) |
DE (1) | DE69031904T2 (ja) |
GB (1) | GB8929158D0 (ja) |
ZA (1) | ZA909851B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004515837A (ja) * | 2000-07-17 | 2004-05-27 | シーメンス アクチエンゲゼルシヤフト | サーチプロファイルの比較方法 |
WO2017221308A1 (ja) * | 2016-06-20 | 2017-12-28 | 三菱電機株式会社 | データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2124479A1 (en) * | 1993-06-30 | 1994-12-31 | Thaddeus Julius Kowalski | Methods and apparatus for optimizing decision making |
JP3322749B2 (ja) * | 1994-03-07 | 2002-09-09 | 株式会社ピーエフユー | データベース検索処理方式 |
US6026391A (en) * | 1997-10-31 | 2000-02-15 | Oracle Corporation | Systems and methods for estimating query response times in a computer system |
EP0973104A1 (de) * | 1998-07-17 | 2000-01-19 | Siemens Aktiengesellschaft | Misserfolgsmeldung bei versuchtem Datenbankzugriff |
US7206774B1 (en) | 2000-09-28 | 2007-04-17 | Microsoft Corporation | System and method for implementing a conditional payload server |
ATE299278T1 (de) * | 2003-06-04 | 2005-07-15 | Sap Ag | Methode und computersystem für die optimierung eines boolschen ausdrucks für anfragebearbeitung |
US20050119999A1 (en) * | 2003-09-06 | 2005-06-02 | Oracle International Corporation | Automatic learning optimizer |
US7877373B2 (en) * | 2006-06-30 | 2011-01-25 | Oracle International Corporation | Executing alternative plans for a SQL statement |
US8903801B2 (en) | 2007-09-14 | 2014-12-02 | Oracle International Corporation | Fully automated SQL tuning |
US8341178B2 (en) * | 2007-09-18 | 2012-12-25 | Oracle International Corporation | SQL performance analyzer |
US8600977B2 (en) * | 2007-10-17 | 2013-12-03 | Oracle International Corporation | Automatic recognition and capture of SQL execution plans |
US8655824B1 (en) | 2011-03-07 | 2014-02-18 | The Boeing Company | Global policy framework analyzer |
US9037568B1 (en) | 2013-03-15 | 2015-05-19 | Google Inc. | Factual query pattern learning |
US10621064B2 (en) | 2014-07-07 | 2020-04-14 | Oracle International Corporation | Proactive impact measurement of database changes on production systems |
US11386058B2 (en) | 2017-09-29 | 2022-07-12 | Oracle International Corporation | Rule-based autonomous database cloud service framework |
US11327932B2 (en) | 2017-09-30 | 2022-05-10 | Oracle International Corporation | Autonomous multitenant database cloud service framework |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4450520A (en) * | 1981-03-11 | 1984-05-22 | University Of Illinois Foundation | Method and system for matching encoded characters |
US4417305A (en) * | 1981-09-08 | 1983-11-22 | International Business Machines Corporation | Method for evaluating boolean expressions |
US4901232A (en) * | 1983-05-19 | 1990-02-13 | Data General Corporation | I/O controller for controlling the sequencing of execution of I/O commands and for permitting modification of I/O controller operation by a host processor |
US4829427A (en) * | 1984-05-25 | 1989-05-09 | Data General Corporation | Database query code generation and optimization based on the cost of alternate access methods |
US4703435A (en) * | 1984-07-16 | 1987-10-27 | International Business Machines Corporation | Logic Synthesizer |
JPS61137203A (ja) * | 1984-12-07 | 1986-06-24 | Hitachi Ltd | デイジタル情報記録再生装置 |
US4722071A (en) * | 1985-04-19 | 1988-01-26 | Pertron Controls, Corporation | Compiler for evaluating Boolean expressions |
US4918593A (en) * | 1987-01-08 | 1990-04-17 | Wang Laboratories, Inc. | Relational database system |
US4811199A (en) * | 1987-05-08 | 1989-03-07 | Kuechler William L | System for storing and manipulating information in an information base |
US5239663A (en) * | 1987-06-15 | 1993-08-24 | Centre National De La Recherche Scientifique | Self-adapting and multifunctional process and structure for the automated evaluation of logical or arithmetic expressions, particularly for extended database consultation |
JP2760794B2 (ja) * | 1988-01-29 | 1998-06-04 | 株式会社日立製作所 | データベース処理方法および装置 |
CA2003043C (en) * | 1988-11-18 | 1994-04-05 | Masataka Nakasuji | Information searching apparatus |
US5201048A (en) * | 1988-12-01 | 1993-04-06 | Axxess Technologies, Inc. | High speed computer system for search and retrieval of data within text and record oriented files |
-
1989
- 1989-12-23 GB GB898929158A patent/GB8929158D0/en active Pending
-
1990
- 1990-11-30 EP EP90313062A patent/EP0435476B1/en not_active Expired - Lifetime
- 1990-11-30 DE DE69031904T patent/DE69031904T2/de not_active Expired - Fee Related
- 1990-12-07 ZA ZA909851A patent/ZA909851B/xx unknown
- 1990-12-21 AU AU68374/90A patent/AU633670B2/en not_active Ceased
- 1990-12-25 JP JP2405642A patent/JP2859447B2/ja not_active Expired - Fee Related
-
1993
- 1993-03-09 US US08/028,627 patent/US5794227A/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004515837A (ja) * | 2000-07-17 | 2004-05-27 | シーメンス アクチエンゲゼルシヤフト | サーチプロファイルの比較方法 |
JP4868484B2 (ja) * | 2000-07-17 | 2012-02-01 | シーメンス アクチエンゲゼルシヤフト | サーチプロファイルの比較方法 |
WO2017221308A1 (ja) * | 2016-06-20 | 2017-12-28 | 三菱電機株式会社 | データ管理装置、データ管理方法、データ管理プログラム、検索装置、検索方法及び検索プログラム |
Also Published As
Publication number | Publication date |
---|---|
DE69031904D1 (de) | 1998-02-12 |
JP2859447B2 (ja) | 1999-02-17 |
ZA909851B (en) | 1991-10-30 |
AU6837490A (en) | 1991-06-27 |
GB8929158D0 (en) | 1990-02-28 |
EP0435476A3 (en) | 1993-03-24 |
EP0435476A2 (en) | 1991-07-03 |
AU633670B2 (en) | 1993-02-04 |
US5794227A (en) | 1998-08-11 |
EP0435476B1 (en) | 1998-01-07 |
DE69031904T2 (de) | 1998-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2859447B2 (ja) | データベースシステム | |
US6439783B1 (en) | Range-based query optimizer | |
US5454105A (en) | Document information search method and system | |
AU777792B2 (en) | System for managing RDBM fragmentations | |
JP3122185B2 (ja) | データベース検索プロセッサ | |
US6678687B2 (en) | Method for creating an index and method for searching an index | |
JP3771271B2 (ja) | コンパクト0完全木における順序付けられたキーの集まりの記憶と検索のための装置及び方法 | |
KR940004389B1 (ko) | 관계형 데이타베이스에 대한 액세스플랜 발생 방법 및 시스템 | |
US8626745B2 (en) | Multi-query optimization | |
Chu et al. | A transaction-based approach to vertical partitioning for relational database systems | |
US7062499B2 (en) | Enhanced multiway radix tree and related methods | |
US20050267902A1 (en) | Database and method of generating same | |
EP0442684A2 (en) | Joining selected data in tables of a relational data base system | |
WO2000051027A2 (en) | System and method for enhanced performance of a relational database management system | |
JPH06214843A (ja) | データベース管理システムおよび問合せの処理方法 | |
CN114090695A (zh) | 分布式数据库的查询优化的方法和装置 | |
US5898874A (en) | Dynamic codeset translation environment | |
US7010539B1 (en) | System and method for schema method | |
US20020040357A1 (en) | Configurable pattern recognition and filtering tool | |
JP2000090115A (ja) | インデクス作成方法および検索方法 | |
JPH0773187A (ja) | 検索システム | |
JPH05313971A (ja) | リレーショナル・データベースにおけるキーワード管理方式 | |
JP2722684B2 (ja) | ファイルシステムの検索装置 | |
CN114416086A (zh) | Web交互界面对象的识别操作方法、装置和存储介质 | |
JPH0423167A (ja) | コマンド検索方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19981104 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |