JPH06195248A - 関係データベース管理システムからの問合せの最適化援助方法 - Google Patents

関係データベース管理システムからの問合せの最適化援助方法

Info

Publication number
JPH06195248A
JPH06195248A JP5251797A JP25179793A JPH06195248A JP H06195248 A JPH06195248 A JP H06195248A JP 5251797 A JP5251797 A JP 5251797A JP 25179793 A JP25179793 A JP 25179793A JP H06195248 A JPH06195248 A JP H06195248A
Authority
JP
Japan
Prior art keywords
query
inquiry
rdbms
tree
execution plan
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
Application number
JP5251797A
Other languages
English (en)
Other versions
JP2510945B2 (ja
Inventor
Eric Vachey
エリツク・バシエー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull SAS
Original Assignee
Bull SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bull SAS filed Critical Bull SAS
Publication of JPH06195248A publication Critical patent/JPH06195248A/ja
Application granted granted Critical
Publication of JP2510945B2 publication Critical patent/JP2510945B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24537Query rewriting; Transformation of operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2428Query predicate definition using graphical user interfaces, including menus and forms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24542Plan optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24547Optimisations to support specific applications; Extensibility of optimisers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Operations Research (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 関係データベース管理システムにおいて問合
せの処理速度を向上させる。 【構成】 本発明の方法は、関係データベース管理シス
テム(RDBMS)の問合せ言語で書込まれた問合せ1
0の実行プランの探索に基づいて問合わせの実行プラン
を示すトリー26を作成し且つトリーをワークステーシ
ョンのビデオ画面25上に視覚表示することからなる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、一般に頭文字RDBM
Sで知られている関係データベース管理システムからの
問合せの最適化援助方法に関する。本発明は特にRDB
MSの管理に適用される。
【0002】
【従来の技術】データベースは、所与の領域をモデル化
する総合データセットであると定義され得る。種々のア
プリケーションで使用されるデータは、データ重複の問
題を避けるように同一のベースに統合される。データベ
ースが含んでいるデータの構造及び型並びに常に検査せ
ねばならない制約を記載する概念スキーマはデータベー
スに関係している。データベース管理者の任務は、これ
らの制約の検査を確実に行うことである。
【0003】データ管理には3つの役割がある。まず、
データ管理は、ユーザに名称、パスワード及びデータア
クセスへの特権又は権利全体を割当てて、データベース
のユーザを限定する。データ管理は更に一人以上の管理
者を限定する。彼らはデータベースの管理を全て又は一
部分行う資格を持った人物である。管理の第2の役割
は、管理者にデータベースの概念スキーマの定義を割当
てるか又は管理者をこの定義に参加させることである。
従って、管理者は種々のテーブルのスキーマ及びこれら
のテーブルに関する規則を定義する。最後の役割では、
管理者はベース及びRDBMSの概念スキーマから性
能、保全性及び安全性の点で益を得ることができる。本
質的に本発明の目的となるのはこの第3の役割である。
【0004】
【発明が解決しようとする課題】RDBMSアプリケー
ションの展開時での管理者の役割はRDBMSのリソー
スの使用を最適化することである。アプリケーション時
に問合せが出されると、RDBMSは問合せ実行のため
のアクセスルートを選択する。アプリケーションの性能
を最適化するために、管理者は、送信された問合せを分
析し且つとるべき行動を決定せねばならない。管理者の
行動は、問合せの形態を変更し且つ/又は関連するテー
ブルに索引を作成するか若しくは索引を削除することで
あり得る。管理者の決定は、問合わせの現在の形態が適
切であるかどうか又は既存の索引が適切であるかどうか
を管理者に指摘する情報に依存する。
【0005】索引はデータから物理的に独立しているの
で、いつでも削除及び作成することができる。索引は、
誰が索引を作成したにせよ、データアクセス時に使用さ
れる。テーブルは同時に複数の索引を有し得る。索引数
と索引の更新に伴うオーバヘッドとの間で妥協を見つけ
ねばならない。索引は1つ以上のカラムに適用され得
る。この場合、索引は使用されるカラムの単一性を確保
し得る。索引は更に、選択条件が1つ以上のカラムに関
係する問合せの性能を改善する。1つ以上の述語を含む
問合せは、索引が単一(unique)ならば、また述
語が同等であり、同一のテーブルで定義されるならば、
多数の索引を使用することができる。この場合、各索引
から得られた部分結果は、最終結果を構成するために併
合される。どの索引をとるか決定し且つ併合操作を避け
るために索引の特性とカラムの特徴とを使用できるRD
BMSもある。索引を使用するかどうかは、RDBMS
の最適化装置(optimiser)によって決定す
る。決定はRDBMSの型によって異なる。
【0006】他方では、RDBMSのスキーマは動的に
展開し得る。例えば1つ以上のフィールドをテーブルに
付加してもよいし、テーブルに索引を作成してもよい。
このような状況ではRDBMSが、RDBMSが使用せ
ねばならない索引に出会わないか又は例えば10%以上
の項目にアクセスするならばRDBMSが使用してはな
らない索引に出会うことがあり得る。後者の場合、索引
は妨げになる。プランを作成するためにRDBMSのあ
らゆる選択の可能性を考慮すれば、リソースの使用は問
合せの式(formula)及び索引の選択に応じて1
〜10,000の割合で変動し得ると推測される。
【0007】現在、問合せの最適化は複雑である。ま
ず、最適化は自動的ではなく、問合せの実行プランを要
求するには特定のRDBMSツールを使用せねばならな
い。このプランは、問合せ処理のためにデータベースサ
ーバによって実行されるべきオペレーションの連結であ
る。このプランを要求するために、ユーザはRDBMS
の言語で問合せを書込まねばならない。従って問合せを
書込むにはRDBMSの問合せ言語を熟知していなけれ
ばならない。更には、書込みは厳密且つ困難な作業であ
り、結果として生じる誤りの危険性によって更に時間損
失が大きくなる。応答時にRDBMSは、問合せの実行
プランの要求の結果をRDBMSによって異なり得る形
態で提供する。プランはRDBMSの問合せ言語で書込
まれ、一般に例えば多数のカラムを含む長いテーブルの
形態で示される。テーブルは線形モードで書込まれ、画
面上にはページ毎でしか表示されない。従ってテーブル
の分析は非常に複雑で、ユーザは通常テーブルの用紙へ
のプリントアウトを要求してタスクを楽にする。これ
は、ユーザが端末の特定の全ての印刷方法を遂行せねば
ならないことを意味している。プリントアウトはページ
毎に行い、各ページでカラムの見出しを繰り返す。従っ
て、管理者は問合せ処理の階層をコード化言語で解読
し、且つ種々のページの多数のカラム及び多数の無秩序
なラインの分析によってプランを復元せねばならない。
このため探索は長く、困難になる。更には、管理者は、
通常長すぎて得ることができず、得られる利点に比べて
欠点の多すぎる利用可能なプランのグローバルビューを
もっていない。しかしながら管理者は、問合せの最適化
方法を決定するためにこの欠点をどうにか克服せねばな
らない。管理者は例えば問合せを変更すれば、変更後の
問合せを書込んで、新しいテーブルを分析し、これを古
いテーブルと比較せねばならない。分析テーブルを作成
するために使用するツールは前のテーブルをメモリに保
管せず、従ってこれを新しいテーブルと比較するには、
古いテーブルを参照できるようにプリントアウトせねば
ならない。従って実際には比較は、2つのテーブルの長
く困難な分析を収集することからなる。最後に管理者に
は、処理で使用するオブジェクトに関する情報の視覚表
示が欠如している。このような状況では、熟練した管理
者であっても、問合せの最適化を速やかに実現すること
は困難であることが分かる。
【0008】本発明の目的は、問合せの処理を迅速且つ
低コストで最適化できるように、問合せの実行プランの
視覚表示及び翻訳を更に容易にすることである。好まし
くは本発明の他の目的は、問合せのオブジェクトに関す
る追加情報を提供することである。本発明の他の任意の
目的は、RDBMSの問合せ言語の専門家でもないユー
ザを簡単且つ迅速に支援して、問合せの実行のより良い
最適化を実現することである。
【0009】
【課題を解決するための手段】本発明は、RDBMSの
問合せ言語で書込まれた問合せの実行プランの探索を含
み、前記探索に基づいて、問合わせの実行プランを示す
トリーを作成し且つトリーを画面上に表示することから
なることを特徴とするRDBMSの問合せの最適化援助
方法に関する。
【0010】本方法には、問合せの実行プランをグラフ
表示し且つ最適化装置及びRDBMSの問合せ言語から
独立しているという2つの利点がある。本方法の好まし
い変形例によれば、この最適化援助は、RDBMSの問
合せ言語を知らないユーザに提供され得る。
【0011】
【実施例】添付図面を参照して以下の実施例の説明を読
めば本発明の特徴及び利点が明白となろう。
【0012】簡単明瞭にするために、以下の説明はOr
acle Corporation社のOracle
V6の登録商標で知られ、標準サイズの言語SQL(S
tructured Query Language)
を使用し、Unix(American Teleph
one and Telegraphの登録商標)ステ
ーションで走行するRDBMSの非制限的な一例に関す
る。図示する実施例は、このRDBMSのSELECT
型問合せに関する。以下の実施例はこのRDBMSのこ
の型にも他のRDBMSにも限定されない。
【0013】Oracleの機能体系は4つの同心層か
ら構成されている。層は中心から順番に、コア、ディク
ショナリ、SQL層及び外層である。最初の3つの層を
基本層と呼ぶ。
【0014】コアはデータベースと連通し、且つ分散形
データベース環境下で他のコアと接続し得る。主要機能
の一つは、総合SQL問合せ最適化装置による問合せの
最適な実行である。
【0015】データディクショナリはメタベースであ
る。ディクショナリは、SQL言語で操作されるテーブ
ル及びビュー全体からなっている。ディクショナリの内
容はいつでもベースの画像を反映し、従ってデータベー
スの動的な説明を行っている。このディクショナリによ
って、特にベースのオブジェクト(テーブル、カラム、
ビュー、索引等)並びに種々のオブジェクトに関するユ
ーザの特権及び権利を説明することができる。ユーザが
管理の特権を有する場合、ディクショナリはデータベー
ス管理のために使用される。ユーザはDBA特権を有す
るなら、管理者と見なされる。システム導入時に、2人
のユーザが管理者、即ちSYS及びSYSTEMとみな
される。SYS管理者のみがデータディクショナリテー
ブルにアクセスする。
【0016】SQL層は、Oracleの最後の基本層
である。この層は、コアと外層のツールとのインタフェ
ースの役割を果たす。従って、データへの任意のアクセ
スオペレーションはSQL言語で表される。
【0017】最後に、外層は、3つの基本層によって提
供される全ての機能の使用及びアプリケーション展開を
容易にするツールからなっている。これらのツールのひ
とつはSQL*Plusであり、これはSQL層との第
4世代の対話形インタフェースである。任意のSQLコ
マンドはSQL*Plusで開始され得る。これによっ
て特に作業環境のパラメータ化(parametriz
e)(ページ当たりのライン長さ、ページ当たりのライ
ン数等)及びSQL問合せの結果の画面上又は用紙上で
のフォーマッティングが可能となる。他のツールは、デ
ータベースの管理用のSQL*DBAである。
【0018】本発明の内容を分かり易くするために、O
racleの主要操作について簡単に説明する。
【0019】INDEX:索引にアクセスする。この操
作は、索引の値を直接使用する場合は単独で行い、索引
の値がテーブルからの組の選択に役立つ場合は後でTA
BLE ACCESS操作を行う。
【0020】NESTED LOOPS:第1の産物
(son)に由来する各組と第2の産物に由来する組と
からカルテシアン積(デカルト積)を出す。
【0021】TABLE ACCESS:テーブルにア
クセスし、制限を加えることができる。
【0022】RDBMSの問合せの従来の最適化援助方
法は、RDBMSの問合せ言語で書込まれた問合せの実
行プランの探索を含んでいる。図2Cは、Oracle
の問合せ言語SQLで書込まれた問合せ10の一例を画
面上の窓に示している。Oracleでは、問合せ10
の実行プランの探索は、ツールSQL*Plus又はツ
ールSQL*DBAを使用して行われ得る。問合せ10
を書込むと、応答時にツールが、問合せ実行のためにR
DBMSのコアによって選択されたプランを示すテーブ
ルを作成する。このテーブルは、ユーザによって予め作
成されねばならず、またSQL選択コマンドによってル
ックアップされ得る。
【0023】図1は便宜上、ユーザの問合せに応じてR
DBMSによって作成された対応テーブルをページ毎に
プリントアウトして得られたテーブル11の非常に簡単
な一例を示す。テーブル11は2ページからなり、各ペ
ージで7つのカラムの見出しを繰り返す。見出しは順次
オペレーション(OPERATION)、オプション
(OPTION)、オブジェクト所有者(OBJECT
OWNER)、オブジェクト名(OBJECT NA
ME)、並びに各オペレーションについてその番号(I
D)、ひとつ前のオペレーションの番号(PARE)及
びオペレーションが姉妹オペレーションを有するならば
その位置(POSI)である。図2Cに示す単純な問合
せ10は通常の問合せに関するテーブルの概念を提供
し、且つ問合せの実行を最適化するために、ユーザに提
起される重大な問題を十分に表示している。実際には、
有資格ユーザである管理者のみが、このテーブルを解釈
することができる。管理者にとってもテーブルの解釈は
一般に時間がかかり且つ困難である。更にはこのように
管理者は実行プランの如何を問わずグローバルビューを
もたない。本発明は、RDBMSの管理を熟知した人物
の援助を必要としない方法を提供する。
【0024】本発明の特徴によれば、まず問合せの実行
プランを示すテーブルを自動的に作成するようユーザに
勧めるために探索ツールDB*EXPLAINを作成し
た。このツールの付属的な利点によれば、管理者はSQ
L言語で問合せを書込む必要はない。
【0025】図2A、図2B及び図2CはツールDB*
EXPLAINのログオン画面12の一例を示す。OS
F/Motif(米国Open Software F
oundation, Incの登録商標)ソフトウェ
アを使用してこの例を作成した。画面12は、メニュー
バー13と対話窓14とを含んでいる。メニューバー1
3は3つの主メニューFile、Query、Expl
ainを含んでいる。図2Aに示すFileメニュー1
5は、ファイル内で得られる問合せに関する。File
メニューは4つのオプションOpen、Save、Sa
ve As及びExitを有する。Openオプション
をクリックすると、対話窓14内に選択窓16が現れ
る。選択窓16は標準的には、問合せを含む現ファイル
(F1,F2等)のスクローリングリスト17及び選択
すべきファイルの名称を書込むことのできるボックス1
8を含んでいる。Fileメニュー15のSaveオプ
ションをクリックすると、所望のファイルが該ファイル
が既に有する名称で保管される。Save Asオプシ
ョンをクリックすると、所望のファイルがユーザによっ
て選択され、書込まれた名称で保管される。最後に、D
B*EXPLAINから出るにはExitオプションを
クリックする。
【0026】図2Bは、ログオン画面12の問合わせメ
ニュー19の一例を示している。問合わせメニュー19
は、他の問合せ源としてRDBMSのディクショナリに
含まれるビューのスクローリングリスト21(図示する
実施例ではこれらのビューはSYS.DBA CLUS
TERS及びSYS.DBA TABLESである)及
び所望のビューの名称を書込むことのできるボックス2
2を含む選択窓20を開くために機能するLoad V
iewオプションだけを含んでいる。図2Bは更に、説
明メニュー23を示す。このメニューはPlanオプシ
ョンだけを含んでいる。このオプションをクリックする
と、ツールDB*EXPLAINが有利なことにツール
SQL*Plus及びツールSQL*DBAと同様に、
問合せの実行プランを示すテーブルを作成する。明らか
に、ツールDB*EXPLAINが図1に示すテーブル
11と同様に、編集窓にこのテーブルを示すことができ
るようにこのツールを適応することが可能であろう。し
かしながら、図示した実施例に適した本発明の方法は、
図示するテーブル11よりも明らかに良好な実行プラン
の表示を提供するためのテーブルしか必要としない。そ
の結果実際にはこの表示は不必要になる。
【0027】図2Cは、スクローリングリスト17の中
で選択した、即ち図2Aに示す画面のボックス18で限
定されたファイルに由来する、又はスクローリングリス
ト21で選択した、即ち図2Bのボックス22で限定さ
れたビューに由来する問合せを表すために対話窓14内
に現れた編集窓24を示している。図2Cは、問合せ1
0を編集窓24内に示している。この問合わせは図2B
のリスト21でビューSYS.DBA CLUSTER
Sを選択した場合を例示的に示している。このビューは
データベースのクラスタに関し且つSYS管理者に属す
る。ツールDB*EXPLAINのために、もはや既に
利用可能な問合せを書込む必要はない。従って、このツ
ールには、問合せを設計して再度書込む必要がなく且つ
付随する全ての誤りの危険性及び時間損失が避けられる
という重要な利点がある。他の利点は、好ましい実施例
ではOSF/Motifソフトウェアを使用することに
よって、編集窓24内に示される問合せの内容を直接簡
単に変更できることである。
【0028】本発明は、問合せ10の実行プランに基づ
いて問合せの実行トリーを作成し且つトリーを画面に表
示することからなる。図3に示す画面では、窓25は問
合せ10の実行を表すトリー26を含んでいる。トリー
26は、リンク28によって接続されたボックス27か
ら形成される。トリー26のリンク28は、RDBMS
の問合せ言語で書込まれた問合せの実行プランの要求の
結果を分析することによって構成される。この結果は、
例示的に選択したRDBMS用のテーブル11である。
実際には、単にソフトウェアのグラフを作成するための
関連構造を示すC言語の構造によって問合わせ10を分
析するのが有利である。本発明の方法を使用するのにこ
れだけで十分な非常に簡単な実施例によれば、トリー2
6のボックス27からなる各ノードと関連する構造は単
に、以下の式のExplainPlanによって作成さ
れるテーブルに基づいて生じ得る。
【0029】
【表1】
【0030】組が与えられる毎に、ボックス27のひと
つが例えばOSF/Motifソフトウェアの図形ライ
ブラリ機能を使用して、当業者には簡単な慣用的な方法
で作成される。要するに、図示するトリー26では、実
行プランを示すテーブル11内の問合せ10の分析によ
ってボックス27及びそのリンク28を作成した。図3
に示す実施例では、トリー26を示す窓25は、Pla
nオプション下でツールDB*EXPLAINによって
有利に提供され且つ図2Cに示したビュー名及び問合せ
10の編集窓24を伴っている。
【0031】トリー26は、図1のテーブル11に含ま
れる情報のようなRDBMSの問合せ言語で書込まれた
問合せの実行プランの探索から得られた情報の全てを又
は一部分を含み得る。例えば各ボックス27は、ボック
スが関係するオペレーションの名称を見出しとして有す
る。従って、図1のテーブル11のOPERATION
カラムに示す名称NESTED LOOPS, TAB
LE ACCESS及びINDEXを図3に示す。ボッ
クス27の見出しを構成するオペレーションが、所与の
オブジェクトに対して実施されるオプションを有するな
らば、このオプションの名称をボックス内に、有利には
サブヘッディングとして記載してもよい。同様に、ボッ
クス27の見出しに記載のオペレーションが、オペレー
ションのオプションが適用されるオブジェクトの名称及
び所有者名のような特徴を有するならば、これらの特徴
の全てを又は一部分をボックスに指示してもよい。本発
明のこれら全ての有利なオプションは、図3に示すトリ
ー26内に含まれる。従って、トリー26の13あるボ
ックス27内には、テーブル11に記載の13のオペレ
ーションの名称が記載され、この13のオペレーション
には、所与のオブジェクトに対して実行される任意のオ
プション、オブジェクト名及びオブジェクト所有者名が
補足される。トリー26は、RDBMSの問合せ言語の
知識とは関係無く任意のユーザに容易に理解され且つ問
合せの実行プランのグローバルビューをユーザに提供す
るという利点がある。従って、トリー26を見るユーザ
は、出された問合せを最適化するためにとるべき行動を
より簡単且つ迅速に決定することができる。他方では、
ツールDB*EXPLAINによって、ユーザは問合せ
を書込む必要がなく且つ図2Cの編集窓24で問合せを
簡単に変更することができる。変更後、管理者は変更が
いかに効果的であるかを知るために新規な実行トリーを
すぐに所有することができる。ツールは、前のトリーを
保管して、管理者が2つのトリーを簡単且つ迅速に比較
することができるという補足的な利点を提供する。
【0032】当然これらの利点は、ツールDB*EXP
LAINを使用せず、RDBMSの問合わせ言語での問
合せの実行プランの従来の探索手段を使用しても提供さ
れ得る。この探索の結果は、例示的に選択したRDBM
Sのテーブル11に示すが、結果はRDBMSの型に応
じて他の形態で示され得る。これらの結果の分析は問合
せの実行トリーを作成するために当業者によって結果の
形態に容易に適応される。
【0033】本発明の他の特徴によれば、実行プランの
要求の結果の分析によって提供される情報以外の情報を
得ることができる。例えば、オペレーションのある任意
の特徴に関する追加情報を得ることができる。図示する
実施例では、ユーザがボタン29をクリックするとこの
オブジェクトに関する追加情報を得ることができるよう
に、ボックス27の見出しを構成するオペレーションが
実行されるオブジェクト名、及び場合によってはこのオ
ブジェクトの所有者が、ボックス内に挿入されたボタン
29に書込まれる。
【0034】クリックしたオブジェクトに関して実行さ
れるオペレーションがテーブルの場合(図示する実施例
ではボックス27内のTABLE ACCESS)、例
えばOracleディクショナリのDBA TAB
OLUMNSテーブルのSQL要求によって、追加情報
の探索を実施する。このテーブルは、RDBMSのデー
タベースに含まれるテーブルの構造を、即ちカラム名、
及び特にカラムの型及び寸法を示す。追加情報はこのよ
うに、ボックスに記載されたテーブルの説明要素の全体
又は一部分であり得る。従って、テーブルの説明、例え
ばカラム名及びカラムの型を得ることができる。好まし
くはツールDB*EXPLAINは、これらを付属窓
(図示せず)に表示する。
【0035】クリックしたオブジェクトに関して実行さ
れるオペレーションが索引ならば(ボックス27内のI
NDEX)、追加情報は図4Aに示すようなヒストグラ
ムであり得る。このヒストグラムに含まれる情報を、O
racleのコマンドVALIDATE INDEXで
得た。応答時に、Oracleはヒストグラムテーブル
を作成する。このヒストグラムテーブルに基づいて、当
業者には通例のスモールプログラムによって、図4Aに
示すようなこのヒストグラムを示す画面を形成する。
【0036】図4Aに示す実施例では、ユーザは、索引
が反復されない340のキーを含んでいることを知って
いる。ユーザには選択した索引が非常に良好であること
がすぐに分かる。図4B及び図4Cはそれぞれ、本発明
によって得られ得る他のヒストグラムの例を示してい
る。図4Bの実施例では、ユーザは、使用する索引が図
4Aほど選択的でないことが分かる。図4Cは、あまり
選択的でなく、従って変更せねばならない索引を示すヒ
ストグラムである。これらの例は、本発明の方法によっ
て提供される利点を強調している。
【図面の簡単な説明】
【図1】図2Cに示す問合せに関するRDBMSの問合
せ言語で書込まれた実行プランを示すテーブルであり、
従来技術の一例である。
【図2A】本発明方法を使用する本発明のツールで得ら
れるログオン画面を示す。
【図2B】本発明方法を使用する本発明のツールで得ら
れるログオン画面を示す。
【図2C】本発明方法を使用する本発明のツールで得ら
れるログオン画面を示す。
【図3】問合せの最適化を援助するために本発明方法を
使用して得られる、図2Cに示す問合せの実行用トリー
の一例を示す。
【図4A】本発明方法を使用して得られ得るヒストグラ
ムを示す。
【図4B】本発明方法を使用して得られ得るヒストグラ
ムを示す。
【図4C】本発明方法を使用して得られ得るヒストグラ
ムを示す。
【符号の説明】
10 問合せ 11 テーブル 12 ログオン画面 14 対話窓 16,20 選択窓 17,21 スクローリングリスト 18,22,27 ボックス

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】 関係データベース管理システム(RDB
    MS)の問合せ言語で書込まれた問合せの実行プランの
    探索を含み、前記探索に基づいて、問合せの実行プラン
    を表すトリーを作成し且つトリーを画面上に表示するこ
    とからなることを特徴とするRDBMSの問合せの最適
    化援助方法。
  2. 【請求項2】 RDBMSがOracleであり、問合
    せの実行プランを示すテーブルで問合せを分析してトリ
    ーを作成することを特徴とする請求項1に記載の方法。
  3. 【請求項3】 RDBMSがOracleであり、OS
    F/Motif図形ライブラリに基づいてトリーを画面
    上に表示することを特徴とする請求項1又は2に記載の
    方法。
  4. 【請求項4】 関係するオペレーションの名称及びオペ
    レーションの任意のオプションをトリーの各ボックス内
    にロードすることからなることを特徴とする請求項1か
    ら3のいずれか一項に記載の方法。
  5. 【請求項5】 ボックスに関するオペレーションが適用
    されるオブジェクトの名称、及び場合によってはオブジ
    ェクトの所有者名の様なオペレーションの特徴を付加す
    ることを特徴とする請求項4に記載の方法。
  6. 【請求項6】 前記ボックスのボタン内に前記特徴を書
    込み、且つ前記特徴に関する追加情報を要求するために
    前記ボタンをクリックすることからなることを特徴とす
    る請求項5に記載の方法。
  7. 【請求項7】 前記特徴に関して実行されるオペレーシ
    ョンがテーブルであり、前記追加情報がテーブルの記載
    要素を含んでいることを特徴とする請求項6に記載の方
    法。
  8. 【請求項8】 テーブルの見出しDBA TAB CO
    LUMNSを適用して前記追加情報を得ることからなる
    ことを特徴とする請求項7に記載の方法。
  9. 【請求項9】 前記特徴に関して実行されるオペレーシ
    ョンが索引であり、前記追加情報がヒストグラムを含ん
    でいることを特徴とする請求項6に記載の方法。
  10. 【請求項10】 OracleのコマンドVALIDA
    TE INDEXによって前記追加情報を得ることから
    なることを特徴とする請求項9に記載の方法。
  11. 【請求項11】 実行プランの探索が、RDBMSのデ
    ィクショナリ内にあるビュー、及び/又は、問合せを含
    むファイルをロードし、ビュー又はファイルを選択し、
    且つ選択したビュー又は選択したファイルを画面に表示
    することからなることを特徴とする請求項1から10の
    いずれか一項に記載の方法。
JP5251797A 1992-10-12 1993-10-07 関係デ―タベ―ス管理システムからの問合せの最適化援助方法 Expired - Lifetime JP2510945B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9212148A FR2696852B1 (fr) 1992-10-12 1992-10-12 Procédé d'aide à l'optimisation d'une requête d'un système de gestion de base de données relationnel.
FR9212148 1992-10-12

Publications (2)

Publication Number Publication Date
JPH06195248A true JPH06195248A (ja) 1994-07-15
JP2510945B2 JP2510945B2 (ja) 1996-06-26

Family

ID=9434421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5251797A Expired - Lifetime JP2510945B2 (ja) 1992-10-12 1993-10-07 関係デ―タベ―ス管理システムからの問合せの最適化援助方法

Country Status (5)

Country Link
US (1) US5630120A (ja)
EP (1) EP0593354B1 (ja)
JP (1) JP2510945B2 (ja)
DE (1) DE69328227T2 (ja)
FR (1) FR2696852B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014530416A (ja) * 2011-09-15 2014-11-17 オラクル・インターナショナル・コーポレイション 分散データ管理システムにおけるクエリ説明計画

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5727175A (en) * 1989-06-30 1998-03-10 Massachusetts Institute Of Technology Object-oriented computer user interface
US5544352A (en) * 1993-06-14 1996-08-06 Libertech, Inc. Method and apparatus for indexing, searching and displaying data
US5717913A (en) * 1995-01-03 1998-02-10 University Of Central Florida Method for detecting and extracting text data using database schemas
US5995728A (en) * 1995-06-30 1999-11-30 Forman; Ernest H. Computer implemented method of generating and displaying objectives from pros and cons for evaluating decision alternatives
US5710900A (en) * 1995-10-12 1998-01-20 Ncr Corporation System and method for generating reports from a computer database
US20040019610A1 (en) * 1996-02-27 2004-01-29 Burns Kevin S. Portal information delivery system for personal computers and SOHO computer systems
US6014137A (en) 1996-02-27 2000-01-11 Multimedia Adventures Electronic kiosk authoring system
US5787411A (en) * 1996-03-20 1998-07-28 Microsoft Corporation Method and apparatus for database filter generation by display selection
US5701460A (en) * 1996-05-23 1997-12-23 Microsoft Corporation Intelligent joining system for a relational database
US5761654A (en) * 1996-06-05 1998-06-02 Oracle Corporation Memory structure and method for tuning a database statement using a join-tree data structure representation, including selectivity factors, of a master table and detail table
US5895477A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic layout of content
US5956737A (en) * 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US5895476A (en) * 1996-09-09 1999-04-20 Design Intelligence, Inc. Design engine for automatic reformatting for design and media
US5903902A (en) * 1996-09-09 1999-05-11 Design Intelligence, Inc. Design engine with tree and component structure
US5765147A (en) * 1996-11-21 1998-06-09 International Business Machines Corportion Query rewrite for extended search capabilities
JPH10232875A (ja) * 1997-02-19 1998-09-02 Hitachi Ltd データベース管理方法および並列データベース管理システム
US5905982A (en) * 1997-04-04 1999-05-18 International Business Machines Corporation Handling null values in SQL queries over object-oriented data
US6278994B1 (en) * 1997-07-10 2001-08-21 International Business Machines Corporation Fully integrated architecture for user-defined search
US5870752A (en) * 1997-08-21 1999-02-09 Lucent Technologies Inc. Incremental maintenance of an approximate histogram in a database system
US6012064A (en) * 1997-08-21 2000-01-04 Lucent Technologies Inc. Maintaining a random sample of a relation in a database in the presence of updates to the relation
US6260044B1 (en) * 1998-02-04 2001-07-10 Nugenesis Technologies Corporation Information storage and retrieval system for storing and retrieving the visual form of information from an application in a database
US6052689A (en) * 1998-04-20 2000-04-18 Lucent Technologies, Inc. Computer method, apparatus and programmed medium for more efficient database management using histograms with a bounded error selectivity estimation
US6330552B1 (en) 1998-09-28 2001-12-11 Compaq Database query cost model optimizer
US6263345B1 (en) 1998-09-28 2001-07-17 Compaq Computers, Corporation Histogram synthesis modeler for a database query optimizer
US6360214B1 (en) * 1998-12-16 2002-03-19 Microsoft Corporation Automatic database statistics creation
US6397204B1 (en) 1999-06-25 2002-05-28 International Business Machines Corporation Method, system, and program for determining the join ordering of tables in a join query
US6446063B1 (en) 1999-06-25 2002-09-03 International Business Machines Corporation Method, system, and program for performing a join operation on a multi column table and satellite tables
US6374235B1 (en) 1999-06-25 2002-04-16 International Business Machines Corporation Method, system, and program for a join operation on a multi-column table and satellite tables including duplicate values
US6560593B1 (en) * 1999-07-20 2003-05-06 Computer Associates Think, Inc. Method and apparatus for viewing the effect of changes to an index for a database table on an optimization plan for a database query
US6850891B1 (en) 1999-07-23 2005-02-01 Ernest H. Forman Method and system of converting data and judgements to values or priorities
US7734619B2 (en) * 2005-05-27 2010-06-08 International Business Machines Corporation Method of presenting lineage diagrams representing query plans
US20070033159A1 (en) * 2005-08-03 2007-02-08 Cherkauer Kevin J Query plan editor with integrated optimizer
US9165040B1 (en) 2006-10-12 2015-10-20 Google Inc. Producing a ranking for pages using distances in a web-link graph
US8392406B1 (en) 2008-05-30 2013-03-05 Oracle International Corporation Determining a height-balanced histogram incrementally
US9639587B2 (en) * 2012-12-13 2017-05-02 Sap Se Social network analyzer
CN111368153B (zh) * 2020-03-23 2023-08-29 百度在线网络技术(北京)有限公司 搜索方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US4769772A (en) * 1985-02-28 1988-09-06 Honeywell Bull, Inc. Automated query optimization method using both global and parallel local optimizations for materialization access planning for distributed databases
US4774661A (en) * 1985-11-19 1988-09-27 American Telephone And Telegraph Company, At&T Information Systems Database management system with active data dictionary
US4930071A (en) * 1987-06-19 1990-05-29 Intellicorp, Inc. Method for integrating a knowledge-based system with an arbitrary database system
JP2760794B2 (ja) * 1988-01-29 1998-06-04 株式会社日立製作所 データベース処理方法および装置
US5065347A (en) * 1988-08-11 1991-11-12 Xerox Corporation Hierarchical folders display
US5335345A (en) * 1990-04-11 1994-08-02 Bell Communications Research, Inc. Dynamic query optimization using partial information
US5201046A (en) * 1990-06-22 1993-04-06 Xidak, Inc. Relational database management system and method for storing, retrieving and modifying directed graph data structures
US5379419A (en) * 1990-12-07 1995-01-03 Digital Equipment Corporation Methods and apparatus for accesssing non-relational data files using relational queries
FR2696853B1 (fr) * 1992-10-12 1994-12-23 Bull Sa Procédé d'aide à l'optimisation d'une requête d'un système de gestion, de base de données relationnel et procédé d'analyse syntaxique en résultant.
US5331554A (en) * 1992-12-10 1994-07-19 Ricoh Corporation Method and apparatus for semantic pattern matching for text retrieval

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014530416A (ja) * 2011-09-15 2014-11-17 オラクル・インターナショナル・コーポレイション 分散データ管理システムにおけるクエリ説明計画

Also Published As

Publication number Publication date
EP0593354B1 (fr) 2000-03-29
EP0593354A1 (fr) 1994-04-20
FR2696852B1 (fr) 1994-12-23
DE69328227T2 (de) 2000-09-07
DE69328227D1 (de) 2000-05-04
US5630120A (en) 1997-05-13
FR2696852A1 (fr) 1994-04-15
JP2510945B2 (ja) 1996-06-26

Similar Documents

Publication Publication Date Title
JP2510945B2 (ja) 関係デ―タベ―ス管理システムからの問合せの最適化援助方法
US6119126A (en) Object-relational query builder which determines existence of structures from information loaded from the server and cached locally on the client computing system
US5495605A (en) Method to help in optimizing a query from a relational data base management system, and resultant method of syntactical analysis
US7165073B2 (en) Dynamic, hierarchical data exchange system
JP4571746B2 (ja) アプリケーション機能に対するアクセスを選択的に規定するためのシステムおよび方法
US6601071B1 (en) Method and system for business to business data interchange using XML
US5499359A (en) Methods for improved referential integrity in a relational database management system
US7792817B2 (en) System and method for managing complex relationships over distributed heterogeneous data sources
US5727196A (en) Optimized query interface for database management systems
US7174345B2 (en) Methods and systems for auto-partitioning of schema objects
RU2406115C2 (ru) Доступ к сложным данным
US20040186860A1 (en) Method and architecture for providing data-change alerts to external applications via a push service
US20010003455A1 (en) Method, system and graphic user interface for entering and editing filter conditions for filtering a database
US20060161528A1 (en) Method for regenerating selected rows for an otherwise static result set
US20040015486A1 (en) System and method for storing and retrieving data
JP2003505766A (ja) クエリー最適化プラン用インデックスに対する変化の効果を観察するためのデータベースシステム
US8458200B2 (en) Processing query conditions having filtered fields within a data abstraction environment
JP2001056810A (ja) データベースアクセスシステム
US9031924B2 (en) Query conditions having filtered fields within a data abstraction environment
JP2001350656A (ja) 異種データソース統合アクセス方法
JP2006524376A (ja) 汎用データベーススキーマ
US9177008B1 (en) Positioned updates in a distributed shared-nothing data store
US20060235828A1 (en) User interface method for grouping conditions without editing
Cisco DB Step Descriptions
JP3175128B2 (ja) データベース,ファイルおよびプログラムの統合管理方式

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090416

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090416

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100416

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110416

Year of fee payment: 15

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120416

Year of fee payment: 16

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 17

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 18

EXPY Cancellation because of completion of term