JPH022459A - 問合わせ処理方法 - Google Patents

問合わせ処理方法

Info

Publication number
JPH022459A
JPH022459A JP63310990A JP31099088A JPH022459A JP H022459 A JPH022459 A JP H022459A JP 63310990 A JP63310990 A JP 63310990A JP 31099088 A JP31099088 A JP 31099088A JP H022459 A JPH022459 A JP H022459A
Authority
JP
Japan
Prior art keywords
view
query
views
node
tables
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
Application number
JP63310990A
Other languages
English (en)
Inventor
Ming-Chien Shan
ミンーチエン・シャン
Peter Lyngbaek
ピーター・リングベック
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH022459A publication Critical patent/JPH022459A/ja
Pending 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/24539Query rewriting; Transformation using cached or materialised query results
    • 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/2455Query execution
    • G06F16/24552Database cache management
    • 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/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24561Intermediate data storage techniques for performance improvement
    • 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/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2477Temporal data queries
    • 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

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (発明の技術分野) 本発明はデータベース・システムに関係し、更に詳細に
は、データを複雑な定義を有するビュー(View)を
用いて効率よく検索できるようにする技法に関する。こ
れに限定するものではないが、本発明は特に「構造化問
合せ言語J  (StructuredQuery L
anguage、 S Q L )として知られている
関係データベースについての規格およびこのSQLによ
ってもたらされる制約に関する。この規格に関する更に
詳細な情報については、“A GuideTo  Th
e S Q L  5tandard” (1987年
)および”八Guide To  D B 2 ”  
(1985年)を参照すること。
SQL規格が関係している形式の関係データベース管理
システムにおいては、データはベース・テーブルの形で
格納される。各ベース・テーブルは実質的にテーブルの
カラム(column)を定義する一連のフィールドか
ら構成されている。テーブルの各行は[タプル(tup
le) Jとも呼ばれる単一のレコードから構成されて
いる。テーブル内のデータの各行について、そのデータ
の対応物がデータベースに物理的に格納されている。デ
ータベースのユーザがベース・テーブルにアクセスする
と、格されている該当部分が検索され、テーブルの形で
ユーザに提示される。
ベース・テーブルの他に、データは「ビュー」によって
もアクセスすることができる。ベース・テーブルとは対
照的に、ビューは、テーブルがそのようなものとしては
データベース内に直接存在しないがユーザには恰もその
ように存在しているように見えるという点で「仮想の」
テーブルである。事実、ビューはその定義の形でしかデ
ータベース内に格納されない。たとえば、ビューは、テ
ーブル中の特定のフィールドに所定の値を備えているタ
プルのようなベース・テーブルのサブセットから成るこ
とができる。別の例として、ビューは二つ以上のテーブ
ルのジョイン操作、たとえば、ユニオン、から成ること
ができる。この場合、これらもとのテーブルはベース・
テーブル、他のビュー、あるいは両者の組合わせであっ
てよい。
SQL規格に従った関係データベースでは、所要情報は
問合せ(query)として知られる表現を用いて探索
され、検索される。たとえば、”[!mployee’
  (従業員)という名のテーブルにName” (名
前)、”Dept”(部門)、”Age  (年令)、
および”5alary” (給賎にいうフィールドがあ
る場合、ユーザが玩具(Toy)部門で働いている従業
員のサブセットを探したければ、次の問合せを行うこと
ができる。
5ELECT  Name、5alary、AgeFR
OM   employee WHERBDept=”Toy この問合せにより得られる情報を複数回利用することが
わかっていれば、情報を欲しい都度問合せを再構成する
必要が無いように、ビューを定義することができる。
同じ情報を発生する”Emptoy”という名のビュー
を次のステートメントを用いて定義することができる。
CREATBVIBW Bmptoy (Name、5
alary、Age)ASSELECT  Name、
5alary、AgeFROM  Bmployee WHERE  Dept=”Toy このビューが作り出されると、最初に掲げた問合せは次
のようになる。
5ELBCT* FROM Bmptoy (ここでキャラクタ「*」はテーブルまたはビューのあ
らゆるフィールドを指示する万能キャラクタである。)
わかるとおり、ビューを前記のように定義することによ
り問合せを構成するのがはるかに容易になる。
その他に、このビューは以後の問合せの主題となること
ができる。たとえば、玩具部門のJohnsonという
名前のすべての従業員の給料を得るには、次の問合せを
与えることができる。
5ELBCT 5alary FRO!J Bmptoy WHERE Name=”Johnson上に注意した
ように、仮想テーブルεmptoyを構成しているデー
タはベーステーブルの場合のように実際に格納されてい
るのではない。そうではなくて、ビューの定義だけが格
納されている。従って、ビューを参照する問合せが入る
と、ビュー分解(View decompositio
n)として知られるプロセスが行われ、この問合せを格
納されているベース・テーブルだけを参照する等価な問
合せに翻訳する。本質的に、ビュー分解プロセスは問合
せ中のビューをそのビューの定義を参照するように置き
換えるステップを含んでいる。従って、上に示した例で
は、玩具部門のJohnsonという名前の従業員の給
料を求める問合せは下記の等価な問合せに修正される。
5BLBCT Salary FROM Employee WHERB Name=”Johnson and D
ept=”Toyわかるとおり、修正された問合せはベ
ース・テーブルとそのテーブルのフィールドだけを参照
している。
原理的には、問合せは任意の問合せにより定義されたビ
ューを参照し、その問合せをそのビューが基づいている
ベース・テーブル上の相当する操作に翻訳することが可
能なはずである。しかしながら、実際上は、この手順の
利用可能性はSQL規格から受ける制約のため極めて限
られている。
たとえば、”Avgsal”という名のビューは二つの
ベース・テーブルDeptとEmpから定義することが
できる。テーブルDeptはフィールド″’Dno” 
(部門番号)、”Dname”  (部門名)、”Mg
rname’(マネージャ名)、および”しOC” (
ロケーション)を備えており、テーブルεmρはフィー
ルドEno″(従業員番号) 、’Dno’ 、”5a
lary”、および”Jobtitle” (IJ名)
を備えている。その部門番号、部門名称、およびその従
業員の平均給料により部門を記述するビューAvgsa
iの定義は次のように行うことができる。
CREATE  H[iW  Avgsal  (Dn
o、Dname、Avgsalary)S S[!LBCT  Dno、Dname、^VG(Sa
lary)FROM  Dept、Dno=Emp、D
n。
GR口UP  BY  Dn。
その従業員の平均給料が30.000ドルより多いすべ
ての部門のロケーションを尋ねる問合せにはベース・テ
ーブルDeptとビューAvgsalとのジョイン操作
が必要であり、次のように表すことができる。
SEL[ECT Loc FROM  0ept、^vgsal W)IERB Dept、Dno=^vgsal、Dn
o andAvgsal、Avgsalary> 30
.000残念ながら、ビュー分解技法の制限により、こ
の質問の処理はできない。更に詳細に言えば、WHBR
E!節にベース・テーブル中に現にあるカラムに対応し
ない仮想カラムへの参照が含まれているので、この問合
せを処理することができないのである。
基本的には、元の問合せを翻訳した形態は必ずそれ自身
上しい問合せでなければならない。従って、ビュー分解
の利用可能性は比較的簡単なビューに限られる。
(発明の目的) 本発明の目的はもっと複雑なビューを問合せ中で参照す
ることができ、データベースの処理能力を拡大すること
ができる技法を提供することにある。
(発明の概要) 本発明の一実施例によれば、ビュー分解に関連する制限
はここでビュー合成と言う技法によって克服することが
できる。この技法では、ビューへの参照を含んでいる問
合せは対応するビューの定義の実行を通して実行時にビ
ューを動的に合成する、すなわち実体化する(mate
rialize)ことにより処理される。−旦ビューが
合成されれば、以後は他のベース・テーブルのように処
理することができる。ビューが他のビューへの参照を含
んでいる場合には、他のビューを最初に処理してこれに
引き続いて合成されるビューに対する情報を発生する。
実体化されたビューはベース・テーブルとじてを表現す
る。ビュー・ノードは格納されているベース・テーブル
を表すテーブル・ノードと同様に機能する。ただし、テ
ーブル・ノードとは対照的に、ビュー・ノードに対応し
て恒久的に格納されるテーブルはデータベース中には存
在しない。そは格納されているベース・テーブルと正確
に同じ方法でビュー・ノードを処理することができる。
その結果、ビュー分解プロセスによりビューに加えられ
ていた制限は取り除かれる。
問合せオプテイマイザがビューをテーブルとして処理す
ることができるようにするには、成る統計的情報(たと
えば、ビュー内のタプルの数)が必要である。従来は、
この種の情報はベース・テーブルだけについて利用する
ことができ、ビュー・テーブルでは得られなかった。し
かしながら、本発明のひとつの実施例によれば、このよ
うな情なければならない。この機能を行うには、ここで
報はビューにも同様に維持される。
本発明の他の特徴および本発明により与えられる利点と
についてこれから特定の例を参照し、添付図面の助けを
借りて一層詳細に説明する。
(実施例の説明) 第1図を参照すると、データベース・システムの全般的
概観をブロック図の形で示しである。システムの主要構
成要素はCPU (中央処理装置)lO1磁気ディスま
たはテープのような永久記憶装置12、およびRAMの
ような主記憶装置13から成る。ユーザがデータを人力
し、情報を検索できるために、キーボードのような適切
な人力装置14がCP U toに接続されている。加
えて、データベース・システムにより検索された情報は
、ビデオ・モニタあるいはプリンタのような、適切な出
力装置16を通してユーザに提示される。
永久記憶装置12の内部に、制御プログラムがデータベ
ースを構成するデータと共に格納される。
SQL規格に従って動作する関係データベース管理シス
テムの例としては、IBM社のSQL/DSとDB2、
およびRT I  Ingresがある。ユーザが人力
したデータはベース・テーブル18の形で永久記憶装置
12に格納される。最初に、ユーザはテーブル内の各カ
ラムの見出しと各カラムのパラメータを含む各テーブル
の定義を与える。その後で、データを各種ベース・テー
ブルのタプルに詰め込む。
これに加えて、特定のテーブルのサブセット、二つ以上
のテーブルの間の関係、あるいは一つ以上のベース・テ
ーブルに対する操作を示すようにビューを定義すること
ができる。ビューの定義により得られる情報は別のテー
ブルの形で出力装置16でユーザに提示されるが、この
テーブルはその形で記憶装置12に永久的に格納される
ものではない。実際にはビュ一定義20自身だけが記憶
装置12に恒久的に格納される。
問合せを処理しなければならないときは、問合せは最初
、制御プログラムの一部を構成するオプテイマイザに与
えられる。オプテイマイザは問合せとそれが参照してい
るテーブルを評価し、問合せの処理に当たってシステム
の性能を最適化することを意図している問合せ実行プラ
ンを作る。基本的には、オプテイマイザは各テーブルの
基数(cardinality)、すなわち、タプルの
数と、探索条件の選択性(Selectivity)と
、各テーブルに関して定義されていることがあるインデ
クスを考慮する。この情報に基づき、オプテイマイザは
CPUの処理能力を効率良く利用する実行プランを展開
する。
たとえば、三つのベース・テーブルTI、T2、および
T3のジョイン操作を必要とする問合せは次のように表
すことができる。
5ELECT* FRO!A Tl、T2、T3 WHBRE T 1.  f 1 =T 2.  f 
2  andTl、fl=T3.T3 上記のステートメントで、T1.flの項はベース・テ
ーブルT1の第1フイールドを表し、T2.T2はベー
ス・テーブルT2の第2フイールドを表し、以下同様で
ある。この問合せに対して、オプテイマイザは第2図に
示すように問合せ実行プランを作ることができる。基本
的には、このプランはテーブルT1とT2とのジョイン
操作を最初に実行する。すなわちT1.fl=T2゜T
2となるタプルを捜し出す。この最初のジョイン操作の
結果が次にテーブルT3とジョインされて最終結果を生
じ、これが出力装置16によりユーザに示される。
実行計画における各テーブルのそれぞれの位置は意味を
持っている。動作時、ジョイン・ノードの左側のテーブ
ルは外側テーブノペすなわち一層テーブルとして働く。
外側テーブルの各タプルが1回選択され、このような各
選択についてノードの右側にある内側テーブル、すなわ
ち二次テーブルのすべてのタプルが走査される。従って
、第2図の例では、内側テーブルT2は外側テーブルT
Iのタプルの数と等しい回数だけ走査されることになる
。次に、上方ノード21がこの最初のジョイン操作の結
果によるタプルを順次要求し、内側テーブルT3がこの
ような各タプルについて走査される。
本発明によれば、ビューを参照する問合せはその問合せ
の実行時にビューの定義を動的に実行することにより処
理できる。所与の問合せに対し、ビューはこのような実
行により、あるいはビュー分解により処理できる。定義
の実行の結果、問合せ実行の間ベース・テーブルのよう
にして以後処理することができるテーブルが合成される
。ビュー分解だけを利用する従来のデータ検索法では、
ビューを参照する問合せはベース・テーブルだけを参照
する等価な問合せに翻訳されていた。従って、問合せ実
行プランはビューを参照することは不要であった。しか
しながら、本発明のビュー合成法により作られる問合せ
実行プランはベース・テーブルの他にビューをも参照す
ることができなければならない。この必要性を満たすに
は、ビュー・ノードと言う別の形式のノードを問合せ実
行プランに導入して、ビューとその実体化を表現する。
ビュー・ノードは本質的には格納されているベース・テ
ーブルを表すテーブル・ノードと同じである。ただし、
テーブル・ノードと対照的に、データベースの記憶装置
12には所与のビュー・ノードに対応する永久格納テー
ブルは存在しない。
その代わり、ビュー・ノードはテーブルを定義する部分
問合せ(5ubquery)を備えている。
更に例示すると、あるビューを次のステートメントによ
ってベース・テーブルT1とT2とのジョイン操作とし
て定義することができる。
CRBATB VI[!W V  ASSELIlIC
T* FROMTI、T2 WHE!R[! T 1.  f 1 =T2.  f
 2ピユーVの実体化されたものを指示するビュー・ノ
ードを備えた問合せ実行プランの一例を次の問合せにつ
いて第3図に示す。
5ELBCT * FROM  Tl、T2、■ WHERB T 1.  f 1 =T2.  f 1
  andT2.f2=V、f3 ビュー合成法の具体的な長所は、問合せオプテイマイザ
がノードのあらゆる明示的また黙示的な順序の性質やそ
の他通常テーブルに関連付けられている必要な統計的デ
ータ、たとえば、基数、選択性など、を使用することに
加えて、ビュー・ノードをテーブル・ノードと同じ方法
で処理することができるようにする点にある。従来の方
法では、ベース・テーブルだけが内部ノードと考えられ
ていた。しかし、ビュー合成法によれば、ビュー・ノー
ドは問合せ実行プラン中でジョイン・ノードの内部の部
分木(5ubtree)として現れることがでビューを
合成するには種々な方法を利用することができる。ビュ
ー合成法の一可能実施例では、ビューのタプルをビュー
・ノードの親が要求したとき要求に応じて実体化する。
この戦略は、ビューを実行プランの外側テーブルすなわ
ち、左側テーブルとして選択する入れ子になったループ
のジョイン操作のような場合に最も好ましいかもしれな
い。動作時、ビューの最初のタプルはビュー・ノードの
親から要求されたとき実体化される。この実体化された
タプルはシステム記憶装置(第1図)のタプル・レジス
タ22つまりバッファニー時的に格納することができる
。好ましくは、このタプル・レジスタ22は、記憶装置
12のような永久記憶装置ではなく、主記憶装置13に
設置されている。
問合せ実行中に次のタプルが要求されると、それが実体
化されて、タプル・レジスタ22の中の前のタプルと置
き換わる。
ビュー合成法の別の可能な実施例では、問合せ実行プラ
ン中でビューが最初にアドレスされるとビュー全体を一
時に実体化する。実体化されたビューは記憶装置12に
一時テーブル24として格納される。通常のキャッシュ
技法を適用して一時テーブルを主記憶装置13に移すこ
とができる。主記憶装置13に移されたテーブル24′
が問合せ実行中操作される。実体化されたビューのタプ
ルがビュ・ノードの直上のノードにより要求されると、
それらのタプルは、−時テーブルがキャッシュされてい
るか否かにより、−時テーブル24または24′のいず
れかから得られる。この方法では一層テーブルを作りこ
れに書込むコストがかかるので、この方法はビューを2
回以上参照しなければならない場合に限り使用すること
が望ましい。たとえば、このような状況はビューを内部
テーブルとして選択しなければならないような場合の入
れ子になったループ・ジョイン操作、あるいは同じビュ
ーを複数回参照する問合せ、で発生することがある。
問合せオプテイマイザは、もしそれが役に立つと考えれ
ば、実体化されたビューに対して一時的なインデクスを
発生することができる。たとえば、インデクス26は、
実体化されたビューが同じカラムで2回以上アクセスさ
れる場合に発生し、格納されることがある。
上に注意したとおり、ビューの実体化によりオプテイマ
イザの柔軟性が一層大きくなる。たとえば、ビューの基
数や選択性のような、問合せの最適化に重要な統計的情
報を発生することができる。
その他に、ビューを実体化することにより、データベー
スの機能性が増大する。たとえば、実体化されたビュー
のタプルを成る順序またはグループ化に従って走査する
ことができ、これらに対して数学的または統計的演算を
行うことができる。
実体化されたビューは、タプル・レジスタ22にタプル
ごとに格納されていようと、あるいは−時テーブル24
の中にテーブル全体として格納されるのであろうと、そ
こにおいてビューが実体化される問合せが終わるまで維
持されるに過ぎない。従って、実体化されたビューとそ
のビューが基づいているベース・テーブルとの間に一貫
性を維持する必要はない。
ビュー合成法はビューを実体化するコストが余分にかか
るが、それによって与えられる性能、特に複雑なビュー
を参照する問合せをサポートする能力が増強されるので
、このコストを補って余りがある。ビューVと他のテー
ブルT3によるジョイン操作を指定する問合せは次のよ
うに表すことができる。
5BLBCT* FROM  V、、:、 T 3 WHERE  V、  f  1  =T 3.  f
  3ビユ一分解法を利用すれば、可能な問合せ実行プ
ランは第2図に示すように表すことができる。
しかしながら、これは成る場合には最適計画でないこと
がある。たとえば、三つのベース・テーブルがすべて大
きいが、ビューVの基数が小さい場合、ビュー合成によ
る最適質問プランは第4図に示すように表されるかもし
れない。この方法を用いると、ビュー合成から得られる
一層テーブルは、コストがかさむかもしれないTIとT
2のジョイン操作を、分解法が必要とするようにテーブ
ルT3の各タプルに対してではなく、1回だけ行えばよ
い。ビューがデータ管理システムの主記憶装置13に収
まるのに充分なだけ小さければ、テーブルT3と実体化
されたビューとのジョイン操作は一層効率良く行われる
ビュー合成は多くの形式の問合せにおいて良好な方法で
あろうが、成る場合にはビュー分解を利用した方がやは
り最適な性能が得られることがある。従って、好ましい
オプテイマイザは最適問合せ実行プランを展開するにあ
たり両方法を考慮すべきである。この概念の比較的簡単
な実現法では、オプテイマイザは単一テーブル・ビュー
、すなわち、唯一のベース・テーブルしか参照しないビ
ューに対しては皆ビュー分解を利用し、他のすべてのビ
ューに対してはビュー合成を用いて良い。しかし、複数
のベース・テーブルを参照する成る別の形式の単純ビュ
ーを含む問合せもビュー分解により良好なパフォーマン
スが得られることがある。
従って、−層好ましいオプテイマイザはビューを以下の
三つの形式に分類する。
l)単一テーブル・ビュー、すなわち、一つのベース・
テーブルだけを参照するもの。
2)複合ビュー、すなわち、ステートメントUNION
 、 0RDERBY、 GROUP BYSDIST
INCT(7) ウちの一つ以上を使用するもの、また
は組込み関数や演算式からカラムを導出するもの、また
は別の複合ビューを参照するもの。
3)単純ビュー、すなわち、単一テーブル・ビューおよ
び複合ビュー以外のすべてのビューこのオプテイマイザ
はその動作に当たって、複合ビューがすべてビュー合成
により処理され、単一テーブル・ビューがすべてビュー
分解により処理され、単純ビューはどれが最も効率的か
によりいずれかの方法で処理されるように実行プランを
構築する。
前述の原理を利用している問合せ実行プランの一例を第
5図に示す。この問合せはテーブルT1と二つのビュー
VlおよびV2とのジョイン操作を表している。ビュー
V1はビューV3とテーブルT3のジョイン操作として
定義されている。ビューV3は二つのテーブルT4とT
5のジョイン操作として定義され、単純ビューである。
ビューV2は三つのビュー■4、V5、およびv6に関
するジョイン操作として定義される。ビューV4は二つ
のテーブルT6とT7に関するジョイン操作として定義
される。ビューV5はテーブル下8上で定義される単一
テーブル・ビューである。ビューV6は二つのテーブル
T9とT10のジョイン操作として定義される複合ビュ
ーである。ビューV2は複合ビー−V6を参照するので
複合ビューである。
第5図に示す問合せ木は各ビューが分解および合成と呼
ばれる二つのモードのそれぞれでどう処理されるかを示
すように注釈を付けられている。
各ビュー・ノードの左側にはビューが分解モードでどう
処理されるかが示されており、ここでdはビューの分解
を意味し、Cはビューの合成を意味している。右側には
ビューが合成モードでどう処理されるかが示されている
。ビューV6とV2は、複合ビューであるから必ず実体
化され、ビューV5は単一テーブル・ビューであるから
必ず分解される。しかし、問合せオプテイマイザはビュ
ーV1、V3、およびV4に対してビュー合成とビュー
分解の両方を考慮し、最も効率の良い方を選択する。
上に示した例では、ビューV1、V3およびV4は、分
解モードが選択されるか合成モードが選択されるかによ
り、常に同じ方法で処理することができる。ただし、単
純ビューについては混合的な戦略を考えるのが望ましい
ことがある。これに関して、ビューの実体化から得られ
る一時テーブルがそれに対して定義されたインデクスを
持つようにし、以後の一時テーブルへのアクセスを容易
にすることができる。
実体化の概念を問合せプランのビューに関して提示して
来たが、これは問合せ木の部分木に一般化することがで
きる。所与の問合せ木を実体化しておそらくは一時テー
ブル中に格納することができる。この方法はビュー合成
が問合せ性能に資することがあるのと全く同じ理由で問
合せ最適化に使用することができる。たとえば、問合せ
木が多数回実行される部分木(5ubtree)を有し
ていれば、この問合せは部分木を最初に実体化するとき
にその実体化およびその結果の一時テーブルへの格納を
行うことにより、最適化することができる。これにより
部分木の以後の実行はこの一時テーブルの走査に簡略化
される。問合せ最適化のこのような方法は部分木を実体
化した結果の基数が小さいかまたは部分木の計算のコス
トが高くつく場合に有利である。
多数回実行される部分木の結果を一時テーブルに格納す
るのは部分木が夫々の実体化の都度同じ値を有している
場合、すなわち、相互に関連する変数(Correla
ted Variable)が部分木中に現れない場合
に限り有益である。しかし、たとえ部分木の値が相互に
関連する変数に依存するとしても、相互に関連する変数
の値に依らない、制約の少ないテーブルを実体化し一時
的に格納することはやはり役に立つこともある。次に部
分木の結果は一時テーブルを更に処理することにより求
めることができる。
下記の問合せは問合せ最適化のこの方法の一例を示して
いる。
5ELBCT * ROMTI WIIBRETl、fl  IN( St!LBCT  T3.  f I FROM  V、、、 T 3 WHεRE T3.  f 3=V、  r 1  a
ndV、  f  2=T1.  f  1)テーブル
T1、T2、およびT3とビューVは先に第4図の例に
関して記したものと同じである。
部分問合せ(5ubquery)はTIの各タプルにつ
いて実行される。ビューVを繰返し実行するコストはビ
ューを一度実体化し、その結果を一時テーブルに格納す
れば回避することができる。たとえビューが実体化され
ても、かなりな量の作業を行うこと、たとえば、T3と
実体化されたビューの選択されたタプルとを結合するこ
とは、部分問合せの結果を計算するためにやはり必要で
ある。この作業はTIの各タプルについて繰返さなけれ
ばならない。部分問合せの再計算は部分問合せ全体を1
同突体化し、これを−時テーブルに格納することにより
回避することができる。
成る場合には、部分問合せの結果がT1.flの値に依
って変わるので、この方法は全熱実行可能できないこと
がある。代案として、テーブルT3とビニ−Vに関する
ジョインとして下に定義する制約の少ない部分問合せを
実体化することができる。
SBL[ICT  T3.  fl  V、  T2)
゛ FROMV、T3 ノ 1すI(ERB   T3.  f3=V、  flこ
の制約の少ない部分問合せの値は相互に関連する変数に
依って変わることはないから、1回だけ実体化して、そ
れを再使用のため一時テーブルに格納することができる
。部分問合せ全体を計算するために次に選択された演算
を一時テーブルについて行う。
本発明はその精神および本質的特性から逸脱することな
く他の特定の形態に修正できることは当業者は理解でき
るであろう。それ故ここに開示した実施例はすべての局
面において例示であって限定ではないと考える。本発明
の範囲は前述の説明ではなく特許請求の範囲によって示
されるものであり、それと同等の意味および範囲に入る
すべての変更は本願の技術的範囲に入る。
(発明の効果) 以上、詳細に説明したように、本発明によればデータベ
ースに対する問合せ中でビューをベース・テーブルと同
じに取り扱うことができるので、データベース操作の自
由度が向上し複雑な質問を発することができる。
【図面の簡単な説明】
第1図は本発明を適用したデータベース・システムの簡
略ブロック図、第2図は問合せ実行プランを表現する図
、第3図はビュー合成を用いた問合せ実行プランを表現
する図、第4図はビュー合成を用いた別の問合せ実行プ
ランを表現する図、第5図はビュー合成とビュー分解の
両方を用いた問合せ実行プランを表現する図である。 10:CPU 12:永久記憶装置 13:主記憶装置 14:入力装置 16:出力装置 18:ベース・テーブル 20:ビュ一定義 22:タプル・レジスタ 24.24′ニ一時テーブル 26:インデクス

Claims (1)

  1. 【特許請求の範囲】 データがベース・テーブルの形で格納され、1つまたは
    複数の前記ベース・テーブルを参照する仮想テーブルの
    定義によりビューが生成されるデータベース・システム
    において、問合せ中で参照される少なくともひとつのビ
    ューについてのビュー・ノードを含む問合せ実行プラン
    を作成する段階と、 前記ビューの定義を実行してその結果をバッファに一時
    的に格納する段階と、 前記問合せ実行プラン中で前記ビュー・ノードへの参照
    の都度前記バッファに一時的に格納されている前記結果
    にアクセスする段階と を含むことを特徴とする問合せ処理方法。
JP63310990A 1987-12-11 1988-12-08 問合わせ処理方法 Pending JPH022459A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13187687A 1987-12-11 1987-12-11
US131,876 1987-12-11

Publications (1)

Publication Number Publication Date
JPH022459A true JPH022459A (ja) 1990-01-08

Family

ID=22451399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63310990A Pending JPH022459A (ja) 1987-12-11 1988-12-08 問合わせ処理方法

Country Status (3)

Country Link
US (1) US5276870A (ja)
EP (1) EP0320266A3 (ja)
JP (1) JPH022459A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH113359A (ja) * 1997-05-09 1999-01-06 Internatl Business Mach Corp <Ibm> 照会処理システム、方法及びプログラム

Families Citing this family (159)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3059467B2 (ja) * 1990-07-17 2000-07-04 シャープ株式会社 ファイル管理装置
JPH04299459A (ja) * 1991-03-27 1992-10-22 Nec Corp データベースアクセスシステム
US5434971A (en) * 1991-06-28 1995-07-18 Digital Equipment Corp. System for constructing a table data structure based on an associated configuration data structure and loading it with chemical sample physical data
US5446575A (en) * 1991-06-28 1995-08-29 Digital Equipment Corp. System for constructing and loading a table data structure based on an associated configuration data
US5666526A (en) * 1993-09-02 1997-09-09 Microsoft Corp. Method and system for supporting scrollable, updatable database queries
US5421008A (en) * 1991-11-08 1995-05-30 International Business Machines Corporation System for interactive graphical construction of a data base query and storing of the query object links as an object
US6578027B2 (en) * 1996-08-20 2003-06-10 Business Objects, Sa Relational database access system using semantically dynamic objects
US5388255A (en) * 1991-12-19 1995-02-07 Wang Laboratories, Inc. System for updating local views from a global database using time stamps to determine when a change has occurred
JP3163141B2 (ja) * 1992-01-30 2001-05-08 富士通株式会社 リレーショナルデータベース処理装置および処理方法
US5412804A (en) * 1992-04-30 1995-05-02 Oracle Corporation Extending the semantics of the outer join operator for un-nesting queries to a data base
JPH0689307A (ja) * 1992-05-04 1994-03-29 Internatl Business Mach Corp <Ibm> データベース内の情報を表示する装置および方法
JPH0748185B2 (ja) * 1992-08-12 1995-05-24 株式会社ピーエフユー 副次問い合わせ編集装置およびその方法
US5530854A (en) * 1992-09-25 1996-06-25 At&T Corp Shared tuple method and system for generating keys to access a database
US5701453A (en) * 1993-07-01 1997-12-23 Informix Software, Inc. Logical schema to allow access to a relational database without using knowledge of the database structure
US5414644A (en) * 1993-11-24 1995-05-09 Ethnographics, Inc. Repetitive event analysis system
GB9417314D0 (en) * 1994-08-27 1994-10-19 Int Computers Ltd Method for performing joins in a database system
US5666524A (en) * 1994-08-31 1997-09-09 Price Waterhouse Llp Parallel processing system for traversing a transactional database
US5675785A (en) * 1994-10-04 1997-10-07 Hewlett-Packard Company Data warehouse which is accessed by a user using a schema of virtual tables
US5671403A (en) * 1994-12-30 1997-09-23 International Business Machines Corporation Iterative dynamic programming system for query optimization with bounded complexity
US5701461A (en) * 1995-01-27 1997-12-23 Microsoft Corporation Method and system for accessing a remote database using pass-through queries
US5619692A (en) * 1995-02-17 1997-04-08 International Business Machines Corporation Semantic optimization of query order requirements using order detection by normalization in a query compiler system
US5546576A (en) * 1995-02-17 1996-08-13 International Business Machines Corporation Query optimizer system that detects and prevents mutating table violations of database integrity in a query before execution plan generation
NL9500430A (nl) * 1995-03-03 1996-10-01 Itopics Holding B V Werkwijze en inrichting voor het zoeken en vinden van gegevens uit een bestand.
CA2168287C (en) * 1995-03-31 2000-05-23 Guy M. Lohman Method for detecting and optimizing relational queries with encoding/decoding tables
NL1000125C2 (nl) * 1995-04-12 1996-10-15 Marketrieve B V Werkwijze voor het op een scherm zichtbaar maken van gegevens gekozen uit een aantal in een geheugen opgeslagen gegevens.
USRE37965E1 (en) 1995-09-27 2003-01-07 International Business Machines Corporation Method for localizing execution or subqueries and determining collocation of execution of subqueries in a parallel database
US5745746A (en) * 1996-06-24 1998-04-28 International Business Machines Corporation Method for localizing execution of subqueries and determining collocation of execution of subqueries in a parallel database
US6112199A (en) * 1995-10-18 2000-08-29 Nelson; Paul M. Data item values
US5995961A (en) * 1995-11-07 1999-11-30 Lucent Technologies Inc. Information manifold for query processing
US5740423A (en) * 1995-12-28 1998-04-14 Csg Systems, Inc. System and method for accessing distributed data on a plurality of databases
US5832485A (en) * 1996-02-14 1998-11-03 Oracle Corporation Method for editing views created by joins
US6519601B1 (en) 1996-05-22 2003-02-11 Universitaire Ziekenhuizen Leuven Relational database compiled/stored on a memory structure providing improved access through use of redundant representation of data
CA2253345C (en) * 1996-05-22 2004-10-26 Universitaire Ziekenhuizen Leuven Relational database compiled/stored on a memory structure
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
DE19627472A1 (de) * 1996-07-08 1998-01-15 Ser Systeme Ag Datenbanksystem
US5987449A (en) * 1996-08-23 1999-11-16 At&T Corporation Queries on distributed unstructured databases
US5999926A (en) * 1996-08-23 1999-12-07 At&T Corp. View maintenance for unstructured databases
US5897632A (en) * 1996-08-27 1999-04-27 At&T Corp Method and system for using materialized views to evaluate queries involving aggregation
WO2000079434A1 (en) * 1999-06-22 2000-12-28 Internet Dynamics, Inc. Query interface to policy server
US7272625B1 (en) 1997-03-10 2007-09-18 Sonicwall, Inc. Generalized policy server
US7821926B2 (en) * 1997-03-10 2010-10-26 Sonicwall, Inc. Generalized policy server
US7912856B2 (en) * 1998-06-29 2011-03-22 Sonicwall, Inc. Adaptive encryption
US6408336B1 (en) 1997-03-10 2002-06-18 David S. Schneider Distributed administration of access to information
US8914410B2 (en) * 1999-02-16 2014-12-16 Sonicwall, Inc. Query interface to policy server
US7580919B1 (en) 1997-03-10 2009-08-25 Sonicwall, Inc. Query interface to policy server
EP0877328A3 (en) * 1997-05-09 2000-01-19 International Business Machines Corporation Database query system and method
US6134540A (en) * 1997-05-09 2000-10-17 International Business Machines Corporation System, method, and program for applying query rewrite technology to object building
US5873075A (en) * 1997-06-30 1999-02-16 International Business Machines Corporation Synchronization of SQL actions in a relational database system
US6219662B1 (en) * 1997-07-10 2001-04-17 International Business Machines Corporation Supporting database indexes based on a generalized B-tree index
AU8485498A (en) * 1997-07-14 1999-02-08 Infosquare Corporation Static views of data bases
US6006216A (en) * 1997-07-29 1999-12-21 Lucent Technologies Inc. Data architecture for fetch-intensive database applications
US6990458B2 (en) * 1997-08-28 2006-01-24 Csg Systems, Inc. System and method for computer-aided technician dispatch and communication
GB2330221B (en) * 1997-10-09 2002-07-03 Ibm Optimisation of relational database queries
AU761900B2 (en) * 1998-03-27 2003-06-12 International Business Machines Corporation Processing precomputed views
US6272502B1 (en) * 1998-05-11 2001-08-07 Lucent Technologies Inc. Refreshing materialized views of a database to maintain consistency with underlying data
US6339769B1 (en) * 1998-09-14 2002-01-15 International Business Machines Corporation Query optimization by transparently altering properties of relational tables using materialized views
CA2249096C (en) * 1998-09-30 2001-12-04 Ibm Canada Limited-Ibm Canada Limitee Method for determining optimal database materializations using a query optimizer
US6327587B1 (en) 1998-10-05 2001-12-04 Digital Archaeology, Inc. Caching optimization with disk and/or memory cache management
US6601058B2 (en) * 1998-10-05 2003-07-29 Michael Forster Data exploration system and method
US6546381B1 (en) 1998-11-02 2003-04-08 International Business Machines Corporation Query optimization system and method
US6718320B1 (en) 1998-11-02 2004-04-06 International Business Machines Corporation Schema mapping system and method
US6163859A (en) 1998-12-02 2000-12-19 Support.Com, Inc. Software vault
US5991754A (en) * 1998-12-28 1999-11-23 Oracle Corporation Rewriting a query in terms of a summary based on aggregate computability and canonical format, and when a dimension table is on the child side of an outer join
US6513034B1 (en) 1999-04-16 2003-01-28 International Business Machines Corporation Deriving uniqueness for indices on summary tables
EP1049030A1 (en) 1999-04-28 2000-11-02 SER Systeme AG Produkte und Anwendungen der Datenverarbeitung Classification method and apparatus
US6847962B1 (en) 1999-05-20 2005-01-25 International Business Machines Corporation Analyzing, optimizing and rewriting queries using matching and compensation between query and automatic summary tables
US7167853B2 (en) * 1999-05-20 2007-01-23 International Business Machines Corporation Matching and compensation tests for optimizing correlated subqueries within query using automatic summary tables
US6374263B1 (en) * 1999-07-19 2002-04-16 International Business Machines Corp. System for maintaining precomputed views
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
US7010580B1 (en) * 1999-10-08 2006-03-07 Agile Software Corp. Method and apparatus for exchanging data in a platform independent manner
US6496828B1 (en) 1999-12-17 2002-12-17 International Business Machines Corporation Support for summary tables in a heterogeneous database environment
US6532470B1 (en) 1999-12-17 2003-03-11 International Business Machines Corporation Support for summary tables in a database system that does not otherwise support summary tables
US7783625B2 (en) * 1999-12-22 2010-08-24 International Business Machines Corporation Using data in materialized query tables as a source for query optimization statistics
ES2208164T3 (es) * 2000-02-23 2004-06-16 Ser Solutions, Inc Metodo y aparato para procesar documentos electronicos.
JP2004509382A (ja) * 2000-05-26 2004-03-25 コンピュータ アソシエイツ シンク,インコーポレイテッド データベースクエリーを自動的に発生するシステム及び方法
CA2310578A1 (en) 2000-06-02 2001-12-02 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for synchronizing not-logged application temporary tables in a multi-node relational database management system
US9177828B2 (en) 2011-02-10 2015-11-03 Micron Technology, Inc. External gettering method and device
EP1182577A1 (en) 2000-08-18 2002-02-27 SER Systeme AG Produkte und Anwendungen der Datenverarbeitung Associative memory
US6598041B1 (en) 2000-09-07 2003-07-22 International Business Machines Corporation Method, system, and program for processing modifications to data in tables in a database system
US6671697B1 (en) * 2000-09-29 2003-12-30 Arthur Thibodeau Rental property caching and searching system and process
US6856996B2 (en) 2001-03-30 2005-02-15 International Business Machines Corporation Method, system, and program for accessing rows in one or more tables satisfying a search criteria
US7415438B1 (en) 2001-06-12 2008-08-19 Microstrategy, Incorporated System and method for obtaining feedback from delivery of informational and transactional data
US7574376B1 (en) 2001-06-12 2009-08-11 Microstrategy Incorporated System and method for generating and using a transaction enable report
US6801910B1 (en) 2001-06-19 2004-10-05 Microstrategy, Incorporated Method and system for guiding drilling in a report generated by a reporting system
US8005870B1 (en) 2001-06-19 2011-08-23 Microstrategy Incorporated System and method for syntax abstraction in query language generation
US7302639B1 (en) 2001-06-19 2007-11-27 Microstrategy, Inc. Report system and method using prompt in prompt objects
US7356840B1 (en) 2001-06-19 2008-04-08 Microstrategy Incorporated Method and system for implementing security filters for reporting systems
US7430562B1 (en) 2001-06-19 2008-09-30 Microstrategy, Incorporated System and method for efficient date retrieval and processing
US7559048B1 (en) 2001-06-19 2009-07-07 Microstrategy Incorporated System and method for managing objects between projects
US8051168B1 (en) 2001-06-19 2011-11-01 Microstrategy, Incorporated Method and system for security and user account integration by reporting systems with remote repositories
US7861161B1 (en) 2001-06-19 2010-12-28 Microstrategy, Inc. Report system and method using prompt objects
US7801967B1 (en) 2001-06-19 2010-09-21 Microstrategy, Incorporated Method and system for implementing database connection mapping for reporting systems
US7356758B1 (en) 2001-06-19 2008-04-08 Microstrategy Incorporated System and method for run-time report resolution of reports that include prompt objects
US7925616B2 (en) 2001-06-19 2011-04-12 Microstrategy, Incorporated Report system and method using context-sensitive prompt objects
US7725811B1 (en) 2001-06-19 2010-05-25 Microstrategy, Inc. Report system and method using prompt object abstraction
US6697808B1 (en) 2001-06-19 2004-02-24 Microstrategy, Inc. Method and system for performing advanced object searching of a metadata repository used by a decision support system
US7228303B1 (en) 2001-06-20 2007-06-05 Microstrategy Inc. System and method for remote manipulation of analytic reports
US6772137B1 (en) 2001-06-20 2004-08-03 Microstrategy, Inc. Centralized maintenance and management of objects in a reporting system
US6658432B1 (en) 2001-06-20 2003-12-02 Microstrategy, Inc. Method and system for providing business intelligence web content with reduced client-side processing
US7836178B1 (en) 2001-06-20 2010-11-16 Microstrategy Incorporated Technique for limiting access to the resources of a system
US7003512B1 (en) * 2001-06-20 2006-02-21 Microstrategy, Inc. System and method for multiple pass cooperative processing
US7509671B1 (en) 2001-06-20 2009-03-24 Microstrategy Incorporated Systems and methods for assigning priority to jobs in a reporting system
US8522192B1 (en) 2001-06-20 2013-08-27 Microstrategy Incorporated Systems and methods for performing operations in a reporting system
US6691100B1 (en) 2001-06-20 2004-02-10 Microstrategy, Incorporated HTML/DHTML web interface system and method
US9183317B1 (en) 2001-06-20 2015-11-10 Microstrategy Incorporated System and method for exporting report results from a reporting system
US6996569B1 (en) 2001-06-20 2006-02-07 Microstrategy Incorporated Systems and methods for custom grouping of data
US6859798B1 (en) 2001-06-20 2005-02-22 Microstrategy, Inc. Intelligence server system
US7010518B1 (en) 2001-06-20 2006-03-07 Microstrategy, Inc. System and method for user defined data object hierarchy
US7617201B1 (en) 2001-06-20 2009-11-10 Microstrategy, Incorporated System and method for analyzing statistics in a reporting system
US7113993B1 (en) 2001-06-20 2006-09-26 Microstrategy, Inc. Technique for handling server session requests in a system having a plurality of servers
US6820073B1 (en) 2001-06-20 2004-11-16 Microstrategy Inc. System and method for multiple pass cooperative processing
US6704723B1 (en) 2001-06-20 2004-03-09 Microstrategy, Incorporated Method and system for providing business intelligence information over a computer network via extensible markup language
US8606813B1 (en) 2001-06-20 2013-12-10 Microstrategy Incorporated System and method for function selection in analytic processing
US6996568B1 (en) 2001-06-20 2006-02-07 Microstrategy Incorporated System and method for extension of data schema
ES2375403T3 (es) 2001-08-27 2012-02-29 BDGB Enterprise Software Sàrl Un método para la indexación automática de documentos.
US7158994B1 (en) 2001-09-28 2007-01-02 Oracle International Corporation Object-oriented materialized views
GB0130626D0 (en) * 2001-12-20 2002-02-06 Ibm Message filtering
US7970782B1 (en) 2002-01-14 2011-06-28 Microstrategy Incorporated Systems and methods for set filtering of data
US7111020B1 (en) * 2002-03-26 2006-09-19 Oracle International Corporation Incremental refresh of materialized views containing rank function, and rewrite of queries containing rank or rownumber or min/max aggregate functions using such a materialized view
US7089230B2 (en) * 2002-06-07 2006-08-08 International Business Machines Corporation Method for efficient processing of multi-state attributes
US7047251B2 (en) * 2002-11-22 2006-05-16 Accenture Global Services, Gmbh Standardized customer application and record for inputting customer data into analytic models
US7188098B2 (en) * 2003-09-24 2007-03-06 International Business Machines Corporation Query transformation for union all view join queries using join predicates for pruning and distribution
US7383246B2 (en) 2003-10-31 2008-06-03 International Business Machines Corporation System, method, and computer program product for progressive query processing
US7890497B2 (en) 2004-04-14 2011-02-15 Oracle International Corporation Using estimated cost to schedule an order for refreshing a set of materialized views (MVS)
US8478742B2 (en) * 2004-04-14 2013-07-02 Oracle Corporation Using estimated cost to refresh a set of materialized views (MVS)
US7734602B2 (en) 2004-04-14 2010-06-08 Oracle International Corporation Choosing whether to use a delayed index maintenance depending on the portion of the materialized view (MV) changed
US20050278301A1 (en) * 2004-05-26 2005-12-15 Castellanos Maria G System and method for determining an optimized process configuration
US7971191B2 (en) * 2004-06-10 2011-06-28 Hewlett-Packard Development Company, L.P. System and method for analyzing a process
US20050283458A1 (en) * 2004-06-22 2005-12-22 Microsoft Corporation Automatic detection of frequently used query patterns in a query workload
US7236938B2 (en) * 2004-08-11 2007-06-26 Hewlett-Packard Development Company, L.P. System and method for refreshing metric values
US8412671B2 (en) 2004-08-13 2013-04-02 Hewlett-Packard Development Company, L.P. System and method for developing a star schema
US8185518B2 (en) 2004-11-12 2012-05-22 International Business Machines Corporation Method, system and program product for rewriting structured query language (SQL) statements
US7861253B1 (en) 2004-11-12 2010-12-28 Microstrategy, Inc. Systems and methods for accessing a business intelligence system through a business productivity client
US7711692B2 (en) * 2004-11-12 2010-05-04 International Business Machines Corporation Method, system and program product for rewriting view statements in structured query language (SQL) statements
US20060167825A1 (en) * 2005-01-24 2006-07-27 Mehmet Sayal System and method for discovering correlations among data
US8631391B2 (en) 2005-01-24 2014-01-14 Hewlett-Packard Development Company, L.P. Method and a system for process discovery
US7529790B1 (en) 2005-01-27 2009-05-05 Hewlett-Packard Development Company, L.P. System and method of data analysis
US7516181B1 (en) 2005-02-08 2009-04-07 Microstrategy, Inc. Technique for project partitioning in a cluster of servers
US8761659B1 (en) 2005-02-11 2014-06-24 Microstrategy, Inc. Integration of e-learning with business intelligence system
US7599925B2 (en) * 2005-03-31 2009-10-06 Microsoft Corporation Using query expression signatures in view matching
US7467145B1 (en) 2005-04-15 2008-12-16 Hewlett-Packard Development Company, L.P. System and method for analyzing processes
US8423396B1 (en) 2005-04-28 2013-04-16 Hewlett-Packard Development Company, L.P. System and method for process discovery
US8645313B1 (en) 2005-05-27 2014-02-04 Microstrategy, Inc. Systems and methods for enhanced SQL indices for duplicate row entries
US7376646B2 (en) * 2005-06-17 2008-05-20 International Business Machines Corporation Cost-based subquery correlation and decorrelation
US20070174234A1 (en) * 2006-01-24 2007-07-26 International Business Machines Corporation Data quality and validation within a relational database management system
US7797312B2 (en) * 2006-04-06 2010-09-14 International Business Machines Corporation Database query processing method and system
US7680787B2 (en) * 2006-04-06 2010-03-16 International Business Machines Corporation Database query generation method and system
JP5068062B2 (ja) * 2006-10-30 2012-11-07 インターナショナル・ビジネス・マシーンズ・コーポレーション データベースを統合するためのシステム、方法、およびプログラム
US8321357B2 (en) 2009-09-30 2012-11-27 Lapir Gennady Method and system for extraction
US9158833B2 (en) 2009-11-02 2015-10-13 Harry Urbschat System and method for obtaining document information
US9152883B2 (en) 2009-11-02 2015-10-06 Harry Urbschat System and method for increasing the accuracy of optical character recognition (OCR)
US9213756B2 (en) 2009-11-02 2015-12-15 Harry Urbschat System and method of using dynamic variance networks
US8914404B1 (en) * 2011-03-29 2014-12-16 Emc Corporation Techniques for performing view indication management
US9471630B2 (en) * 2012-03-06 2016-10-18 International Business Machines Corporation Efficient query processing on ordered views
US9390174B2 (en) 2012-08-08 2016-07-12 Google Inc. Search result ranking and presentation
US9734221B2 (en) * 2013-09-12 2017-08-15 Sap Se In memory database warehouse
US9734230B2 (en) 2013-09-12 2017-08-15 Sap Se Cross system analytics for in memory data warehouse
WO2016155511A1 (en) * 2015-03-28 2016-10-06 Huawei Technologies Co., Ltd. A system and method to optimize queries on a view
US11074258B2 (en) * 2019-05-15 2021-07-27 Sap Se Temporary materialized views

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS583031A (ja) * 1981-06-30 1983-01-08 Fujitsu Ltd リレ−シヨナル・モデルにおけるジヨイン演算処理方式
US4688195A (en) * 1983-01-28 1987-08-18 Texas Instruments Incorporated Natural-language interface generating system
US4506326A (en) * 1983-02-28 1985-03-19 International Business Machines Corporation Apparatus and method for synthesizing a query for accessing a relational data base
JPH0724036B2 (ja) * 1983-12-23 1995-03-15 株式会社日立製作所 データベース処理方法
US4888690A (en) * 1985-01-11 1989-12-19 Wang Laboratories, Inc. Interactive error handling means in database management
US5097408A (en) * 1985-01-11 1992-03-17 Wang Laboratories, Inc. Apparatus for specifying a result relation in a relational database system by selection of rows
US4631673A (en) * 1985-01-22 1986-12-23 International Business Machines Corporation Method for refreshing multicolumn tables in a relational data base using minimal information
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
JPS61204733A (ja) * 1985-03-07 1986-09-10 Oki Electric Ind Co Ltd 視野管理システム
US4918593A (en) * 1987-01-08 1990-04-17 Wang Laboratories, Inc. Relational database system
US4791561A (en) * 1987-04-17 1988-12-13 Wang Laboratories, Inc. Interactive construction of means for database maintenance
US4805099A (en) * 1987-04-17 1989-02-14 Wang Laboratories, Inc. Retrieval of related records from a relational database
US4930071A (en) * 1987-06-19 1990-05-29 Intellicorp, Inc. Method for integrating a knowledge-based system with an arbitrary database system
JP2753296B2 (ja) * 1988-12-26 1998-05-18 株式会社日立製作所 電子銃の製造方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH113359A (ja) * 1997-05-09 1999-01-06 Internatl Business Mach Corp <Ibm> 照会処理システム、方法及びプログラム

Also Published As

Publication number Publication date
EP0320266A3 (en) 1992-03-11
US5276870A (en) 1994-01-04
EP0320266A2 (en) 1989-06-14

Similar Documents

Publication Publication Date Title
JPH022459A (ja) 問合わせ処理方法
US5797136A (en) Optional quantifiers in relational and object-oriented views of database systems
US6529896B1 (en) Method of optimizing a query having an existi subquery and a not-exists subquery
US5799309A (en) Generating an optimized set of relational queries fetching data in an object-relational database
US6006214A (en) Database management system, method, and program for providing query rewrite transformations for nested set elimination in database views
US6574623B1 (en) Query transformation and simplification for group by queries with rollup/grouping sets in relational database management systems
US6604100B1 (en) Method for converting relational data into a structured document
US7587383B2 (en) Redundant join elimination and sub-query elimination using subsumption
McHugh et al. Lore: A database management system for semistructured data
US5963933A (en) Efficient implementation of full outer join and anti-join
US6574639B2 (en) Query optimization with deferred updates and autonomous sources
Litwin et al. MSQL: A multidatabase language
US5864847A (en) Reordering of complex SQL queries involving groupbys, joins, outer joins and full outer joins
US5778354A (en) Database management system with improved indexed accessing
US7925668B2 (en) Querying markup language data sources using a relational query processor
US5615361A (en) Exploitation of uniqueness properties using a 1-tuple condition for the optimization of SQL queries
US6832219B2 (en) Method and system for storing and querying of markup based documents in a relational database
US6826562B1 (en) Method of simplifying and optimizing scalar subqueries and derived tables that return exactly or at most one tuple
US5367675A (en) Computer automated system and method for optimizing the processing of a query in a relational database system by merging subqueries with the query
US5822750A (en) Optimization of correlated SQL queries in a relational database management system
US7246108B2 (en) Reusing optimized query blocks in query processing
US6449609B1 (en) Using materialized view to process a related query containing a one to many lossless join
US6449605B1 (en) Using a materialized view to process a related query containing a one to many lossless join
US20070061318A1 (en) System and method of data source agnostic querying
Follenfant et al. RDF modelling and SPARQL processing of SQL abstract syntax trees