JP2002510088A - 予め演算されたビューの処理 - Google Patents
予め演算されたビューの処理Info
- Publication number
- JP2002510088A JP2002510088A JP2000541606A JP2000541606A JP2002510088A JP 2002510088 A JP2002510088 A JP 2002510088A JP 2000541606 A JP2000541606 A JP 2000541606A JP 2000541606 A JP2000541606 A JP 2000541606A JP 2002510088 A JP2002510088 A JP 2002510088A
- Authority
- JP
- Japan
- Prior art keywords
- query
- view
- database
- views
- user
- 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.)
- Ceased
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/24539—Query rewriting; Transformation using cached or materialised query results
-
- 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/22—Indexing; Data structures therefor; Storage structures
-
- 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/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
- G06F16/24556—Aggregation; Duplicate elimination
-
- 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
-
- 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/99933—Query processing, i.e. searching
-
- 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/99933—Query processing, i.e. searching
- Y10S707/99934—Query formulation, input preparation, or translation
-
- 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/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- 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/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本明細書中に組み込まれ、それらは:米国特許仮出願第60,079,679号
、1998年3月27日出願、発明の名称「アドバイザを利用することによりデ
ータベースクエリーに返答するためのシステムと方法」;米国特許仮出願第60
,079,670号、1998年3月27日出願、発明の名称「生成された候補
ビューを利用することによりデータベースクエリに返答するためのシステムと方
法」;米国特許仮出願第60,079,671号、1998年3月27日出願、
発明の名称「集積サーバを利用することによりデータベースクエリに返答するた
めのシステムと方法」;および、米国特許仮出願第09/049,784号、1
998年3月27日出願、発明の名称「リレーショナルデータベースクエリを書
換えるためのシステムと方法」;である。
たビューを(管理を含み)処理することに関する。
の集合である。データは、普通には、メタデータによって定義される既知のフォ
ーマットを有する。データベースでのデータは、普通には、データベース管理シ
ステムによって格納され、取出され、そして修正される。リレーショナルデータ
ベース管理システムは、情報をテーブル中に、データの行と列で格納し、検索を
行う。リレーショナルデータベースでは、テーブルの行は、普通には、レコード
(個別の項目についての情報の集合)をテーブルし、列は、普通には、フィール
ド(レコードの特定の属性)をテーブルす。リレーショナルデータベース管理シ
ステムは、一方のテーブルでのフィールドからの情報を、他方のテーブルの対応
するフィールドでの情報と突合わせることによって、および、両テーブルからの
データを組合せる第3のテーブルを作成することによってデータベースについて
のユーザークエリーに応答できる。例えば、一方のテーブルが、フィールド EMP
LOYEE-ID(従業員ID)、 LAST-NAME (姓)、 FIRST-NAME(名)、 DEPT-ID(
部門ID)、 SALARY(給与)と HIRE-DATE(採用日)、含み、別のテーブルが
、フィールド DEPT-ID(部門ID), DEPT-NAME(部門名称)と、LOCATION(場 所) を含む場合、リレーショナルデータベース管理システムは、特定の場所に おける部門で働いている全ての従業員の名前を見出すために、2つのテーブルで
DEPT-ID(部門ID)フィールドを突合わすことができる。
ショナルデータベースにクエリーを発し、更新し、および管理する。データ・サ
ブ言語は、データにアクセスする特化された目的のために別のコンピュータ言語
と関連して使用され得るひとつである。Relational Technology, Inc. (ASK/Ing
res) からのQUELと Digital Equipment Corporation からのRDMLを含め
、多くのリレーショナルデータ・サブ言語がある。SQLは、リレーショナルデ
ータベースへのアクセスのために正式に標準化され、広く実装され使用される、
しかし、SQLには多くの変形がある(例えば、California 州 Menlo Park の
Informix Software, Inc. からのRISQL(登録商標))。
SQLでは、その関係はテーブルによってテーブルされる。関係は、普通には、
ひとつ以上の属性(SQLでは列としてテーブルされる)から構成され、その各
々は、データの種類(例えば、文字列、整数、浮動小数点数)に関連する。デー
タは、普通には、テーブル中のタプル(SQLの行)に格納される。
売上、時間、および成果のテーブルが、属性の列と、これらの属性に関するデー
タの行を含む。例えば、図1Aの製品のテーブルは、製品ID、製品種類、およ
びバーコードを含む。特定の操作が、これらのテーブルに実行できる。そのよう
な操作のひとつは選択(selsction)であり、テーブル中の特定の行を識別する 。選択は、普通には、述語が真である行を識別するよう、テーブルをフィルタす
るの使用されるひとつ以上の述語を指定することによってなされる。述語は、普
通には、SQLクエリーのWHERE文に見出せる。例えば、選択操作は、製品ID の1の選択を要求でき、それは、製品のテーブルの第1行を選択することになろ
う。リレーショナルデータベースモデルでの別の操作は、結合 (join) と呼ばれ
る。結合操作は、2つのテーブルからのデータを組合せる方式であり、それは、
普通には、これらのテーブルでのデータ間の関係に基づく。製品のテーブルは、
製品種類を製品IDによって識別し、売上テーブルは、各製品ID/時間(時間
キー)組合せに関連するドルの総額を識別する。製品テーブルと売上テーブルと
は、製品IDの列により結合できる。売上テーブルは、各行で時間キーにも関連
し、時間テーブルは、各時間キーで日に関係する。その故に、売上テーブルと時
間テーブルとは、時間キーの値により結合できる。
テーブルと次元テーブルとは、詳細テーブルのサブセットである。ファクトテー
ブルは、イベント(例えば、売上イベント)を記録する詳細テーブルである。売
上イベント(例えば、時間、店、および製品)に関係する情報が格納されるテー
ブルは、関連するファクトテーブルの次元テーブルである。例えば、時間テーブ
ル、店テーブル、および製品テーブルは、売上テーブルに関連する次元テーブル
である。クラスのアウトボード (Class outboard)(次元の次元)テーブルは、 個別のテーブルで繰返される情報(製品とクラスとの間の関係)による冗長性を
削除する。この特徴は、正規化と称される。
。関数的従属性は、データベースのテーブルにおける値の列間の多数からひとつ
への関係である。列xから列yへの関数的従属性は、2つの行がx列に対して同
じ値を有する場合、その2つの行がy列に対しても同じ値を有する必要がある制
約条件である。関数的従属性は、データベース管理者等のユーザによって明示し
て宣言されることができる。
は、普通には、SUM または COUNT、およびオプションで GROUP BY 文のような集
合関数を使用して、データベースのテーブルにおける行の集計 (summarization)
つまり併合を要求するクエリーである。集合体テーブルは、普通には、他のデ ータベースのテーブルから詳細レベルのレコードを集計つまり併合するテーブル
である。
ベースにメタデータとして保存することを可能にする。ビューは、通例、それが
必要とされる(例えば、SQLステートメントがビューを参照する際)まで、物
理的に具現化(すなわち「予め演算」)されない。ビューについてのメタデータ
は、ビューの名称、各列の名前とデータ種類、およびビューが作成するデータを
記述するSQLテキスト等の情報を含むことができる。ビューについてのメタデ
ータは、普通には、データベースのメタデータに格納されるが、ユーザがビュー
で見るであろう実際のデータは、普通には、物理的には格納されない。むしろ、
データは、普通には、ビューの行が抽出される詳細テーブルに格納される。予め
演算されたビューの場合、データは、普通には、関連する予め演算されたテーブ
ルに格納される。一般に、操作は、詳細テーブルに対して実行できる場合と全く
同様に、ビューに対して実行できる。
情報を要求できる。そのクエリーの結果は、製品テーブル(図1A)、売上テー
ブル(図1B)、および時間テーブル(図1C)から抽出できる。しかし、種々
のテーブルから各質問への返答を抽出することは非常に非効率であり、多くの時
間がかかってしまう。効率を高めるために、データベース管理者は、もっともよ
く尋ねられそうな質問を予測し、これらの質問が実際に尋ねられる前に、これら
のありそうな質問への返答を含むテーブルを予め演算できる。例えば、店のデー
タベース管理者は、頻繁に尋ねられる質問が、所定製品の売上の1日の期間での
総額(合計_ドル)であると判定できる。従って、データベース管理者は、予め
演算されたテーブル(図1D)とそのテーブルに関連する予め演算されたビュー
を創成できる。
ことは期待されず、全てのクエリーが分かったとした場合でさえ、全ての結果を
予め演算する/具現化することは実行できそうにない。クエリーが出され、返答
が予め演算されたテーブルから直ちに利用可能でない場合、そのようなクエリー
に対する返答は、普通には、ひとつ以上の詳細テーブルから抽出され、プロセス
は、非常に多くの時間を要し、多大の演算を要するかもしれない。
算されたビューを処理するための方法と装置を特徴とする。
ベースクエリーは、ユーザーデータベースクエリー履歴に基づき、データベース
に対する全ての可能なビューから成るひとつのサブセットから構成される分析ス
ペースを定義することによって、および、分析スペースにおけるビューを特徴付
けることによって、応答される。
ータベースに対する全ての可能なビューから成るひとつのサブセットから構成さ
れる分析スペースに賦課され、分析スペースにおけるビューが特徴付けられる。
つのサブセットから構成される分析スペースが定義され、コスト公式が、データ
ベースに含まれたデータから成るひとつのユーザ定義サブセットに基づき、分析
スペースへ適用される。
ーを含む分析スペースが定義され、分析スペースにおけるビューが特徴付けられ
る。
ユーザークエリーに基づき候補ビューが生成される。
のユーザークエリーに返答するためのシステムを特徴とし、サーバ内へ統合され
、ユーザークエリーに応答するよう構成された、クエリー処理システムと、サー
バ内へ統合され、データベースについてのユーザークエリーの予め演算された結
果を処理するよう構成された、クエリー処理システムとを備える。
ザークエリーに返答するための方法を特徴とし、サーバで受取られたユーザーク
エリーへ応答する工程と、サーバで、データベースについてのユーザークエリー
の予め演算された結果を処理する工程とを含む。
れた集合体の最適セットを創成し評価することによりデータベース管理者を支援
する。本発明は、ユーザークエリー履歴に基づき、予演算のストラトジの有効性
の分析を提供する。本発明は、詳細データのユーザ定義サブセットについての分
析を実行でき、分析時間を低減する。本発明は、サブスペースでひとつ以上の候
補ビューを包摂するビューを考慮するよう分析で使用される候補ビューのスペー
スを細分できる。本発明は、スペース内の他のビューに対して、予め演算された
ビューまたは候補ビューのコスト利益分析が判定できるようにする分析スペース
についてのストラクチャを定義できる。
ベースへクエリーし続けることができ、クエリー書換えファシリティは、既存集
合体を利用するようクエリーを変換する。本発明は、クエリーが提出される方式
に影響せず、データベース管理者がデータベースの集合体性能をチューニングす
ることを可能にする。加えて、全ての集合体関連メタデータは、次元内の階層関
係を含む、データベースシステムのカタログ内へ統合される。
きて、書換えファシリティによってユーザークエリーを書換えるよう使用される
、ビューについてのアドバイスを提供することを可能にし、それによって、クエ
リー処理性能を改善する。本発明は、アドバイザリファシリティが、ユーザーク
エリー履歴に基づき、全ての可能な予め演算されたビューのサブセットだけを分
析することを可能にする。候補ビューは、SQLで生成でき、SQLが関連する
予め演算されたビューを創成するために直接使用できるようにする。候補ビュー
は、候補ビューが生成されるクエリーを書換えることにも書換えファシリティに
よって使用可能であってもよい(ビューが予め演算されている場合)。
テーブルに格納され、全てのデータベース活動の知識を集中化させる。この統合
の結果は、予め演算されたビューが使用されるか否かに拘らず、クエリーの編集
(compilation) と最適化のために拡張 (enhanced) メタデータを使用する一貫 性と能力である。例えば、集合体テーブルデータが詳細データと同期していない
場合、システムは、即座にそれについて知り、(そうするよう要求されない限り
)クエリーを書換えるのにテーブルを使用しない。加えて、最適化ストラトジは
、最大限の統合の結果としてクエリー処理システムに既知である。サーバの統合
は、予め演算されたテーブルが自動的に維持されることを可能にする。この特徴
は、ユーザがSQLインタフェースを使用してアドバイザリとメタデータ情報と
へアクセスすることも可能にする。この特徴は、アドバイザリファシリティがサ
ーバに配置されたクエリー処理能力を使用することも可能にし、フロントエンド
ツールが予め演算されたビューの処理システムの能力を使用できるよう可能にす
る。本発明の局面によると、予め演算されたデータは、予め演算された結果と詳
細データとの間の関係(例えば、外部キーの関係)の定義を可能にするテーブル
に格納される。サーバ統合は、クエリー処理システムがデータベースサーバによ
って提供される論理的および物理的データベース設計オプションへアクセスする
ことも可能にする。
であろう。
ア16(例えば、California 州 Menlo Park の Informix Software, Inc. から
入手可能な Red Brick Warehouse のようなデータウエアハウス)に含まれたデ ータにアクセスするためにクエリーをデータベースサーバ12へネットワーク1
4上で送ることができる。データベースサーバ12は、クエリー処理システム1
8を含み、それは、他方、予め演算されたビューの処理システム20を含む。ク
エリー処理システム18は、クエリーをクライアント10からネットワーク14
上で受取り、予め演算されたビューの処理システム20の支援により、要求され
た情報に対応するデータをデータストア16からクライアント10へ返送するこ
とによって、受取ったクエリーを執行する。予め演算されたビューの処理システ
ム20は、意志判定支援クエリーに対する予め演算された集合体データへの組織
的なアプローチを提供する。各クエリーが執行される前に、予め演算されたビュ
ーの処理システム20は、コスト基準の分析を実行し、クエリー性能を改善する
ためにクエリーが捕捉され (intercept) 書換えられるべきか否か判定する。加 えて、予め演算されたビューの処理システム20は、クエリー執行についての統
計をログし、データベース管理者が既存の集合ストラテジがどれだけ効率的に働
いているか判定し、現行集合ストラテジを改善する方法を判定する。
ファクトのそれである。小売環境では、例えば、各売上は特定の時間に、特定の
店で、および、特定の製品に発生する。この例では、各売上イベントは、ファク
トであり、3次元のスペース(製品、店、時間)での点で発生する。各次元は、
通例、階層を形成し:製品は、例えば、細かさの最細レベルで製品種類と、最粗
レベルで製品カテゴリとを持つ2レベル階層であってよい。多次元データモデル
は、次元における点(例えば、製品の種類)とこれらの点の属性(例えば、製品
の色)との間を区別する。集合体は、普通には、次元スペースで点につき、可能
な限り次元的属性に置かれた制約を持ち、演算される。
き認定するファクトの記録を取出すこと、規定された次元で点に対する値によっ
て記録をグループ化すること、および、各グループへ集合体関数を適用すること
を包含する。高度に能率的なクエリー処理システムでさえ、何十億ものファクト
と関連する次元記録を必要とする集合体クエリーは、演算することに非常に高く
つくことが多い。予めの演算は、集合体処理で劇的な性能増加 (gain) の結果と
なることが多く、細かさのひとつのレベルでの集合体結果は、より粗い細かさで
の集合体を演算(ロールアップ)することに使用できることが多い。これは、全
ての可能な集合体を予め演算する必要性をなくす。
クエリー書換えシステム(書換え器)、クエリーのログと分析のファシリティ(
アドバイザ)、および、拡張メタデータファシリティ(メタデータ層)を含む。
書換え器は、集合体テーブルを使用してユーザのデータベースクエリーを書換え
ることを捕捉し試み;書換え器は、クライアントアプリケーションとエンドユー
ザに透過的 (transparently) にクエリーを書換える。アドバイザは、既存の集 合体テーブルのサイズと相対的な利益、および創成することに有用であろう可能
性(候補)の集合体テーブルについてのアドバイスをクエリーしてもよい。メタ
データ層は、データベースオブジェクトとその関係についての情報を格納する。
を示す。一般的に、ビュー30は、クライアントクエリーをデータストア16上
で定義する。予め演算されたビュー36は、クエリーを定義し、予め演算された
テーブル38へリンクされ、テーブルは、クエリーの予め演算された結果を含む
データベースのテーブルである。換言すると、予め演算されたビューで定義され
たクエリーは、クエリーがクエリー処理システム18によって受取られる前に演
算される。対照的に、アドバイザによって生成された候補ビュー42を含む、正
規ビュー40によって定義されたクエリーに対する結果は、正規ビューが参照さ
れる度毎に演算されねばならない。操作では、予め演算されたビュー36で定義
されたクエリーは自動的に予め計算でき、そうでなければ、データベース管理者
は、関連する予め演算されたテーブル38を在住させねばならない。データベー
ス管理者は、例えば、テーブル管理ユーティリティ (TMU) LOAD DATA 操作、ま たは、SQLの "INSERT INTO … SELECT" ステートメントを使用して、テーブ ルを在住させてもよい。管理者は、次に、予め演算されたテーブル38の内容を
反映するクエリーテーブル現を含む、関連する予め演算されたビュー36を創成
できる。定義後に、クエリー処理システム18は、詳細テーブル46での変更を
反映するよう予め演算されたテーブル38を自動的に更新でき、予め演算された
ビュー(とその関連する予め演算されたテーブルと)を使用するようユーザーク
エリーも書換えできる。
た「集合体クエリー」の結果を格納する予め演算されたテーブルであり、それは
、集合体テーブルと下にある詳細テーブル46のセットとの間の集合体関係を定
義する。予め演算されたビューの定義は、詳細テーブル46と予め演算された結
果を含む集合体テーブル44との間の意味のリンクを確立する。一般的に、集合
体テーブル44は、詳細テーブル46に含まされた情報より粗い細かさ(すなわ
ち、より少ない行)を有する情報を含む。例えば、小売データベースでは、取引
レベルのデータは、売上領収書詳細テーブルに格納された個別の売上領収書の形
態であるかもしれない。売上領収書のテーブルでの記録は、一定の時間期間にわ
たり集合でき、集合体テーブルのセット(例えば、日次売上テーブルおよび月次
売上テーブル)を作出する。
を集合するために(例えば、所定の時間期間にわたる売上合計) SUM または CO
UNT のような標準のSQL関数を使用する。他の集合クエリーは、大きな次元テ
ーブル(例えば、四半期と年、または市区と地域の別個の組合せ)から次元デー
タの別個の行を選択するために GROUP BY 文を使用する。これらの方式では、集
合クエリーは、細かい細かさのデータの行を粗い細かさの行のグループ内へ「ロ
ールアップ」する。クエリー書換えシステムによって提供される性能増加は、こ
れらのロールアップの予めの演算から抽出される。追加の性能増加は、ビューの
列をグループ化することより粗い細かさの列を含む、追加のロールアップを必要
とするクエリーを書換えるクエリー書換えシステムの能力によって達成される。
換言すれば、クエリー書換えシステムは、ビューで定義されたクエリーと一致し
ない大多数のクエリーを書換えることに使用できる。例えば、ビューは、月の列
によってグループ化された行を答申するクエリーを定義するかもしれないが、そ
れでも、このビューは、四半期と年の列によってグループ化されたクエリーを書
換えることに使用できる、これは、これらの列のいずれもがビューによって定義
されたクエリーで命名されていない事実に関らずである。このロールアップ能力
は、それぞれ、月、四半期、および年によってグループ化された3つの個別のビ
ュー、または全ての3つの列によってグループ化されたひとつの非常に広いビュ
ーを創成しなくてはならないことからデータベース管理者を解放する。
め演算されたビューで定義されない列へのロールアップを可能にする。階層は、
値の列によって共有される多数からひとつへの関係である。換言すれば、列Xか
ら列Yへの階層は、2つの行がX列に対して同じ値を有する場合、Y列に対して
同じ値を有するその2つの行を必要とする制約である。列は、同じテーブルまた
は異なるテーブルにあってもよい。例えば、店のテーブルで 店番号の列と都市 の列との間に階層が存在する場合、店番号の列での値が Store_56 である場合は
必ず、都市の列での値は、Los Angeles である。都市には多くの店があり得るが
、所定の店はひとつの都市にだけあり得るので、この関係は、多数対1である。
同様に、店のテーブルでの都市の列は、市場のテーブルでの地域の列と多数対1
の関係を持ち得る(例えば、都市が Los Angeles である場合、地域は常に West
(西部)である)。
6が粗い細かさの列によってグループ化されるクエリーを書換えることに使用さ
れることを可能にする。例えば、店番号から都市への階層の存在は、店番号の値
が別個の都市の値へグループ化されることを可能にする。予め演算されたビュー
36が、店番号によってグループ化される場合、同じビューがこれらの列のひと
つまたは両方について制約するクエリーを書換えることに使用できるので、都市
によってグループ化される別のビューを創成する必要はない。クエリー書換えシ
ステムは、予め演算されたビューの定義の範囲を越えるロールアップを必要とす
るクエリーを書換えるよう、階層34をインテリジェントに使用する。
よび、データベース管理者によって明示的に宣言されねばならないものがある。
結果に従う階層は、クエリー処理システムにとり黙示的に既知である。結果とし
て、例えば、Perkey が、例えば、Period(期間)のテーブルを参照する外部キ ーの列である場合、例えば、Sales.Perkey の列によってグループ化されるビュ ーは、期間のテーブルにおける列のいずれの組合せによってグループ化されるク
エリーを書換えることに自動的に使用され得る。この特徴は、アウトボードテー
ブル(すなわち、次元テーブルによって参照されるテーブル)における列によっ
てグループ化されるクエリーにも適用する。例えば、Storekey が Store(店) のテーブルを参照する外部キーの列であり、Store.Mktkey が Market(市場)の
テーブルを参照する外部キーの列である場合、Sales.Storekey の列によってグ ループ化されるビューは、店および市場のテーブルにおける列のいずれの組合せ
によってグループ化されるクエリーを書換えることに自動的に使用され得る。
ルでの月の列によってグループ化され、月から四半期へおよび四半期から年へ従
属性が存在する場合、両従属性が宣言される必要がある。それらが宣言された後
に、クエリー書換えシステムは、同じ予め演算されたビューを3つの列のいずれ
の組合せによってグループ化されるクエリーを書換えることに使用できる。これ
らの依存性を宣言することは、アドバイザの性能も改善する。階層を宣言するメ
カニズムは、CREATE HIERARCHY コマンドである。CREATE HIERARCHY ステートメ
ントは、関数的従属性を満足し、列が所属するテーブルを識別する一対の列を命
名する。
キーマは、売上詳細テーブル50、期間次元テーブル52、店次元テーブル54
、製品次元テーブル56、販売促進次元テーブル58、市場次元テーブル60、
クラス次元テーブル62を含む。市場テーブルとクラステーブル60、62は、
アウトボードテーブルである。売上テーブルでのドルの列は、日別、店別、製品
別、販売促進別の合計を示す。例えば、詳細テーブルでの単一行は、1999年
1月2日、San Jose Roasting Company が、$95の全粒豆の Aroma Roma コー
ヒーをカタログクーポンを使用する顧客に売ったことを記録できる。ユーザが、
ある時間期間別、ある店別または地理的領域別(例えば、日別、地域別、または
、月別、州別)の売上合計を要求するクエリーを定例的に提出する場合、データ
ベース管理者は、日別、店別の全ての製品と全ての販売促進に対する売上合計を
含めて、店売上テーブル64を定義するかもしれない。この集合体テーブルは、
詳細売上テーブルと同じ関係を店次元テーブル54、期間次元テーブル52とへ
保持するであろうが、しかし、小売のスキーマでの他の次元を参照しないであろ
う。
レポートを求める小売売上アナリストのクエリーに関する実施の形態で、データ
ベース管理者は、予め演算されたビューを以下のように創成できる。特定の四半
期中の特定の製品に対する売上合計を比較するレポートを求める反復されたアナ
リストのクエリーを予知して、データベース管理者は、CREATE TABLE ステート メント70を使用して製品売上の集合体テーブルを創成する(工程72)。デー
タベース管理者は、INSERT ステートメント74を使用して製品売上テーブルを 在住させる(工程76)。データベース管理者は、次に、CREATE VIEW ステート
メント78を使用して、製品売上集合体テーブルに関連する予め演算されたビュ
ーを創成する(工程80)。クエリー書換えシステムは、次に、以下のように、
ユーザークエリーを捕捉できる: select prod_name, qtr, sum(dollars) as total_sales from sales, product, period where sales.prodkey = product.prodkey and sales.classkey = product.classkey and sales.perkey = period.perkey group by prod_name, qtr; クエリー書換えシステムは、これらのクエリーを製品売上の集合体テーブルの走
査で置換えできる。クエリー書換えシステムは、テーブル名称を割当て、結合属
性を書換え、およびクエリー性能を著しく改善する方式でクエリーをテーブルす
。
を提供する。詳細には、本発明は、データベース管理者がどの予め演算されたビ
ューを創成し維持するかを判定するためのインテリジェントな方法を提供する。
大規模なデータウエアハウスにおいて全ての次元での全ての点の組合せに対して
集合体を予め演算し維持することは非実用的であるので、この特徴は特に有用で
ある。
他のシステム構成要素(例えば、書換え器、アドバイザ、およびデータベースサ
ーバ12)がこれらの定義にアクセスすることを可能にする。メタデータ層は、
予め演算されたビューと次元的階層とについての情報を格納し、各予め演算され
たテーブルの状態をそれが演算された源の詳細テーブルに関して追跡する。次元
的階層は、次元での点についての集合体から同じ次元における粗い細かさの他の
点へのロールアップのような、多次元のデータベース機能性を本発明が与えるこ
とを可能にする。
たビューを支援する特徴がある。メタデータ層は、データベース管理者によって
アクセス可能である、予め演算されたテーブルの定義と関係とについての情報を
維持する。メタデータ層は、予め演算されたテーブルがSQLにより定義される
ことも可能にする。メタデータ層は、各予め演算されたテーブルがその関連する
詳細テーブルと同期にあるか否か(すなわち、予め演算されたテーブルが予め演
算されたビューの定義を正確に反映するか否か)を追跡する。この特徴は、シス
テムが、予め演算されたテーブル内への挿入と、関連する詳細テーブルとさもな
ければ予め演算されたテーブルを無効にするであろう操作とに併せての更新とを
取扱えるようにする。メタデータ層は、予め演算されたテーブルの列と関連する
詳細テーブルの列との間のマッピングを識別する。メタデータ層は、グループ化
の列と集合体テーブルに対する集合列とを識別する。メタデータ層は、各集合の
列に対する集合体テーブル現(例えば、min(dollars) および sum(units))を識
別する。メタデータ層は、予め演算されたテーブルがそこにインデックスを作ら
せ、外部キー/主キーの制約条件をそれに対して定義させることを可能にする。
これらの特徴は、予め演算されたテーブルがデータベーススキーマ内へ接続され
、スター印や他の指標をそこに作らせることを可能にし、クエリー処理速度を改
善する。メタデータ層は、予め演算されたテーブル間の関係を識別でき、書換え
器が別の予め演算されたテーブルからひとつの予め演算されたテーブルを演算で
きるようにする。メタデータ層は、任意の次元的階層、ファクト集合体テーブル
(ファクトテーブルからファクトを集合するテーブル)、および次元的に予め演
算されたテーブル(グループ化の列だけを含むテーブル)が定義されることを可
能にする。
につきグループ化された(Sum(dollars) のような)集合体がカテゴリの列につ いての(互換性のある)集合体へロールアップすることに使用できる、ファクト
をテーブルすメタデータを創成する。CREATE HIERARCHY ステートメントをイン タプリートする別の方式は、2つの列間の関数的従属性の宣言としてである。
、CREATE HIERARCHY ステートメントは単一のテーブルからの列を参照する。階 層は、異なるテーブルの列間でも規定できる。本例のスキーマが正規化次元テー
ブルを有すると仮定する。製品次元は、次のような2つのテーブルに表すことが
できる。
とに必要とされ、従って、メタデータ層は、外部キー−主キーの結合制約が製品
のテーブルとクラスのテーブルとの間に存在する必要がある。これらの結合制約
は、書換え器が第2クラスのロールアップを実行できるようにする。
黙示の階層(関数的従属性)も、移行性によって暗示される従属性と同様に暗示
する。 明示と黙示の階層は、書換え器が小さいセットの予め演算された集合体 を使用して大きなクラスのクエリーに返答することを可能にする。
ーブルをローディングし(または、既存の予め演算されたテーブルを使用し)、
および予め演算されたテーブルの厳密な内容を反映するクエリーテーブル現と関
連する予め演算されたビューを定義する。データベース管理者は、予め演算され
たどのビューが存在するかを必然的に知るが、しかし、データベースのユーザは
、この情報を知る必要はない。クエリーがユーザによって提出される場合、クエ
リー書換えシステムは、データベース管理者によって創成された予め演算された
ビューを評価し、可能な場合、元のユーザークエリーに参照されたテーブルより
、普通には、ずっと小さい集合体テーブルに含まれた情報を選択するようクエリ
ーを書換える。可能な場合、結合は単純化または排除され、詳細データと集合体
データとの間に発生する合同の程度に依存して、クエリー応答時間は、非常に加
速される。その上、以下に説明するように、クエリーとビューの定義が厳密に一
致しない場合でさえ、クエリーは、予め演算されたビューに対して書換えられ得
る。
ニュアルでクエリーを書換えるか、またはそのクエリーを変更する必要もなく、
書換え器は、比較的小さなセットの予め演算されたビューの観点でユーザークエ
リーを書換える。書換え器は、予め演算された集合体を使用するよう、集合体ク
エリーを捕捉し、各クエリーを書換えることを試みる。この書換えは、ブロック
毎の基準でなされ、union/ intersect/ except(併合/交差/除外)クエリーで
のブロックと同様に、相関するサブクエリーを含む。書換え器は、可能な書換え
中から選択するためにコスト基準のアルゴリズムを使用する。書換え器は、両種
類のロールアップを実行できる。書換え器は同次元で細かい細かさの集合体から
粗い細かさの集合体へ能率的にロールアップできるので、予め演算された集合体
の全数は低減できる。集合体が次元での点に対応するキーでない (non-key) お よびキーの列の両方につきグループ化される場合、これらのロールアップが実行
できる。書換えは透過的に実行され、それによって、ユーザを集合体処理の詳細
から隔離する。従って、集合体がデータベースから落とされるか、またはデータ
ベースに追加される場合に、ユーザークエリーが変更される必要はない。
に基づき既存の予め演算されたテーブルの有効性を判定する。アドバイザは、デ
ータストア16に対するユーザークエリーの活動をログするファシリティも提供
する。ログされたクエリーから、データベース管理者は、データストア16にお
ける既存の予め演算されたテーブルの使用を分析でき、クエリー性能を改善でき
る新規ビュー(候補ビュー)の創成の可能性を識別できる。
えられたクエリーと、適切な集合体テーブルが存在したとすれば書換えから利益
を得るであろうクエリーと、をログする。時間期間の後に、データベース管理者
は、アドバイザによって創成されたクエリー統計レポート(テーブル)によって
集合体クエリーログを分析できる。ひとつのレポート(RBW_PRECOMPVIEW_UTILIZ
ATION のテーブル)が、データベースにおける既存の予め演算されたビューの使 用についての情報を提供する。別のレポート(RBW_PRECOMPVIEW_CANDIDATES の テーブル)が、ユーザークエリー履歴と既存の予め演算されたビューとに基づき
アドバイザが提案する最適のセットの予め演算されたビューについて情報を提供
する。
される。分析は、データストア16に対する実際のクエリー履歴により最適セッ
トの集合体テーブルを判定するアルゴリズムに基づく。分析の一部として、利益
が、各既存ビューと各候補ビューとへ割付けられる。アドバイザシステムテーブ
ルでの BENEFIT (利益)の列は、関連する詳細テーブルまたは次善のビューよ りむしろ予め演算されたビューによりクエリーを処理することによって節約され
る行の数;と同様に、(既存ビューに対して)ビューが使用された回数、または
(候補ビューに対して)ビューが使用されたであろう回数、を反映するコスト尺
度である。
検査する。予め演算されたテーブルが存在しない場合、ログするメカニズムは、
どの候補の予め演算されたテーブルが在る場合、クエリーに返答することに有用
であろうかを記録するであろう。生成された候補は、普通には、クエリーと厳密
な一致ではないが、むしろユーザークエリーと同じ次元(または、これらの次元
のどれかのサブセット)を包含する広範囲のユーザークエリーに(ロールアップ
により)、能率的に返答することに使用され得るものである。このように、アド
バイザは、格納される必要のある予め演算されたテーブルの数を低減する。換言
すれば、実際のクエリー履歴に基づき、アドバイザは、全ての可能な予め演算さ
れたテーブル(例えば、次元と次元に沿う点の全ての組合せにつきグループ化さ
れた予め演算されたテーブル)のサブセットのインテリジェントな具現化(予め
演算)を可能にする。
ルを使用するようクエリーを変換する場合、アドバイザのログするメカニズムは
、予め演算されたテーブルの使用度についての情報を記録する。アドバイザが予
め演算に対する候補として更に能率的な(存在しない)予め演算されたテーブル
を提案できる場合、この候補もログされるであろう。
能になされたリレーショナルSQL基準のインタフェースを特徴とする。データ
ベース管理者はSQLコマンドを使用して、アドバイザ特定のテーブルにアクセ
スし、既存の予め演算されたテーブルの利用についての情報と、創成されるべき
候補の予め演算されたテーブルについての情報とを取得する。アドバイザは、分
析されなくてはならない予め演算されたテーブルのセットを、全ての可能な予め
演算されたテーブルの小さなサブセットに、限定するためのメカニズムも特徴と
する。加えて、既存の、可能性のある候補の予め演算されたテーブルを分析する
間に、アドバイザは、ログされた参照カウントとひとつの予め演算されたテーブ
ルの別のものによっての(書換え器を使用しての)書換え性とを使用する。
算されたビューを支援し、性能最適化の範囲とメタデータをサーバと共有する能
力とを増大させる。クエリーは、捕捉され、ソフトウエアの個別の断片によって
でなく、データベースサーバ12によって書換えられる。
る全ての他のメタデータと共にシステムのテーブルに格納され、全てのデータベ
ース活動の知識を集中化する。この統合の結果は、予め演算されたビューが使用
されるか否かに拘らず、クエリーの編集と最適化のために拡張メタデータを使用
する一貫性と能力である。例えば、集合体テーブルデータが詳細データと同期し
ていない場合、システムは、即座にそれについて知り、(そうするよう要求され
ない限り)クエリーを書換えることにテーブルを使用しない。加えて、最適化ス
トラテジは、最大限の統合の結果としてクエリー処理システム18は知られてい
る。
以下のように、クエリー処理システム18によって使用される集合戦略を絶えず
改善できる。操作では、ユーザは、クエリーをデータベースサーバ12へネット
ワーク14上で送る(工程90)。当初、データベース管理者は、ひとつ以上の
予め演算されたテーブルを創成したかもしれず、してないかもしれない。予め演
算されたテーブルが創成されなかった場合、書換え器は、クエリーを書換えでき
ない;その代わり、クエリー処理システム18は、クエリーを執行するよう、デ
ータストア16の詳細テーブル46へ直接アクセスする。ひとつ以上の予め演算
されたテーブルが創成されている場合、書換え器は、予め演算されたテーブルを
使用してクエリーを書換えることを試みる(工程92)。アドバイザは、書換え
器によって書換えられたクエリーに対して(工程96)、および、適切な予め演
算されたテーブルが存在する場合に、書換えから利益を得るであろうクエリーに
対して(工程97)レポートを生成し(メタデータ層のログ94に格納する)。
時間期間後に(戻しのループ98でテーブルす)、データベース管理者は、アド
バイザによって創生された統計レポート(テーブル)にクエリーることによって
クエリーログを分析するようアドバイザを使用できる(工程100)。アドバイ
ザシステムテーブルにクエリーすることからの学習情報に基づき、データベース
管理者は、新規の予め演算されたテーブルを追加する(定義し、在住させる)こ
と、または、既存の予め演算されたテーブルを落とすことによって、既存の予め
演算されたテーブルセットを修正する(工程102)。データベース管理者は、
新規の予め演算されたテーブルの各々に対する予め演算されたビューも創成する
(工程104)。
の詳細テーブル46に繰返しクエリーるので、データベーススキーマのユーザの
見解は変わらない。
ース管理者が集合体テーブルの情報を定義するRISQL拡張、および、データ
ベースサーバ12の他の構成要素と通信するためのプログラムのインタフェース
である。メタデータ層は、全てのメタデータ情報を追跡し、そのメタデータ情報
の異なる外部ビューを、システムテーブルによりデータベース管理者へ、コンパ
イラへ、およびローダへ提供する。ひとつの実施の形態で、メタデータ情報は、
データベース管理者によってのみRISQLを使用して創成され、修正されるこ
とができる。
めに使用されるテーブルの作成と、その後、集合テーブルのデータと詳細テーブ
ルのデータの間の関係を定義する集合ビューの定義とを含む。データベース管理
者は次の表現をもつ集合テーブルの定義を作成できる: CREATE VIEW[view_name]AS[query_expression]USING[ table_name]([ table_column_name]) ここで view_name は具体化されたビューの名前であり、table_nameは集合テー ブルの名前であり、またtable_column_nameは集合テーブルの列のリストであり 、その集合テーブルは、仮にSELECTステートメントとして表されたとするとクエ
リー表現によって返される列と一対一で順序よく対応する。ひとつの実施の形態
でquery_expressionは次の形に制限される: SELECT[grouping_column, or aggr_column] FROM[table_name_list] WHERE[join_predicate_list] GROUP BY[grouping_column] GROUP BY 列において指定された列はグルーピング列である。SELECT リストに
おけるグルーピング列は GROUP BY 節で指定された列と正確に一致していなけれ
ばならない。集合列は aggr(expr) の形の列であり、ここで aggr() は SUM()、
MIN()、 MAX()、COUNT()、あるいは COUNT(DISTINCT()) のひとつであり、また
expr は、詳細テーブル、数字、またはその両方におけるひとつまたは複数の列 から導かれる単純な表現である。この実施の形態で WHERE 節は、FROM 節にリス
トされたテーブルに関連する結合述語のみ含むことができる。結合述語は外部キ
ー/主キー関係を通じてのみテーブルを結合できる。更に、これらの外部キー/
主キー結合述語はクエリー表現において指定された詳細テーブルから外側に向か
ってのみ指定できる。この方法で、詳細テーブルは、それが結合の中心(すなわ
ち、外部キー/主キー関係はその位置から外側を指す)にあるので、あるいは全
ての集合列が導出されるテーブルがあるので識別される。
となる。最初にデータベース管理者は、DROP VIEW 表現を使用する集合テーブル
と関連付けられたビューを落とす。次いでデータベース管理者は DROP TABLE 表
現を使用して集合テーブル自身を落とす。
らなる主キー114(timekey, mktkey, prodkey)と、ドル116とトランザク
ション118の列を一緒に持つ売上ファクトテーブル112を含む。売上ファク
トテーブル112は、時間テーブル120とマーケットテーブル122によって
表される時間次元とマーケット次元を有する。時間テーブル120は、日列12
6、月列128、および年列130と同様に、主キー124(timekey)を有す る。時間テーブル120は、日数から月数、月数から年数にと、多数対1への写
像があるので、逆正規化される。マーケットテーブル122は、地域アウトボー
ドテーブル132を含む(すなわち次元の次元)。
る集合によって、次のように作り出される: create table sales1_agg( tkey int not null, mkey int not null, sum_dollars int, primary key (tkey,mkey), foreign key (tkey) reference Market); create view agg1view as select timekey,mktkey,sum(dollars) from sales group by timekey,mktkey using sales1_agg(tkey,mkey,sum_dollars); キー列による集合は、時間あるいはマーケットの次元のいずれによっても単純な
ロールアップが可能である。例えば、地域ごとの全売上げ、あるいは月別、年別
の売上げを要求するクエリーは、sales1_agg aggregate table から計算される 。キー列による集合の別の利点は、スター指標が集合テーブルに生成されること
である。例えばスター指標は sales1_agg(tkey,mkey) に生成されることが可能 である。これらの次元上で制約されるクエリーは集合テーブル上のスター結合に
よってもたらされる。
る集合によって生成される: create table sales2_agg( day int not null, sum_dollars int, primary key(day)); create view agg2view as select day, sum(dollars) from sales, time where sales.timekey=time.timekey group by day using sales2_agg(day,sum,dollars); sales2_agg 集合次元テーブルは、日毎にグループ化された売上げと時間から 、日付と合計(dollar)を選ぶクエリーに答えるために用いられる。すなわちsale
s2_agg は売上げテーブルから時間テーブルへの結合を除去する。しかし月別の 全売上げを計算するために、時間テーブルは各々の日の数字についてその月を選
び出すために結合されなければならない。すなわち日はユニーク列ではないので
、特別な別のプロセスが必要となる。
善できる。上の実施例では列 (day,month,year) と日付の主キーを持つ time_ag
g テーブルがクエリーの性能を改善するであろう。関連付けられたスター指標と
ともに、sales2_agg から time_agg への外部キー/主キー関係が加算される。 この場合、クエリーが年毎の全売上げ(クエリーに売上げと時間をネーミングす
る)を訊ねると、sales2_agg と time_agg を使用するためにそのクエリーが書 換えられ、そしてクエリーが出されるときにスター結合が使用される。
ルアップ階層を、次のように定義することができる: CREATE HIERARCHY[hierarchy_name](FROM[f_table(f_col)] TO[t_table(t_col)]ONfkname) この表現は、データベース管理者が、同じテーブルにあるかどうかという、2つ
の列間の多数とひとつの関係を定義できるようにする。階層は、DROP HIERARCHY
表現を用いて落とされる。
されるか、を 書換え器 が判定できるようにすることによって、クエリーの書 換えを支援する。
めに、クエリー処理システムは Meta Data Layer にクエリーにあるテーブルの リストを送り、その Meta Data Layer は、互換性のある集合テーブルのリスト (解析ツリー、列マッピング、およびそれらが正当なものかどうか、を含む)を
返す。集合テーブルは、もし上でクエリーが定義されている(FROM節で)テーブ
ルが、クエリーでのこれらのテーブルのサブセットである場合、クエリーと互換
性がある。別の実施の形態では、クエリー処理システムは、Meta Data Layerに 対して、与えられた詳細テーブルに構築されたすべての集合をリクエストするこ
ともできる。
他の列にロールアップされるかどうかを判定するために使用される。
BLE、VALID、およびCOMMENTである。PRECOMPVIEW列はテーブルが具体化されるか
どうかを示す。PRECOMPVIEWが偽であれば、PRECOMPVIEW_TABLE、DETAIL_TABLE、
VALIDはすべて NULL である。PRECOMPVIEW が真であれば、PRECOMPVIEW_TABLE は、ビューがその中に具体化されるテーブルの名前を示し;DETAIL_TABLE は、 その上で集合テーブルが定義される詳細テーブルを示し、そして VALID は具体 化ビューにあるデータが詳細テーブルにあるデータと同期しているか否かを示す
。
UMN、 VIEW、および VIEW_COLUMN を含む。このテーブルを使用すると、適当な ビューとビュー列のマッピングは、その集合テーブル (TABLE_COLUMN) にある列
と集合テーブル名 (TABLE) を与えられて同定されることができる。
XT テーブルは列(すなわち列がグルーピング列か、集合列かどうか、および集 合列の表現)についての付加情報を与える。
。RBW_HIERARCHIES テーブルは次の列:NAME、FROM_TABLE、FROM_COLUMN、TO_TA
BLE、TO_COLUMN、およびCONSTRAINT_NAME を含んでいる。CONSTRAINT_NAME列は 、FROM_TABLE 列が TO_TABLE 列と同じならば NULL であろう。
リを格納する。ある構造のファミリは予め演算されたされたテーブル列定義に一
致し、他の構造のファミリ はロールアップ階層定義に一致する。階層定義ブロ ック形式は主キー/外部キー関係構造にゆるやかに基づいている。階層定義とロ
ールアップ階層の両者は固定サイズであり、多数のインスタンスが単一ブロック
に適合している。
層定義を加えるかあるいは落とす場合は常に、システムカタログはその変更を反
映して修正される。これらの構造は外部キー/主キー関係を真似ているため、そ
のアクセス方法は類似している。
、ロールアップパスが2つの列の間に存在するかどうかを判定する。もし存在す
れば、Meta Data Layer はロールアップパスのリストを生成する。もしFROM_COL
UMNが主キーか、またはゼロでないユニーク列であれば、あるいはFROM_COLUMNか
らTO_COLUMNへ、または機能的従属関係の移行セットを通じて、定義されたロー ルアップがあれば、ロールアップは可能である。
願第09/049,784号,1998年3月27日出願、発明の名称「リレーシ
ョナルデータベースクエリーを書き換えるための方法」で提供される。
を判定するに際して、データベース管理者を支援する。アドバイザはクエリーの
どのタイプが書換え器 によって書くことができるかを正確に知っているので、 アドバイザは、データベースに構築されるべき予め演算されたされたビューの種
類を、直接示唆することができる。アドバイザは、潜在的な予め演算されたビュ
ーと、存在するビューの価格−利益解析とを提供する。アドバイザは、データベ
ースに対する集合クエリーのログをアクティブにする能力も与える。ログファイ
ルはログが可能となるときか、システムがスタートアップするとき、あるいはデ
ータベース管理者によってアクティブになったときに作られる。この情報からデ
ータベース管理者は、データベース中の既存集合の使用を分析でき、また書換え
器とともにそれを生成するための可能性のある新しい集合を評価でき、クエリー
性能を改善できる。
エリープロセスシステム18から受け取る。アドバイザ は書換え器によって書 換えられたクエリーのためにログレコードを作り出し、またもし適当な集合テー
ブルが存在すれば書換えられることから恩恵を蒙るであろうクエリーのためにロ
グレコードを生成する。そして Meta Data Layer のログ94にこれらのレコー ドを格納する。アドバイザ は、他のメタデータ同様に、階層34に関する情報 のようなログレコードを、ひとつかあるいはそれ以上の候補ビュー42を生成す
るために利用する。候補ビュー42と予め演算されたビュー36についての情報
もログ94に格納される。
めにメタデータ情報を使用する。データベース管理者はアドバイザシステムテー
ブルにクエリーすることによって、ログ94に含まれる情報を解析できる。アド
バイザシステムテーブルへのクエリーの結果は、データベース管理者によるクエ
リーを受ける新規のあるいは一時的なテーブルへ挿入されることができる。
め演算されたビュー36のデータにアクセスするために書換えられる全クエリー
をログする。アドバイザはまた、クエリーを書換えるために使用される候補ビュ
ー42がもしあれば、これををログする。データベース管理者はRBW_PRECOMPVIE
W_CANDIDATESテーブルにクエリーをすることによって候補ビューにアクセスでき
る。アドバイザはまた、アドバイザログファイルへ、相関のあるサブクエリーに
ついての情報をログする。相関のあるサブクエリーは同じクエリーを多数回異な
る値で行う。クエリーの中の他のテーブルに関係(主キー/外部キー関係を経由
して)していないサブクエリーまたはテーブルを含むクエリーは、もし適当な予
め演算されたビューが存在していたときはこれらクエリーが書換えられるとして
も、ログされない。
コードを生成する。アドバイザはユーザークエリー(工程150)の個々の集合
クエリーブロックを分析、解析する。集合クエリーブロックが、存在する予め演
算されたビュー(工程152)を使用するために書換え器によって書換えられた
場合、ログレコードが作り出される。もし書換えられたクエリーが付加的集合(
工程154)を含まなかった場合、ログレコードは、集合クエリーブロック(工
程156)を書換えるために使用された予め演算されたビューのSQLテキスト
を含むように生成される。同じログレコードが、もし書換えられたクエリーが付
加的集合を含むが(工程154)、より良好な候補ビューがクエリー性能にさら
なる改善を勧めなかった(工程158)場合、生成される(工程156);もし
良好な候補が推薦されれば(工程158)ログレコードは候補ビューのSQLテ
キストを含むように生成される(工程160;部分一致候補ビュー生成)。もし
Rewiterが集合クエリーブロックを書換えずに(工程152)候補ビューが推薦 されれば(工程162)、ログレコードは候補ビューのSQLテキストを含むよ
うに生成される(工程160;一致なしの候補ビュー生成)。もしRewiterが集 合クエリーブロックを書換えず(工程152)さらに候補ビューが推薦されなか
った場合(工程162)、ログレコードはされない(工程164)。
細テーブル識別子;クエリーに回答するために使用するビューの識別子(さもな
ければ NULL );ロールアップ情報;クエリーのためのまたクエリー内部の個々
の集合ブロックのための経過時間;この集合ブロックのためのSQLテキスト。
し予め演算されたビューが作り出されれば、予め演算されたビューが集合クエリ
ーを書換えるために使用されるべきであると示唆されるかどうかを、判定するた
めのものである。このプロセスの最終結果は、予め演算されたビュー定義の選択
部分を定義するSQLテキストである。この定義を使用して作り出された予め演
算されたビュー(組み合わされた集合テーブルと共に)は、クエリーブロックを
実行するときに使用されることが保証される(より良好な予め演算されたビュー
が無く、すべての必要なビューの正当性とクエリー書換えセットテーブルがイネ
ーブルであるとして)。
、および階層グラフFGが示されているが、書換え器 が集合クエリーブロック を書換えず、候補ビューが推奨されなかった場合には(一致しない候補ビュー生
成)、候補ビュー定義Vは次のように生成されよう。
この定義は支援される予め演算されたビューのクラスにおける変更に適合するよ
うに修正される。加えて、アドバイザ はクエリーブロックが生成される予め演 算されたブロックを使用するために書換えられるかどうかを判定する。ひとつの
実施の形態では、ビュー定義は次の条件のいずれかが真であれば作り出される: (i)BのFROM節はサブクエリーあるいは同じテーブルの多数発生を含む; (ii)BのFROM節は予め演算されたのビューテーブルかシステムテーブルを含 む; (iii)ブロックBは行ポインタ、segids、あるいはサブクエリーのどれかの列
を参照する; (ix)Qのどのブロックも外部結合、リセットバイ、ブレークバイを持つか、 あるいは予め演算されたビューを参照するとき; (v)Bのプロジェクトリストがある特徴を持っているとき(その特徴はGROUP
BYによって変換されない)。
クするために、外部キー/主キーの述語と、FROM節にあるテーブルを使用して、
結合グラフを構築する。ふたつのテーブルAとBの間の外部キー/主キーの述語は
、参照しているテーブル(述語に外部キーを含むテーブル)から参照したテーブ
ル(主キーを含むテーブル)まで、エッジスターティングとして表される。結合
の中心を見つける(すなわち収入エッジが無いノード);これは候補ファクトテ
ーブル(F)である。残りのノードが候補ファクトテーブルから到達可能である かどうか、ノードがひとつ以上の収入エッジをもたないかどうかを判定する。結
合グラフ(JG)、ファクトテーブル(F)、および外部キー/主キー述語(P1) があとで使うために格納され (viii)クエリーの集合表現は、予め演算されたビューの定義において許容で
きる集合のクラスに入る; (ix)このブロックへ関係するサブクエリーに集合がある; (x)BのGROUP BYリストは予め演算されたビューの定義の許容できるGROUP BY
節を構成しない; (xi)グルーピングリストG(Bのオリジナルグルーピングリストと異なるこ ともある)が次のように構築されることはできない。G1を次から成るリストとし
て定義する:Bのテーブルを参照するすべての列は非外部キー/主キー述語に現 れ、SELECTリスト、およびBのグルーピングリスト、は集合表現の内部の列参照 を無視する。G1の ”グラフ互換”バージョンであるリストGを構築する(下の工
程206および208を参照)。もしそのようなGが構築できるなら、それを今 後使用するために格納する。
BとGの集合表現の全てを置く(工程200)。SELECT表現を生成するためにこれ
らの構成要素の全てを組み合わせる(工程202)。アドバイザは次のようにG1
からグラフ互換リストGを構築する(プロセス204)。Bの全てのグルーピング
列をGに入れる(工程206)。また、集合表現内部の列参照を無視して、非結 合述語とBのSELECTリストにある全ての列参照をGに入れる(工程207)。Gに 列を持つテーブルのリストTを構築する(工程208)。Gに列を持つ個々のテ ーブルのために(繰り返し工程209,210,211)、そのテーブルの主キ
ーがGにあるかどうかを判定する(工程212)。もしそうならそのテーブルの 全ての他の列をGから外す(工程214);そうでなければ列のどれかひとつが 非階層エレメントであるかどうかを決める(工程216)。もしそうならそのテ
ーブルの全ての列を外し、そのテーブルの主キーでそれらを置き換える(工程2
18)。最後に、階層グラフFGに含まれる情報をベースとしたGに残っている列 の幾つかのサブセットに機能的に依存しているGに個々の列を移動する。
、および階層グラフFGが示されているが、付加集合とより良い候補を含んだ書換
えクエリーが推奨される場合は、候補ビュー定義Vは次のように生成される。
は支援される予め演算されたビューのクラスにおける変更に適合するように修正
されうる。加えて、アドバイザ はクエリーブロックが生成される予め演算され たブロックを使用するために書換えられるかどうかを判定する。ある実施の形態
では、ビュー定義は次の条件のいずれかが真ならば作り出される: (i)BのFROM節はいかなる予め演算されたビューをも含まない; (ii)Bはrowids、segids、あるいはsegnamesを参照する; (iii)Bは集合表現を持つひとつ以上の予め演算されたビューを有する; (iv)Bはひとつ以上の予め演算されたビューを持ち、そのいずれも集合表現 を持たない; (v)Bは、FROM節にひとつ以上のテーブルを持つサブクエリーを有するか、あ
るいは予め演算されたビューを参照するサブクエリーを有するか、あるいは集合
表現を持つサブクエリーを有するか、あるいはそのSELECTリストが単純な列参照
ではない表現を持つサブクエリーを有する。
て作られることはでき ない(工程192)。
ンジニアクエリーB1をパスするならば、アドバイザ はB1から非一致候補ビュー を生成する(工程232)。
連する個々のビューの利用状況を理解し、個々のビューのコストと利益の感覚を
磨くためにアドバイザを使用できる。データベース管理者は、アドバイザを集合
クエリーの性能を改善する方法を決めるために使用することもできる;特に、ア
ドバイザはどのビューを生成するべきか、いくつのビューを作るべきかというこ
とをデータベース管理者に推奨できる。解析の範囲は一日単位に、また特定の詳
細なテーブルに絞ることができる。アドバイザは与えられた日付の範囲内で特別
に詳細なテーブルを参照するクエリーのためのログファイルを隅から隅まで調べ
る。もしデータベース管理者が一日の範囲を特定しないならば、アドバイザは特
定の詳細テーブルを参照するクエリーのために存在するアドバイザログファイル
全てを隅から隅まで調べる。特別に詳細なテーブルに関連した個々のビューのた
めに、報告書は、ビュー名、利用数(ビューがクエリーに答えるために使用され
る総回数)、ロールアップカウント数((階層関係を答えるために使用されたビ
ューの総回数)、およびビューのサイズを含む。アドバイザはまた、特別に詳細
なテーブルに関連した全ての具体化ビューと候補ビューのために、ログファイル
を走査することによって、あるいはRBW_VIEWSシステムテーブルにクエリーする ことによって、ビューのユニークリストを生成する。アドバイザは、解析スペー
スを定義するために、また従属グラフを生成するために、このリストを使用する
。その後それは、同じクエリーに答える他のビューに関して、グラフにおけるあ
る予め演算されたビューの利益を計算するためにコストの公式に適用される。
予め演算されたビューを生成する利益を解析するために使用される情報を含む。
この情報はまた、どの予め演算されたされたビューを生成すべきであるかを判定
する際に、データベース管理者によって利用される。RBW_PRECOMPVIEW_CANDIDAT
ESテーブルは、ログされるクエリーに基づく個々の可能性のある候補ビューのた
めの一行と、個々の存在するビューのための一行を含む。 RBW_PRECOMPVIEW_CANDIDATESテーブルは次の列を含む:
改善するために小さなデータセットの上でアドバイザ 解析を実行することを可 能とする。SAMPLE_VIEW_NAME列上に制限されたとき、アドバイザ のクエリーの 範囲は列に参照されたビューの名前に制限される。データベース管理者は、デー
タベースにあるデータの代表的サンプルを含むところのサンプルビューを作るべ
きであり、そのサンプルビューは次のような特徴を持っている:詳細テーブルの
行のサブセットへ写像する;詳細テーブルの個々の列に一致する列を有する;お
よびサンプルビューの列のデータ形式は、詳細テーブルのデータ形式に正確に一
致する。
新しいビューを作り出しながら、データベース管理者を案内するために使用され
る。
者は、何が最も利益に結びつく集合ビューであるか、Sales tableに生成すべき 集合ビューはどれか、を知りたがっていると仮定しよう: Select reference_count,benefit,text,seq From rbw_precompview_candidates Where detail_table_name='SALES'; 上の解析の範囲はさらに一日の範囲に絞られる: Select reference_count,benefit,text,seq From rbw_precompview_candidates Where detail_table_name='SALES' and start_date=('1996-01-01' ) and end_date=('1996-03-30'); RBW_PRECOMPVIEW_UTILIZATIONテーブルは、特定の詳細テーブルのために作り 出された予め演算されたのビューの値を解析するデータベース管理者によって使
用される情報を含む。それはまた、特定のビューの利用に対する洞察と、同じク
エリーに答える他のビューに関するビューのコストと利益を提供する。RBW_PREC
OMPVIEW_UTILIZATIONテーブルは、データベースで定義された全ての正当な予め 演算されたビュー用の一行を持ち、そのビューはデータベース管理者によって正
当な状態にセットされるビューを含んでいる。 RBW_PRECOMPVIEW_UTILIZATIONテーブルは、次の列を含んでいる。
。この列のカウントが高ければ、他の予め演算されたビューがクエリー性能を改
善できるであろうことを示唆する。正確な一致は、予め演算されたビューに付加
的集合を実行することなしに、クエリーが予め演算されたビューによって回答さ
れるときに起きる。そのクエリーに対する幾つかの予想があり得るし(例えば、
Where節かHaving節)、また幾つかのフォーマッティングがあり得るが(例えば 、Order By節)、特別な集合はない(例えば、Group By、Sum、Min、またはMax )。例えば、日数の粗さを持った詳細テーブル、月数の粗さを持ったそのテーブ
ル上で定義された予め演算されたビュー、およびいずれもドルの総計を含む詳細
テーブルと予め演算されたビューを考慮する。一年間で何ドルが生み出されたか
に関するクエリーは月次テーブルによって回答されるが、直接回答されることは
ない--更なる集合がクエリーに回答するために計算されなければならない。
アクセスされるたびに、NON_EXACT_MATCH_COUNT列は1だけ増分される。もしク エリーへの回答が、予め演算されたビューにあるものと正確には一致しないとき
は、付加的集合が実行されるときや他のテーブルへの結合が起きるときも含むが
、その列は増分される。
ス管理者はUtilizationテーブルに、Salesテーブル上に存在するビューがいかに
うまく利用されているかを見るためにクエリーすることができる: select name, reference_count, rollup_count From rbw_precompview_utilization Where detail_table_name='SALES'; 上記の解析の範囲は、さらに日の範囲に絞ることができる: select name, reference_count, rollup_count From rbw_precompview_utilization Where detail_table_name='SALES'; start_date=date('1996-01 -01') and end-date=date('1996-03-30'); [start_date, end_date]列に制限が無い場合、解析の範囲は全ての存在するア
ドバイザ Logファイルになろう。他の実施例として、データベース管理者は、セ
ールスに存在するビューのためのビュー利用状況、ビュー利益、およびビューサ
イズを知るためにクエリーを出すことができる: select name, reference_count, benefit, size From rbw_precompview_utilization Where detail_table_name='SALES';
解析スペースを定義する。スタートすると、アドバイザはHash-Directory を生 成する(工程170)。アドバイザは既存の予め演算されたビューを持ってHash
-Directory に在住する(工程172)。アドバイザは、特定の日の範囲内の日 付を持つ、ログ64に格納されているログクエリーの全てを同定する。アドバイ
ザは、特定の詳細テーブルを参照するクエリーのために同定されたクエリーを抽
出する(工程176)。個々の特定の詳細テーブルを参照するクエリーのために
アドバイザは、グルーピング列への参照を含むクエリー構造を生成する(工程1
78)。
グルーピング列上に置かれた適切なスロットに細分化されるようにする(工程1
80)。不一致があるとき、そのグルーピング列が他と異なる場合には、アドバ
イザは Hash-Directory にその要素を加え;他方、もしその集合表現が異なる場
合には、アドバイザは集合表現のリストに集合表現を加える。個々の候補ビュー
については、アドバイザは集合経過時間のトラックと、ビューへの参照回数をキ
ープする。この点でアドバイザは Hash-Directory にある各要素のためにSQL
テキストを生成する(工程182)。
たあと、アドバイザは書換え器の能力上に築かれた従属グラフを構築する(工程
240)。グラフの2つの要素は、もしひとつの要素のビュー定義が2番目の要
素のビュー定義の見地から書換えられるならば、指示されたエッジによって関連
付けられる。グラフは候補ビューのひとつ以上のペアレントノードを生成するこ
とによって完成される。ペアレントノードはそのチャイルドノードに比較してよ
り細かい粗さのノードである。グラフを引き伸ばすためにひとつのパスが、2つ
以上のノードを組み合わせることによってペアレントノードを生成するために、
リーフノードからルートノードへと作られる。ペアレントノードは、組み合わさ
れたグルーピング列を含む。リーフノードを除いた個々のレベルで、2つ以上の
チルドレンの組み合わせを通じて生成されたノードがあり、ログファイルの処理
から作られるアクチャルノードがある。ひとつの実施の形態では、もし、ノード
のひとつがアクチャルノードであったなら、その場合に限り、すなわちこれはグ
ラフにおけるノード数を最小化するので、ふたつのノードがペアレントを作るた
めに組み合わされる。グラフのルートノードはデータの最も少ない粗さを表す(
すなわち、ファクトテーブル)。
用された他のビューと比較したときの個々のビューの利益を判定するために、従
属グラフへコストの公式を適用する(工程242;図13)。コストモデルは、
各ビューと関連づけられたスペースコスト(すなわち、行数)を持つ指示された
グラフを、入力として仮定している。ここで使用されたように、グラフの2つの
要素(ビュー)の間の従属関係は≦で記号付けがされている。グラフの要素a,
bに関しては、a≦bのときのみ、bはaのアンセスタである。もしC(v)がビュ
ーvのコストであるとすると、従属グラフのノードのセットSに関するビューvの 利益、B(v,S)、は次のように定義される:
C(u)、これはw≦uのようなSにおける最小コストであり;一方、Bw=0である。 このようにvの利益は、それ自身を含む、ビューを評価するコストをいかに改善 できるかを考えることによって計算される。vがカバーする各ビューwに代わって
、vを使ってwを評価するコストは、wを評価するための最も安い方法をオファー されたSからのどのビューでも構わないが、それを使ったコストと比較される。 もしvのコストがコンペティタのコストよりも少なければ、その差は、実現され たビューとしてvを選択する利益の一部分を表わす。総利益B(v,S)はビューw全体
に渡っての合計であり、wを評価するためにvを使用する利点がある。
見込みはない。ビューがクエリーされる頻度を表す確率は、それゆえに各ビュー
と関連している。ビューvの確率は、グラフにおける全てのビューへの参照の全 回数を越える、vへの参照の全回数である。処理された行数の見地から測定され るべきビューvの利益をノーマライズするために、確率Prvはvへの全参照回数と して再定義される(グラフにおける全てのビューへの全参照回数を越えるvへの 全参照回数とは対照的に)。この公式のもとで、ビューのセットSと関連するビ
ューvの利益B(v,S)は次式で与えられる:
る。候補ビューのサイズは未知であるからアドバイザはこれらのビューのサイズ
を評価しなければならない。ある実施の形態では、アドバイザは、統計モデルの
上にコストモデル−詳細データの小さなサブセットであるが−を走らせることに
よって、候補ビューのサイズを評価する。データベース管理者は詳細データ(ビ
ューとして)のサブセットを定義でき 、その上にコストモデルが走る。この方 法では、実際にビューを具体化することによって、候補ビューのサイズが評価さ
れる。データベース管理者はまたアドバイザに、ビューによってそのテーブル上
に表される詳細テーブルのサンプルを与える。
の具体化から、異なるビューのサイズを計算するために使用される(すなわち各
次元での最大属性によってグループ化するビュー)。第3の実施の形態では、ア
ドバイザ は、クエリー実行時間におけるポテンシャルビューサイズをダイナミ ックに計算する。他の実施の形態では、データベース管理者はアドバイザに、次
元の各属性のためのある数の確定値と、全ての可能で興味ある相関値を与える;
この情報からアドバイザはグラフにおける各ビューのサイズを評価する。
)。
になることが常である。コストはディスクスペース、生成時間、ロード時間、管
理時間である。利益はより良いクエリー性能である。ユーザーは常により早い性
能を好む。データベース管理者はこのトレードオフを評価すべきであり、どの予
め演算されたビューが生成されるべきでどれが消去されるべきであるかを判定し
なければならない。アドバイザシステムテーブル上でのクエリーは、データベー
ス管理者がこれらの判定をするときに役に立つ。
IT列は、与えられたアドバイザ runのビューのために相対的な利益の測定を提 供する。BENEFIT列の数は、対応する予め演算されたビューで処理される必要の 無い、行数の測定である。
ある。一般に小さな行数を持ったビューは、より大きな行数を持つビューほどに
は高くつかない。REDUCTION_FACTOR列は詳細テーブルに関するビューサイズの比
を与える。ビューのサイズとリダクションファクタの両者は、特別なビューのコ
ストと利益を評価するときに考慮されるべきである。
VIEW_UTILIZATIONテーブル)あるいは使用されていたであろうか(RBW_PRECOMPV
IEW_CANDIDATESテーブル)を特定する。一般にもしこの数字が小さければ、関係
するビューはデータベースとして特に有益とは言えない。
を生成する、あるいは消去する理由を強いることにはならない。代わりにビュー
に関連する全ての数字は、そのビューの数字を評価するときに、ともに考慮され
るべきである。加えて特殊なビューのための結果は、与えられた詳細テーブルの
ための全てのビューの前後関係において考慮されるべきである。
エリーと予め演算された集合クエリーの前後関係において説明された。本発明は
他の実行に同様に適用する。このように集合を含まない予め演算されたビューは
、予め演算されたビュー処理システム20によって定義され生成されることがで
き、また書換え器とアドバイザによって使用されることができる。
、または時間のしきい値を越える集合実行時間(すなわち各クエリーの集合ブロ
ックのビュー参照経過時間の合計)を持ったビューへのアドバイザの問い合わせ
を制限することができる。その代わりに従属グラフはノードの最小数(しかし許
容できる)へ制限することができる。
の図式である。
の図式である。
の図式である。
の図式である。
。
ある。
である。
関する情報に含まれた情報を含む、メタデータに基づき、候補ビューと要約の統
計とを生成するよう構成されたアドバイザの図式である。
生成する方法である。
トとを生成する方法のフロー図である。
トとを生成する方法のフロー図である。
トとを生成する方法のフロー図である。
Claims (40)
- 【請求項1】 データベースについてのユーザークエリーに返答するために
予め演算されたビューを処理する方法であって、 予演算ストラトジの有効性についてのユーザデータベースクエリーに応答して
、ユーザーデータベースクエリー履歴に基づき、前記データベースに対する全て
の可能なビューのサブセットから構成される分析スペースを定義する工程と、 前記分析スペースにおける前記ビューを特徴付ける工程と を含む方法。 - 【請求項2】 データベースについてのユーザークエリーに返答するために
予め演算されたビューを処理する方法であって、 前記データベースについてのユーザークエリーを分析する工程と、 前記ユーザークエリーに基づき候補ビューを生成する工程と を含む方法。 - 【請求項3】 データベースについてのユーザークエリーに返答するために
予め演算されたビューを処理する方法であって、 前記データベースに対する全ての可能なビューから成るひとつのサブセットで
構成される分析スペースを定義する工程と、 前記データベースに含まれる前記データから成るひとつのユーザ定義サブセッ
トに基づき、前記分析スペースへコスト公式を適用する工程と を含む方法。 - 【請求項4】 データベースについてのユーザークエリーに返答するために
予め演算されたビューを処理する方法であって、 2つ以上の成分ビューの組合せで構成される候補ビューを含む分析スペースを
定義する工程と、 前記分析スペースにおけるビューを特徴付ける工程と を含む方法。 - 【請求項5】 データベースについてのユーザークエリーに返答するために
予め演算されたビューを処理する方法であって、 クエリー書換えファシリティの能力に基づき、前記データベースに対する全て
の可能なビューから成るひとつのサブセットで構成される分析スペース上にスト
ラクチャを賦課する工程と、 前記分析スペースにおける前記ビューを特徴付ける工程と を含む方法。 - 【請求項6】 更に、受取られたユーザークエリーに対するログ記録を生成
する工程を含む、請求項1、2、3、4または5に記載の方法。 - 【請求項7】 ユーザークエリーに対するログ記録を生成する工程は、前記
クエリーが予め演算されたビューを使用するよう書換えられたか否かを判定する
工程を含む、請求項6に記載の方法。 - 【請求項8】 ログ記録を生成する工程は、書換えられたユーザークエリー
が集合を含むか否かを判定する工程を含む、請求項6に記載の方法。 - 【請求項9】 ログ記録を生成する工程は、ユーザークエリーを書換えるた
めに使用され得る候補ビューを識別する工程を含む、請求項6に記載の方法。 - 【請求項10】 クエリーに対して生成された前記ログ記録は、前記クエリ
ーを書換えるために使用される予め演算されたビューについての情報を含む、請
求項6に記載の方法。 - 【請求項11】 前記候補ビューは、SQLで生成される、請求項2に記載
の方法。 - 【請求項12】 前記候補ビューは、メタデータに基づき生成される、請求
項2に記載の方法。 - 【請求項13】 前記候補ビューは、前記データベースにおける関数的従属
性に基づき生成される、請求項12に記載の方法。 - 【請求項14】 メタデータは、ユーザ規定の階層を含む、請求項12に記
載の方法。 - 【請求項15】 前記候補ビューは、クエリー処理システムの能力に基づき
生成される、請求項2に記載の方法。 - 【請求項16】 前記分析スペースは、クエリー書換えファシリティの能力
に基づき定義される、請求項1、3または4に記載の方法。 - 【請求項17】 前記クエリー書換えファシリティは、前記分析スペース上
にストラクチャを賦課するよう構成される、請求項16に記載の方法。 - 【請求項18】 前記賦課されたストラクチャは、前記分析スペースにおけ
るビュー間の階層関係を示すグラフを含む、請求項5または17に記載の方法。 - 【請求項19】 前記分析スペースは、ビュー間の階層関係に基づき定義さ
れる、請求項1、3または4に記載の方法。 - 【請求項20】 前記定義された分析スペースは、ユーザークエリー履歴に
基づき生成される候補ビューを含む、請求項1、3または4に記載の方法。 - 【請求項21】 前記分析スペースにおける前記ビューを特徴付ける工程は
、予め演算されたビューの利用状況の測度を発生する工程を含む、請求項1、4
または5に記載の方法。 - 【請求項22】 前記分析スペースにおける前記ビューを特徴付ける工程は
、現行の予演算ストラトジの有効性を反映するレポートを生成する工程を含む、
請求項1、4または5に記載の方法。 - 【請求項23】 前記分析スペースにおける前記ビューを特徴付ける工程は
、創成され得る候補ビューについての情報を含むレポートを生成する工程を含む
、請求項1、4または5に記載の方法。 - 【請求項24】 前記分析スペースにおける前記ビューを特徴付ける工程
は、前記分析スペースにおける他のビューに対する候補ビューの利点の測度を発
生する工程を含む、請求項1、4または5に記載の方法。 - 【請求項25】 前記分析スペースにおける前記ビューを特徴付ける工程は
、前記分析スペースへコスト公式を適用する工程を含む、請求項1、4または5
に記載の方法。 - 【請求項26】 データベースについてのユーザークエリーに返答するため
に予め演算されたビューを処理するための装置であって、 クエリープロセッサと、 ユーザーデータベースクエリー履歴に基づき、前記データベースに対する全て
の可能なビューから成るひとつのサブセットから構成される分析スペースを定義
することによって、および、前記分析スペースにおける前記ビューを特徴付ける
ことによって、予演算ストラトジの有効性についてのユーザーデータベースクエ
リーに応答するよう構成されるアドバイザと を備える装置。 - 【請求項27】 データベースについてのユーザークエリーに返答するため
に予め演算されたビューを処理するための装置であって、 クエリープロセッサと、 前記データベースについてのユーザークエリーを分析し、前記ユーザークエリ
ーに基づき候補ビューを生成するよう構成される予め演算されたビュープロセッ
サと を備える装置。 - 【請求項28】 データベースについてのユーザークエリーに返答するため
に予め演算されたビューを処理するための装置であって、 クエリープロセッサと、 クエリー書換えファシリティの能力に基づき、前記データベースに対する全て
の可能なビューから成るひとつのサブセットからストラクチャされる分析スペー
ス上に構造を賦課し、前記分析スペースにおける前記ビューを特徴付けるよう構
成されるアドバイザと を備える装置。 - 【請求項29】 データベースについてのユーザークエリーに返答するため
に予め演算されたビューを処理するための装置であって、 クエリープロセッサと、 前記データベースに対する全ての可能なビューから成るひとつのサブセットか
ら構成される分析スペースを定義し、前記データベースに含まれる前記データの
ユーザ定義サブセットに基づき、前記分析スペースへコスト公式を適用するよう
構成されるアドバイザと を備える装置。 - 【請求項30】 サーバ上に格納されたデータベースについてのユーザーク
エリーに返答するためのシステムであって、 前記サーバ内へ統合され、ユーザークエリーに応答するよう構成されるクエリ
ー処理システムと、 前記サーバ内へ統合され、前記データベースについてのユーザークエリーの予
め演算された結果を処理するよう構成される、クエリー処理システムと を備えるシステム。 - 【請求項31】 前記クエリー処理システムは、予め演算されたビューを演
算するよう構成される、請求項30に記載のシステム。 - 【請求項32】 前記クエリー処理システムは、前記データベースでの変更
を反映するために予め演算されたビューを更新するよう構成される、請求項30
に記載のシステム。 - 【請求項33】 前記クエリー処理システムは、予め演算されたビューを管
理するよう構成される、請求項30に記載のシステム。 - 【請求項34】 前記クエリー処理システムは、予め演算されたビューを使
用してユーザークエリーを書換えるよう構成される書換え器を含む、請求項30
に記載のシステム。 - 【請求項35】 前記クエリー処理システムは、予め演算されたビューとユ
ーザークエリー履歴とに関する情報をユーザへ提供するよう構成される、請求項
30に記載のシステム。 - 【請求項36】 前記クエリー処理システムは、予演算ストラトジの有効性
を分析するよう構成されるアドバイザを含む、請求項30に記載のシステム。 - 【請求項37】 前記クエリー処理システムは、ユーザークエリー履歴に基
づき、前記データベースに対する全ての可能なビューのサブセットから構成され
る分析スペースを定義するよう構成される、請求項30に記載のシステム。 - 【請求項38】 前記クエリー処理システムは、候補ビューを生成するよう
構成される、請求項30に記載のシステム。 - 【請求項39】 前記クエリー処理システムは、データベースのメタデータ
を利用するよう構成される、請求項30に記載のシステム。 - 【請求項40】 前記クエリー処理システムは、関数的従属性を利用するよ
う構成される、請求項30に記載のシステム。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7967098P | 1998-03-27 | 1998-03-27 | |
US7967198P | 1998-03-27 | 1998-03-27 | |
US7967998P | 1998-03-27 | 1998-03-27 | |
US60/079,671 | 1998-03-27 | ||
US09/049,784 | 1998-03-27 | ||
US60/079,670 | 1998-03-27 | ||
US60/079,679 | 1998-03-27 | ||
US09/049,784 US6199063B1 (en) | 1998-03-27 | 1998-03-27 | System and method for rewriting relational database queries |
PCT/US1999/006297 WO1999050762A1 (en) | 1998-03-27 | 1999-03-25 | Processing precomputed views |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002510088A true JP2002510088A (ja) | 2002-04-02 |
Family
ID=27489284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000541606A Ceased JP2002510088A (ja) | 1998-03-27 | 1999-03-25 | 予め演算されたビューの処理 |
Country Status (7)
Country | Link |
---|---|
US (3) | US6480836B1 (ja) |
EP (1) | EP1066574A4 (ja) |
JP (1) | JP2002510088A (ja) |
AU (1) | AU761900B2 (ja) |
BR (1) | BR9909896A (ja) |
CA (1) | CA2326513C (ja) |
WO (1) | WO1999050762A1 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163290A (ja) * | 2000-09-27 | 2002-06-07 | Microsoft Corp | クエリ最適化のためのコストに基づく具体化ビューの選択 |
JP2005267612A (ja) * | 2004-03-18 | 2005-09-29 | Microsoft Corp | 暗黙の述部を使用する改良されたクエリ・オプティマイザ |
JP2007066017A (ja) * | 2005-08-31 | 2007-03-15 | Internatl Business Mach Corp <Ibm> | データベースに対するアクセスを制御するシステム、およびその方法 |
JP2008547086A (ja) * | 2005-06-15 | 2008-12-25 | インターレース・システムズ・インコーポレイテッド | 大きなデータセットの解析中に整合性を維持するための方法および装置 |
JP2015515671A (ja) * | 2012-06-27 | 2015-05-28 | エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. | 進化的な分析のためのシステム |
JP2019040409A (ja) * | 2017-08-25 | 2019-03-14 | Kddi株式会社 | データベース管理装置、データベース管理方法、及びデータベース管理プログラム |
Families Citing this family (228)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7320001B1 (en) * | 1999-01-15 | 2008-01-15 | Hon Hai Precision Industry, Ltd. | Method for visualizing information in a data warehousing environment |
US7233952B1 (en) * | 1999-01-15 | 2007-06-19 | Hon Hai Precision Industry, Ltd. | Apparatus for visualizing information in a data warehousing environment |
US7007029B1 (en) * | 1999-01-15 | 2006-02-28 | Metaedge Corporation | System for visualizing information in a data warehousing environment |
US20020072951A1 (en) * | 1999-03-03 | 2002-06-13 | Michael Lee | Marketing support database management method, system and program product |
SE516562C2 (sv) * | 1999-03-12 | 2002-01-29 | Qliktech Internat Ab | Förfarande för extrahering av information från en databas |
US6370522B1 (en) * | 1999-03-18 | 2002-04-09 | Oracle Corporation | Method and mechanism for extending native optimization in a database system |
DK173451B1 (da) * | 1999-04-16 | 2000-11-20 | Targit As | Fremgangsmåde, apparat og databærer til behandling af forespørgsler til en database |
US9268748B2 (en) | 1999-05-21 | 2016-02-23 | E-Numerate Solutions, Inc. | System, method, and computer program product for outputting markup language documents |
US6920608B1 (en) * | 1999-05-21 | 2005-07-19 | E Numerate Solutions, Inc. | Chart view for reusable data markup language |
US9262383B2 (en) | 1999-05-21 | 2016-02-16 | E-Numerate Solutions, Inc. | System, method, and computer program product for processing a markup document |
US7421648B1 (en) | 1999-05-21 | 2008-09-02 | E-Numerate Solutions, Inc. | Reusable data markup language |
US9262384B2 (en) | 1999-05-21 | 2016-02-16 | E-Numerate Solutions, Inc. | Markup language system, method, and computer program product |
US7249328B1 (en) * | 1999-05-21 | 2007-07-24 | E-Numerate Solutions, Inc. | Tree view for reusable data markup language |
US6889260B1 (en) * | 1999-06-10 | 2005-05-03 | Ec Enabler, Ltd | Method and system for transferring information |
JP3914662B2 (ja) * | 1999-06-30 | 2007-05-16 | 株式会社日立製作所 | データベース処理方法及び実施装置並びにその処理プログラムを記憶した媒体 |
US7133865B1 (en) * | 1999-07-21 | 2006-11-07 | Torben Bach Pedersen | Method and systems for making OLAP hierarchies summarisable |
US7219073B1 (en) * | 1999-08-03 | 2007-05-15 | Brandnamestores.Com | Method for extracting information utilizing a user-context-based search engine |
US6385604B1 (en) * | 1999-08-04 | 2002-05-07 | Hyperroll, Israel Limited | Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements |
US6408292B1 (en) * | 1999-08-04 | 2002-06-18 | Hyperroll, Israel, Ltd. | Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions |
GB9924523D0 (en) * | 1999-10-15 | 1999-12-15 | Univ Strathclyde | Database processor |
US6700590B1 (en) * | 1999-11-01 | 2004-03-02 | Indx Software Corporation | System and method for retrieving and presenting data using class-based component and view model |
US6886005B2 (en) * | 2000-02-17 | 2005-04-26 | E-Numerate Solutions, Inc. | RDL search engine |
CA2299553A1 (en) * | 2000-02-25 | 2001-08-25 | Ibm Canada Limited-Ibm Canada Limitee | Efficient determination of homogeneous rectangles in a binary matrix |
US20020029207A1 (en) * | 2000-02-28 | 2002-03-07 | Hyperroll, Inc. | Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein |
US7707159B2 (en) * | 2000-03-02 | 2010-04-27 | Actuate Corporation | Method and apparatus for storing semi-structured data in a structured manner |
US6493708B1 (en) * | 2000-03-02 | 2002-12-10 | Oracle Corporation | Techniques for handling function-defined hierarchical dimensions |
US20020091677A1 (en) * | 2000-03-20 | 2002-07-11 | Sridhar Mandayam Andampikai | Content dereferencing in website development |
AU2001257077A1 (en) * | 2000-04-17 | 2001-10-30 | Brio Technology, Inc. | Analytical server including metrics engine |
US7072897B2 (en) * | 2000-04-27 | 2006-07-04 | Hyperion Solutions Corporation | Non-additive measures and metric calculation |
US7167859B2 (en) * | 2000-04-27 | 2007-01-23 | Hyperion Solutions Corporation | Database security |
US6732115B2 (en) * | 2000-04-27 | 2004-05-04 | Hyperion Solutions Corporation | Chameleon measure and metric calculation |
US6748394B2 (en) | 2000-04-27 | 2004-06-08 | Hyperion Solutions Corporation | Graphical user interface for relational database |
US7080090B2 (en) * | 2000-04-27 | 2006-07-18 | Hyperion Solutions Corporation | Allocation measures and metric calculations in star schema multi-dimensional data warehouse |
US6941311B2 (en) | 2000-04-27 | 2005-09-06 | Hyperion Solutions Corporation | Aggregate navigation system |
US20020049711A1 (en) * | 2000-05-05 | 2002-04-25 | Davenport Daniel M. | Method and system for accessing data in a database warehouse |
US7133858B1 (en) * | 2000-06-30 | 2006-11-07 | Microsoft Corporation | Partial pre-aggregation in relational database queries |
US6785666B1 (en) * | 2000-07-11 | 2004-08-31 | Revenue Science, Inc. | Method and system for parsing navigation information |
US6735587B2 (en) * | 2000-07-28 | 2004-05-11 | International Business Machines Corporation | Maintaining pre-computed aggregate views incrementally in the presence of non-minimal changes |
US7756904B2 (en) * | 2000-08-01 | 2010-07-13 | Actuate Corporation | Nested conditional relations (NCR) model and algebra |
US6766320B1 (en) * | 2000-08-24 | 2004-07-20 | Microsoft Corporation | Search engine with natural language-based robust parsing for user query and relevance feedback learning |
US6694490B2 (en) * | 2002-07-10 | 2004-02-17 | Hewlett-Packard Development Company, L.P. | DIMM and method for producing a DIMM |
US6687704B1 (en) * | 2000-08-31 | 2004-02-03 | Hewlett-Packard Development Company, L.P. | Database model system and method |
US7257596B1 (en) | 2000-11-09 | 2007-08-14 | Integrated Marketing Technology | Subscription membership marketing application for the internet |
US6772411B2 (en) * | 2000-12-01 | 2004-08-03 | Bmc Software, Inc. | Software performance and management system |
US7552065B1 (en) * | 2000-12-08 | 2009-06-23 | At&T Intellectual Property I, L.P. | Forecasting tool for predicting future demand for parts / materials / equipment |
US20030014394A1 (en) * | 2001-03-22 | 2003-01-16 | Shinji Fujiwara | Cell-level data access control using user-defined functions |
US9600842B2 (en) | 2001-01-24 | 2017-03-21 | E-Numerate Solutions, Inc. | RDX enhancement of system and method for implementing reusable data markup language (RDL) |
GB0102220D0 (en) * | 2001-01-27 | 2001-03-14 | Galleria Software Developement | Databases |
US6643649B2 (en) * | 2001-01-30 | 2003-11-04 | International Business Machines Corporation | Utility for cross platform database query |
JP2002236682A (ja) * | 2001-02-13 | 2002-08-23 | Fuji Photo Film Co Ltd | データベース・システム |
US7099868B1 (en) * | 2001-03-30 | 2006-08-29 | Unisys Corporation | State management for a step architecture |
US20020178049A1 (en) * | 2001-05-25 | 2002-11-28 | Jonathan Bye | System and method and interface for evaluating a supply base of a supply chain |
US7092951B1 (en) | 2001-07-06 | 2006-08-15 | Ncr Corporation | Auxiliary relation for materialized view |
US7720842B2 (en) * | 2001-07-16 | 2010-05-18 | Informatica Corporation | Value-chained queries in analytic applications |
US6865569B1 (en) * | 2001-08-22 | 2005-03-08 | Ncr Corporation | Determining materialized view coverage |
US7158994B1 (en) * | 2001-09-28 | 2007-01-02 | Oracle International Corporation | Object-oriented materialized views |
US7213025B2 (en) * | 2001-10-16 | 2007-05-01 | Ncr Corporation | Partitioned database system |
US6845375B1 (en) | 2001-10-20 | 2005-01-18 | Ncr Corporation | Multi-level partitioned database system |
US7080072B1 (en) | 2001-11-14 | 2006-07-18 | Ncr Corp. | Row hash match scan in a partitioned database system |
US7882103B2 (en) * | 2002-03-28 | 2011-02-01 | Teradata Us, Inc. | Using point-in-time views to provide varying levels of data freshness |
US7035843B1 (en) * | 2002-02-15 | 2006-04-25 | Oracle International Corporation | Evaluation of database hierarchical cubes by nesting rollup operators associated with multiple groupings |
WO2003073333A1 (en) | 2002-02-25 | 2003-09-04 | John Robert Cain | Information system and method for disseminating technology information |
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 |
US7620664B2 (en) * | 2002-04-02 | 2009-11-17 | Mcgoveran David O | Computer-implemented method for translating among multiple representations and storage structures |
US7171427B2 (en) * | 2002-04-26 | 2007-01-30 | Oracle International Corporation | Methods of navigating a cube that is implemented as a relational object |
US7415457B2 (en) | 2002-04-26 | 2008-08-19 | Oracle International Corporation | Using a cache to provide cursor isolation |
US8868544B2 (en) * | 2002-04-26 | 2014-10-21 | Oracle International Corporation | Using relational structures to create and support a cube within a relational database system |
US7366730B2 (en) | 2002-04-26 | 2008-04-29 | Oracle International Corporation | Registration of solved cubes within a relational database management system |
US7035862B2 (en) * | 2002-05-09 | 2006-04-25 | Siemens Medical Solutions Health Services Corporation | Method for processing information from an information repository |
US7548935B2 (en) * | 2002-05-09 | 2009-06-16 | Robert Pecherer | Method of recursive objects for representing hierarchies in relational database systems |
US7290007B2 (en) * | 2002-05-10 | 2007-10-30 | International Business Machines Corporation | Method and apparatus for recording and managing data object relationship data |
US8001112B2 (en) | 2002-05-10 | 2011-08-16 | Oracle International Corporation | Using multidimensional access as surrogate for run-time hash table |
US7447687B2 (en) * | 2002-05-10 | 2008-11-04 | International Business Machines Corporation | Methods to browse database query information |
US7191169B1 (en) * | 2002-05-21 | 2007-03-13 | Oracle International Corporation | System and method for selection of materialized views |
US7406469B1 (en) * | 2002-06-20 | 2008-07-29 | Oracle International Corporation | Linear instance mapping for query rewrite |
US7260513B2 (en) * | 2002-07-19 | 2007-08-21 | Microsoft Corporation | System and method for analytically modeling data from different measure groups onto a single cube |
US7287022B2 (en) * | 2002-07-19 | 2007-10-23 | Microsoft Corporation | System and method for analytically modeling data organized according to related attributes |
US7275022B2 (en) * | 2002-07-19 | 2007-09-25 | Microsoft Corporation | System and method for analytically modeling data organized according to non-referred attributes |
US7313559B2 (en) * | 2002-07-19 | 2007-12-25 | Microsoft Corporation | System and method for analytically modeling data organized according to a referenced attribute |
US20040059659A1 (en) * | 2002-09-13 | 2004-03-25 | Aman Safaei | Map based lottery ticket sales and marketing analysis system and method |
AU2003284118A1 (en) * | 2002-10-14 | 2004-05-04 | Battelle Memorial Institute | Information reservoir |
US20040098370A1 (en) * | 2002-11-15 | 2004-05-20 | Bigchampagne, Llc | Systems and methods to monitor file storage and transfer on a peer-to-peer network |
US7379933B1 (en) | 2002-11-27 | 2008-05-27 | Oracle International Corporation | Union all rewrite for aggregate queries with grouping sets |
US7127456B1 (en) * | 2002-12-05 | 2006-10-24 | Ncr Corp. | System and method for logging database queries |
US20040122814A1 (en) * | 2002-12-18 | 2004-06-24 | International Business Machines Corporation | Matching groupings, re-aggregation avoidance and comprehensive aggregate function derivation rules in query rewrites using materialized views |
US7716167B2 (en) * | 2002-12-18 | 2010-05-11 | International Business Machines Corporation | System and method for automatically building an OLAP model in a relational database |
US7953694B2 (en) * | 2003-01-13 | 2011-05-31 | International Business Machines Corporation | Method, system, and program for specifying multidimensional calculations for a relational OLAP engine |
US20040210452A1 (en) * | 2003-01-14 | 2004-10-21 | Aboujaoude Roger B. | Method and system for unifying and sharing of business systems |
US7895191B2 (en) * | 2003-04-09 | 2011-02-22 | International Business Machines Corporation | Improving performance of database queries |
GB2401210B (en) * | 2003-04-30 | 2005-08-24 | Oracle Int Corp | SQL predicate migration |
US7523462B1 (en) * | 2003-05-27 | 2009-04-21 | International Business Machines Corporation | Method for providing a real time view of heterogeneous enterprise data |
US7448048B1 (en) * | 2003-05-27 | 2008-11-04 | International Business Machines Corporation | Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views |
US20040267648A1 (en) * | 2003-06-26 | 2004-12-30 | Oracle International Corporation | Data totaling using interval-based subtotals |
ATE522873T1 (de) * | 2003-07-18 | 2011-09-15 | Sap Ag | Verfahren und computersystem für zusammengestellte informationen |
US7280998B1 (en) | 2003-07-28 | 2007-10-09 | At&T Corp. | Virtual data warehousing |
US7516115B2 (en) * | 2003-08-20 | 2009-04-07 | International Business Machines Corporation | Method and system for optimizing performance in non-relational databases |
US7664730B2 (en) * | 2003-09-06 | 2010-02-16 | Oracle International Corporation | Method and system for implementing a SQL profile |
US7426520B2 (en) * | 2003-09-10 | 2008-09-16 | Exeros, Inc. | Method and apparatus for semantic discovery and mapping between data sources |
US8315972B2 (en) * | 2003-09-26 | 2012-11-20 | Microsoft Corporation | Method for maintaining databases information about multiple instances of an activity generating, updating virtual OLAP cube based on modified star-schema |
US7149736B2 (en) * | 2003-09-26 | 2006-12-12 | Microsoft Corporation | Maintaining time-sorted aggregation records representing aggregations of values from multiple database records using multiple partitions |
US7716357B2 (en) * | 2003-10-24 | 2010-05-11 | Microsoft Corporation | Service discovery and publication |
US7689579B2 (en) * | 2003-12-03 | 2010-03-30 | Siemens Aktiengesellschaft | Tag modeling within a decision, support, and reporting environment |
US7672964B1 (en) * | 2003-12-31 | 2010-03-02 | International Business Machines Corporation | Method and system for dynamically initializing a view for a streaming data base system |
US7627553B1 (en) * | 2004-01-07 | 2009-12-01 | Teradata Us, Inc. | Custom queries for segmentation |
EP1569135A1 (en) * | 2004-01-19 | 2005-08-31 | Sap Ag | A database management system and a method of managing a database |
US8359325B1 (en) | 2004-02-25 | 2013-01-22 | Teradata Us, Inc. | Determining materialized view coverage for join transactions |
US7373354B2 (en) * | 2004-02-26 | 2008-05-13 | Sap Ag | Automatic elimination of functional dependencies between columns |
US7263520B2 (en) * | 2004-02-27 | 2007-08-28 | Sap Ag | Fast aggregation of compressed data using full table scans |
US7840547B1 (en) | 2004-03-31 | 2010-11-23 | Google Inc. | Methods and systems for efficient query rewriting |
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 |
US20050234945A1 (en) * | 2004-04-14 | 2005-10-20 | Oracle International Corporation | Allocating CPU resources for a particular refresh schedule |
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) |
US7647356B2 (en) * | 2004-05-07 | 2010-01-12 | Oracle International Corporation | Methods and apparatus for facilitating analysis of large data sets |
US8996502B2 (en) * | 2004-05-17 | 2015-03-31 | Oracle International Corporation | Using join dependencies for refresh |
US7707143B2 (en) | 2004-06-14 | 2010-04-27 | International Business Machines Corporation | Systems, methods, and computer program products that automatically discover metadata objects and generate multidimensional models |
US7480663B2 (en) * | 2004-06-22 | 2009-01-20 | International Business Machines Corporation | Model based optimization with focus regions |
US20050283458A1 (en) * | 2004-06-22 | 2005-12-22 | Microsoft Corporation | Automatic detection of frequently used query patterns in a query workload |
US7840607B2 (en) * | 2004-08-06 | 2010-11-23 | Siemens Aktiengesellschaft | Data mart generation and use in association with an operations intelligence platform |
US8700671B2 (en) * | 2004-08-18 | 2014-04-15 | Siemens Aktiengesellschaft | System and methods for dynamic generation of point / tag configurations |
US7499939B2 (en) * | 2004-10-18 | 2009-03-03 | International Business Machines Corporation | Method for efficiently managing membership in a hierarchical data structure |
US7814123B2 (en) * | 2004-12-02 | 2010-10-12 | Siemens Aktiengesellschaft | Management of component members using tag attributes |
US20060173908A1 (en) * | 2005-01-10 | 2006-08-03 | Browning Michelle M | System and method for automated customization of a workflow management system |
US8442938B2 (en) * | 2005-01-14 | 2013-05-14 | Siemens Aktiengesellschaft | Child data structure update in data management system |
US7519572B2 (en) * | 2005-02-15 | 2009-04-14 | International Business Machines Corporation | System and method for efficiently obtaining a summary from and locating data in a log file |
US7447681B2 (en) | 2005-02-17 | 2008-11-04 | International Business Machines Corporation | Method, system and program for selection of database characteristics |
US20060218116A1 (en) * | 2005-03-28 | 2006-09-28 | O'hearn James E | Pass-through interface queries to populate a class-based model |
US7599925B2 (en) * | 2005-03-31 | 2009-10-06 | Microsoft Corporation | Using query expression signatures in view matching |
US20060235834A1 (en) * | 2005-04-14 | 2006-10-19 | Microsoft Corporation | Path expression in structured query language |
US7640255B2 (en) * | 2005-05-31 | 2009-12-29 | Sap, Ag | Method for utilizing a multi-layered data model to generate audience specific documents |
US7925642B2 (en) * | 2005-06-09 | 2011-04-12 | International Business Machines Corporation | Apparatus and method for reducing size of intermediate results by analyzing having clause information during SQL processing |
US20060288045A1 (en) * | 2005-06-16 | 2006-12-21 | Digital Fuel Technologies, Inc. | Method for aggregate operations on streaming data |
US7584205B2 (en) * | 2005-06-27 | 2009-09-01 | Ab Initio Technology Llc | Aggregating data with complex operations |
US8429167B2 (en) * | 2005-08-08 | 2013-04-23 | Google Inc. | User-context-based search engine |
US8027876B2 (en) | 2005-08-08 | 2011-09-27 | Yoogli, Inc. | Online advertising valuation apparatus and method |
US20070094233A1 (en) * | 2005-10-24 | 2007-04-26 | Wolfgang Otter | Translating time-independent data using database operations |
US7464083B2 (en) * | 2005-10-24 | 2008-12-09 | Wolfgang Otter | Combining multi-dimensional data sources using database operations |
US7958456B2 (en) * | 2005-12-23 | 2011-06-07 | Apple Inc. | Scrolling list with floating adjacent index symbols |
US20070162493A1 (en) * | 2005-12-30 | 2007-07-12 | Matthias Schmitt | Business object duplicates |
US7831617B2 (en) * | 2006-07-25 | 2010-11-09 | Microsoft Corporation | Re-categorization of aggregate data as detail data and automated re-categorization based on data usage context |
EP1883020B1 (en) * | 2006-07-28 | 2013-05-22 | Dassault Systèmes | Method and system for navigating in a database of a computer system |
US8375041B2 (en) * | 2006-08-31 | 2013-02-12 | Business Objects Software Ltd | Processing queries against combinations of data sources |
US8418217B2 (en) | 2006-09-06 | 2013-04-09 | Verizon Patent And Licensing Inc. | Systems and methods for accessing media content |
US8316320B2 (en) * | 2006-10-03 | 2012-11-20 | Verizon Patent And Licensing Inc. | Expandable history tab in interactive graphical user interface systems and methods |
US8464295B2 (en) * | 2006-10-03 | 2013-06-11 | Verizon Patent And Licensing Inc. | Interactive search graphical user interface systems and methods |
US20080120309A1 (en) * | 2006-11-17 | 2008-05-22 | Microsoft Corporation | Storing, maintaining and locating information |
US20080162512A1 (en) * | 2006-12-29 | 2008-07-03 | Sanjeet Mall | Efficient storage and distribution system for non-transactional data |
US7797335B2 (en) * | 2007-01-18 | 2010-09-14 | International Business Machines Corporation | Creation and persistence of action metadata |
KR100857139B1 (ko) * | 2007-02-01 | 2008-09-05 | 엘지전자 주식회사 | 멀티에어컨 시스템 및 그의 데이터 작성방법 |
US7865533B2 (en) * | 2007-02-05 | 2011-01-04 | Microsoft Corporation | Compositional query comprehensions |
US8260783B2 (en) * | 2007-02-27 | 2012-09-04 | Siemens Aktiengesellschaft | Storage of multiple, related time-series data streams |
US9489418B2 (en) | 2007-04-27 | 2016-11-08 | International Business Machines Corporation | Processing database queries embedded in application source code from within integrated development environment tool |
US8392880B2 (en) * | 2007-04-27 | 2013-03-05 | International Business Machines Corporation | Rapid application development for database-aware applications |
US8566793B2 (en) * | 2007-04-27 | 2013-10-22 | International Business Machines Corporation | Detecting and displaying errors in database statements within integrated development environment tool |
US9047337B2 (en) * | 2007-04-27 | 2015-06-02 | International Business Machines Corporation | Database connectivity and database model integration within integrated development environment tool |
US20080288527A1 (en) * | 2007-05-16 | 2008-11-20 | Yahoo! Inc. | User interface for graphically representing groups of data |
US8122056B2 (en) * | 2007-05-17 | 2012-02-21 | Yahoo! Inc. | Interactive aggregation of data on a scatter plot |
US7756900B2 (en) * | 2007-05-22 | 2010-07-13 | Yahoo!, Inc. | Visual interface to indicate custom binning of items |
US7739229B2 (en) | 2007-05-22 | 2010-06-15 | Yahoo! Inc. | Exporting aggregated and un-aggregated data |
US7792784B2 (en) * | 2007-05-31 | 2010-09-07 | International Business Machines Corporation | Streaming multidimensional data by bypassing multidimensional query processor |
US8090735B2 (en) * | 2007-06-22 | 2012-01-03 | International Business Machines Corporation | Statement generation using statement patterns |
US8375351B2 (en) * | 2007-06-23 | 2013-02-12 | International Business Machines Corporation | Extensible rapid application development for disparate data sources |
US20090019103A1 (en) * | 2007-07-11 | 2009-01-15 | James Joseph Tommaney | Method and system for processing a database query |
US8401987B2 (en) * | 2007-07-17 | 2013-03-19 | International Business Machines Corporation | Managing validation models and rules to apply to data sets |
US7885953B2 (en) * | 2007-10-03 | 2011-02-08 | International Business Machines Corporation | Off-loading star join operations to a storage server |
US7958141B2 (en) * | 2007-11-01 | 2011-06-07 | Ebay Inc. | Query utilization |
US7917462B1 (en) * | 2007-11-09 | 2011-03-29 | Teradata Us, Inc. | Materializing subsets of a multi-dimensional table |
US9558169B2 (en) * | 2007-11-20 | 2017-01-31 | Sap Se | Hierarchical grouping columns |
US8473466B1 (en) * | 2007-12-31 | 2013-06-25 | Teradata Us, Inc. | Systems and methods for storing data, such as storing data based on storage classes |
US8145635B1 (en) * | 2008-03-14 | 2012-03-27 | Workday, Inc. | Dimensional data explorer |
US8239416B2 (en) | 2008-05-30 | 2012-08-07 | Armanta, Inc. | System, method, and computer program product for modeling changes to large scale datasets |
US9720971B2 (en) * | 2008-06-30 | 2017-08-01 | International Business Machines Corporation | Discovering transformations applied to a source table to generate a target table |
US8195645B2 (en) * | 2008-07-23 | 2012-06-05 | International Business Machines Corporation | Optimized bulk computations in data warehouse environments |
US9692856B2 (en) * | 2008-07-25 | 2017-06-27 | Ca, Inc. | System and method for filtering and alteration of digital data packets |
US8401990B2 (en) * | 2008-07-25 | 2013-03-19 | Ca, Inc. | System and method for aggregating raw data into a star schema |
US20100070461A1 (en) * | 2008-09-12 | 2010-03-18 | Shon Vella | Dynamic consumer-defined views of an enterprise's data warehouse |
US7668804B1 (en) * | 2008-11-04 | 2010-02-23 | International Business Machines Corporation | Recommending statistical views using cost/benefit metrics |
US20100332550A1 (en) * | 2009-06-26 | 2010-12-30 | Microsoft Corporation | Platform For Configurable Logging Instrumentation |
US20100332531A1 (en) * | 2009-06-26 | 2010-12-30 | Microsoft Corporation | Batched Transfer of Arbitrarily Distributed Data |
US20110029516A1 (en) * | 2009-07-30 | 2011-02-03 | Microsoft Corporation | Web-Used Pattern Insight Platform |
US8082247B2 (en) * | 2009-07-30 | 2011-12-20 | Microsoft Corporation | Best-bet recommendations |
US8392380B2 (en) * | 2009-07-30 | 2013-03-05 | Microsoft Corporation | Load-balancing and scaling for analytics data |
US8135753B2 (en) * | 2009-07-30 | 2012-03-13 | Microsoft Corporation | Dynamic information hierarchies |
US9330123B2 (en) * | 2009-12-20 | 2016-05-03 | Sap Se | Method and system for improving information system performance based on usage patterns |
US8626790B2 (en) * | 2010-04-23 | 2014-01-07 | Hartford Fire Insurance Company | System and method for processing and analyzing dimension data |
US8924384B2 (en) * | 2010-08-04 | 2014-12-30 | Sap Ag | Upgrading column-based databases |
US8306953B2 (en) | 2010-08-31 | 2012-11-06 | International Business Machines Corporation | Online management of historical data for efficient reporting and analytics |
US20120078941A1 (en) * | 2010-09-27 | 2012-03-29 | Teradata Us, Inc. | Query enhancement apparatus, methods, and systems |
WO2012095839A2 (en) | 2011-01-10 | 2012-07-19 | Optier Ltd. | Systems and methods for performing online analytical processing |
US8849996B2 (en) | 2011-09-12 | 2014-09-30 | Microsoft Corporation | Efficiently providing multiple metadata representations of the same type |
US10331664B2 (en) * | 2011-09-23 | 2019-06-25 | Hartford Fire Insurance Company | System and method of insurance database optimization using social networking |
US8930303B2 (en) | 2012-03-30 | 2015-01-06 | International Business Machines Corporation | Discovering pivot type relationships between database objects |
US9652776B2 (en) | 2012-06-18 | 2017-05-16 | Greg Olsen | Visual representations of recurring revenue management system data and predictions |
US10078677B2 (en) | 2012-06-18 | 2018-09-18 | ServiceSource International, Inc. | Inbound and outbound data handling for recurring revenue asset management |
US9824121B2 (en) * | 2012-08-10 | 2017-11-21 | Arris Enterprises Llc | Aggregate data streams in relational database systems |
US9858326B2 (en) * | 2012-10-10 | 2018-01-02 | Microsoft Technology Licensing, Llc | Distributed data warehouse |
US9208183B2 (en) * | 2013-03-15 | 2015-12-08 | Bmc Software Inc. | Data access of slowly changing dimensions |
US9953054B2 (en) * | 2013-04-22 | 2018-04-24 | Salesforce.Com, Inc. | Systems and methods for implementing and maintaining sampled tables in a database system |
KR101496179B1 (ko) * | 2013-05-24 | 2015-02-26 | 삼성에스디에스 주식회사 | 데이터 부재 태깅 기반의 정보 검색 시스템 및 방법 |
US9396218B2 (en) | 2013-09-16 | 2016-07-19 | International Business Machines Corporation | Database insert with deferred materialization |
US10769711B2 (en) | 2013-11-18 | 2020-09-08 | ServiceSource International, Inc. | User task focus and guidance for recurring revenue asset management |
US9672256B2 (en) | 2014-02-04 | 2017-06-06 | Microsoft Technology Licensing, Llc | Creating data views |
GB2524072A (en) * | 2014-03-14 | 2015-09-16 | Ibm | Demand-driven dynamic aggregate |
US9552390B2 (en) * | 2014-04-29 | 2017-01-24 | Futurewei Technologies, Inc. | System and method for out of order multiple query execution within stored procedure |
US10635645B1 (en) * | 2014-05-04 | 2020-04-28 | Veritas Technologies Llc | Systems and methods for maintaining aggregate tables in databases |
US10282446B2 (en) | 2014-06-30 | 2019-05-07 | Netscout Systems Texas, Llc | Dynamic selection of source table for DB rollup aggregation and query rewrite based on model driven definitions and cardinality estimates |
US11488086B2 (en) | 2014-10-13 | 2022-11-01 | ServiceSource International, Inc. | User interface and underlying data analytics for customer success management |
US10176226B2 (en) * | 2014-11-26 | 2019-01-08 | Looker Data Sciences, Inc. | Relation aware aggregation (RAA) on normalized datasets |
US11392582B2 (en) * | 2015-10-15 | 2022-07-19 | Sumo Logic, Inc. | Automatic partitioning |
US10498605B2 (en) * | 2016-06-02 | 2019-12-03 | Zscaler, Inc. | Cloud based systems and methods for determining and visualizing security risks of companies, users, and groups |
US11334588B1 (en) | 2017-06-05 | 2022-05-17 | Amazon Technologies, Inc. | Analysis engine data intake |
US11113282B2 (en) * | 2017-09-29 | 2021-09-07 | Oracle International Corporation | Online optimizer statistics maintenance during load |
US10810196B2 (en) | 2017-12-13 | 2020-10-20 | Hewlett-Packard Development Company, L.P. | Materialized view generation |
US10719508B2 (en) * | 2018-04-19 | 2020-07-21 | Risk Management Solutions, Inc. | Data storage system for providing low latency search query responses |
US11960468B1 (en) * | 2018-05-17 | 2024-04-16 | Amazon Technologies, Inc. | Late-binding database views |
US11354310B2 (en) | 2018-05-23 | 2022-06-07 | Oracle International Corporation | Dual purpose zone maps |
US10474655B1 (en) | 2018-07-23 | 2019-11-12 | Improbable Worlds Ltd | Entity database |
WO2020057471A1 (en) * | 2018-09-21 | 2020-03-26 | Huawei Technologies Co., Ltd. | Materialized views for database query optimization |
US11914590B1 (en) * | 2018-10-31 | 2024-02-27 | Amazon Technologies, Inc. | Database request router improving server cache utilization |
US11487737B2 (en) * | 2019-03-26 | 2022-11-01 | Sap Se | Take over table opening for operators |
US11269880B2 (en) * | 2019-05-20 | 2022-03-08 | Google Llc | Retroreflective clustered join graph generation for relational database queries |
US11281671B2 (en) * | 2019-05-20 | 2022-03-22 | Google Llc | Retroreflective join graph generation for relational database queries |
US11734308B2 (en) | 2019-09-12 | 2023-08-22 | Oracle International Corporation | Autonomous caching for views |
US11797520B2 (en) | 2019-11-29 | 2023-10-24 | Oracle International Corporation | ROWID elimination rewrite |
CN111104453A (zh) * | 2019-12-18 | 2020-05-05 | 深圳市中农易讯信息技术有限公司 | 数据的查询方法、装置、终端及存储介质 |
US11995081B2 (en) * | 2020-09-14 | 2024-05-28 | Oracle International Corporation | Predicting future query rewrite patterns for materialized views |
US11461328B2 (en) * | 2020-09-21 | 2022-10-04 | Oracle International Corporation | Method for using a sematic model to transform SQL against a relational table to enable performance improvements |
US11556533B2 (en) | 2020-11-12 | 2023-01-17 | Oracle International Corporation | Method for generating views based on a semantic model, that allows for autonomous performance improvements and complex calculations |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0320266A3 (en) | 1987-12-11 | 1992-03-11 | Hewlett-Packard Company | View composition in a data base management system |
US5220625A (en) | 1989-06-14 | 1993-06-15 | Hitachi, Ltd. | Information search terminal and system |
JP3163141B2 (ja) * | 1992-01-30 | 2001-05-08 | 富士通株式会社 | リレーショナルデータベース処理装置および処理方法 |
US5412806A (en) * | 1992-08-20 | 1995-05-02 | Hewlett-Packard Company | Calibration of logical cost formulae for queries in a heterogeneous DBMS using synthetic database |
US5495607A (en) * | 1993-11-15 | 1996-02-27 | Conner Peripherals, Inc. | Network management system having virtual catalog overview of files distributively stored across network domain |
US5655116A (en) * | 1994-02-28 | 1997-08-05 | Lucent Technologies Inc. | Apparatus and methods for retrieving information |
US5515488A (en) | 1994-08-30 | 1996-05-07 | Xerox Corporation | Method and apparatus for concurrent graphical visualization of a database search and its search history |
US5995961A (en) * | 1995-11-07 | 1999-11-30 | Lucent Technologies Inc. | Information manifold for query processing |
US5913205A (en) * | 1996-03-29 | 1999-06-15 | Virage, Inc. | Query optimization for visual information retrieval system |
US5897632A (en) * | 1996-08-27 | 1999-04-27 | At&T Corp | Method and system for using materialized views to evaluate queries involving aggregation |
US6006216A (en) * | 1997-07-29 | 1999-12-21 | Lucent Technologies Inc. | Data architecture for fetch-intensive database applications |
US6108647A (en) * | 1998-05-21 | 2000-08-22 | Lucent Technologies, Inc. | Method, apparatus and programmed medium for approximating the data cube and obtaining approximate answers to queries in relational databases |
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 |
-
1999
- 1999-03-25 US US09/277,041 patent/US6480836B1/en not_active Expired - Lifetime
- 1999-03-25 US US09/277,034 patent/US6493699B2/en not_active Expired - Lifetime
- 1999-03-25 JP JP2000541606A patent/JP2002510088A/ja not_active Ceased
- 1999-03-25 EP EP99914054A patent/EP1066574A4/en not_active Withdrawn
- 1999-03-25 BR BR9909896-2A patent/BR9909896A/pt not_active Application Discontinuation
- 1999-03-25 AU AU31985/99A patent/AU761900B2/en not_active Ceased
- 1999-03-25 WO PCT/US1999/006297 patent/WO1999050762A1/en not_active Application Discontinuation
- 1999-03-25 US US09/277,040 patent/US6594653B2/en not_active Expired - Lifetime
- 1999-03-25 CA CA002326513A patent/CA2326513C/en not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163290A (ja) * | 2000-09-27 | 2002-06-07 | Microsoft Corp | クエリ最適化のためのコストに基づく具体化ビューの選択 |
JP2005267612A (ja) * | 2004-03-18 | 2005-09-29 | Microsoft Corp | 暗黙の述部を使用する改良されたクエリ・オプティマイザ |
JP2008547086A (ja) * | 2005-06-15 | 2008-12-25 | インターレース・システムズ・インコーポレイテッド | 大きなデータセットの解析中に整合性を維持するための方法および装置 |
JP2007066017A (ja) * | 2005-08-31 | 2007-03-15 | Internatl Business Mach Corp <Ibm> | データベースに対するアクセスを制御するシステム、およびその方法 |
JP2015515671A (ja) * | 2012-06-27 | 2015-05-28 | エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. | 進化的な分析のためのシステム |
JP2019040409A (ja) * | 2017-08-25 | 2019-03-14 | Kddi株式会社 | データベース管理装置、データベース管理方法、及びデータベース管理プログラム |
Also Published As
Publication number | Publication date |
---|---|
CA2326513A1 (en) | 1999-10-07 |
BR9909896A (pt) | 2001-09-11 |
CA2326513C (en) | 2009-06-16 |
US6480836B1 (en) | 2002-11-12 |
US20020077997A1 (en) | 2002-06-20 |
US6493699B2 (en) | 2002-12-10 |
AU761900B2 (en) | 2003-06-12 |
US6594653B2 (en) | 2003-07-15 |
AU3198599A (en) | 1999-10-18 |
EP1066574A1 (en) | 2001-01-10 |
EP1066574A4 (en) | 2006-09-13 |
WO1999050762A1 (en) | 1999-10-07 |
US20010013030A1 (en) | 2001-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6480836B1 (en) | System and method for determining and generating candidate views for a database | |
Chaudhuri et al. | An overview of data warehousing and OLAP technology | |
Wu et al. | Research issues in data warehousing | |
AU772754B2 (en) | System and method for rewriting relational database queries | |
Chaudhuri et al. | AutoAdmin “what-if” index analysis utility | |
US7895191B2 (en) | Improving performance of database queries | |
Chaudhuri et al. | Database technology for decision support systems | |
US6789071B1 (en) | Method for efficient query execution using dynamic queries in database environments | |
US5680602A (en) | Trigger generation in an active database management system | |
US20070061287A1 (en) | Method, apparatus and program storage device for optimizing a data warehouse model and operation | |
US20110029507A1 (en) | Cardinality and selectivity estimation using a single table join index | |
Shukla et al. | Materialized view selection for multi-cube data models | |
Chen et al. | Efficient computation of multiple group by queries | |
US20050102271A1 (en) | Indexes with embedded data | |
Wu et al. | POLYTOPE: a flexible sampling system for answering exploratory queries | |
Rösch et al. | Sample synopses for approximate answering of group-by queries | |
Bellatreche et al. | Some issues in design of data warehousing systems | |
Tsois et al. | Cost-based optimization of aggregation star queries on hierarchically clustered data warehouses. | |
Indulska | Shared result identification for materialized view selection | |
Pieringer et al. | Combining hierarchy encoding and pre-grouping: intelligent grouping in star join processing | |
Paraboschi et al. | Materialized views in multidimensional databases | |
Chaudhuri et al. | Data management technology for decision support systems. | |
Ramirez et al. | Performance Analysis of “What-If” Databases Using Independently Updated Views | |
MXPA00009484A (en) | Processing precomputed views | |
using Histograms | Bulletin of the Technical Committee on |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20040227 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080415 |
|
AA92 | Notification that decision to refuse application was cancelled |
Free format text: JAPANESE INTERMEDIATE CODE: A971092 Effective date: 20080507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080520 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080805 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080924 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090203 |