JP2002007435A - 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体 - Google Patents

対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体

Info

Publication number
JP2002007435A
JP2002007435A JP2000185484A JP2000185484A JP2002007435A JP 2002007435 A JP2002007435 A JP 2002007435A JP 2000185484 A JP2000185484 A JP 2000185484A JP 2000185484 A JP2000185484 A JP 2000185484A JP 2002007435 A JP2002007435 A JP 2002007435A
Authority
JP
Japan
Prior art keywords
data
interactive
attribute
sql
state
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
JP2000185484A
Other languages
English (en)
Inventor
Takuya Kitano
拓哉 北野
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2000185484A priority Critical patent/JP2002007435A/ja
Publication of JP2002007435A publication Critical patent/JP2002007435A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】時間や座標などの次元軸における連続した領域
での条件判定でタプルを集約する機能とその値をテーブ
ルで管理する機能を、対話型のOLAPサーバシステム
に装備する。 【解決手段】標準SQLを拡張して、時間や座標などの
次元軸における連続した領域でのタプルのグループ化と
その集約値の計算を要求する記述を可能にし、前記拡張
したSQL文を入力するための対話型ユーザインタフェ
ースと、前記拡張したSQLの構文を解釈する問合せ処
理手段と、前記SQLに含まれるユーザ定義のグループ
化と集約計算方法を実行するユーザ定義集約関数処理手
段と、前記SQLの構文解釈に従ってテーブルやそのデ
ータを管理するデータ管理手段と、前記テーブルやその
データを格納するデータベースとをOLAPサーバシス
テムに装備する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、多次元データモデ
ル(データキューブモデル)に従う多次元データを管理
してユーザからの分析要求に応答するOLAPサーバシ
ステムに関するものであり、特に前記多次元データの集
合を集約して別の一つの多次元データとして管理可能な
OLAPサーバシステム、前記多次元データをある属性
値での連続した領域での条件判定によって集約すること
が可能なOLAPサーバシステム、前記集約の定義や操
作をユーザが対話的に実行可能なOLAPサーバシステ
ムに関するものである。
【0002】
【従来の技術】(OLAPサーバシステムと多次元デー
タモデル)OLAPサーバシステムの概要およびその技
術を説明した文献に以下の文献がある(文献[1]とす
る)。「Surajit Chaudhuri and
Umesh Dayal、 "An Overview
of Data Warehousing and
OLAP Technology"、 ACMSIGM
OD Record、 vol.26、 No.1、
pp.65−74、 March 1997.」。以下
ではこの文献[1]を参考にしてOLAPサーバシステ
ムの概要およびその技術を説明する。
【0003】OLAPサーバシステムではデータの構造
をキューブに見なした多次元データモデル(データキュ
ーブモデル)に従ってデータを管理する。すなわち、キ
ューブを次元軸とその次元軸の各座標で特定される空間
とに分け、分析の対象となるデータを空間上に配置し、
その分析データを特徴づける属性データを次元軸上に配
置する。この分析対象のデータとその分析データを特徴
付ける属性データを組にしたデータを、本発明では多次
元データと呼ぶことにする。多次元データモデルに従っ
た多次元データの例を図2に示す。図2は文献[1]よ
り引用した多次元データを示す概念図である。図2の左
側の図がキューブであり、右側の図はキューブの次元軸
の階層構造を表している。図2のキューブは3次元のキ
ューブであり、次元(Dimension; ディメン
ション)軸であるx軸にDate、y軸にProduc
t、z軸にCityを置き、その各座標で特定されるキ
ューブの空間上に数量を表す数値を置いている。例えば
Dateが1で、ProductがColaで、Cit
yがNである数量は50となる。
【0004】また多次元データモデルでは、各次元に、
管理対象のデータを集約するための集約階層(hier
archical summarization pa
th)を構成させることができる。図2の例では、Pr
oductはCategoryごとに集約し、Cate
goryはIndustryごとに集約する集約階層を
持つことを示している。またCityはStateごと
に集約し、それをCountryごとに集約する集約階
層があり、Dateは二種類の集約階層、一つはDat
eをMonthに、そしてQuarter、Yearと
集約する階層構造と、もう一つはDateをWeek
に、そしてQuarter、Yearと集約する集約階
層があることを示している。例えばProductで、
Juice、Cola、MilkがDrinksという
Categoryに属し、Cream、Toothpa
ste、SoapがCosmeticsというCate
goryに属しているとしたとき、Dateが1、Ci
tyがN、そしてProductのCategoryが
Drinksである数量の合計は80となり、同様にC
osmeticsの合計数量は37となる。
【0005】(リレーショナルデータベースとスター・
スキーマ)このような多次元データモデルに従った多次
元データを管理するOLAPサーバの実装方法として、
リレーショナルデータベース(Relational
Database; RDB)を利用するROLAPが
ある。
【0006】ROLAPでは、RDBを用いて多次元デ
ータを複数のテーブル(relation)に分けて管
理する。通常、一つのキューブに対して、各次元軸に対
応するそれぞれ一つのディメンション・テーブルを用意
し、空間データに対応する一つのファクト・テーブルを
用意する。各ディメンション・テーブルとファクト・テ
ーブルとの関係は1対多の関係となり、ファクト・テー
ブル側にディメンション・テーブルの主キーを参照する
外部キーを持たせる。このように一つのファクト・テー
ブルと複数のディメンション・テーブルで構成されるデ
ータベースのスキーマをスター・スキーマ(star
schema)と呼ぶ。
【0007】図2の多次元データをスター・スキーマで
表した例を図3に示す。ただし図3では次元としてPr
oduct、Date、Cityの他に、Order、
Customer、Salespersonを加えて6
次元で構成されている。次元の集約階層は各ディメンシ
ョン・テーブルの属性としてフラットに表されている。
集約階層に従った集約データを求めるには、ファクト・
テーブルとディメンション・テーブルを結合し、ディメ
ンション・テーブルの集約階層を表す属性で同じ値を持
つファクト・テーブルのタプル同士を集約することで実
現する。
【0008】図3で集約階層がフラットの属性として表
現されていたディメンション・テーブルを、複数のテー
ブルに分割して管理する方法もある。このように、次元
の集約階層に基づいてディメンション・テーブルを複数
用意するスキーマをスノーフレーク・スキーマ(sno
wflake schema)と呼ぶ。本発明ではスノ
ーフレーク・スキーマも広義のスター・スキーマと見な
して扱うことにする。
【0009】ROLAPでは、前述のProductの
Categoryごとの合計数量(Quantity)
を求めるためには、ファクト・テーブルとそれに関係す
る必要な数のディメンジョン・テーブルとを結合し(こ
れをスター・ジョインと呼ぶ)、結合したタプルの集合
に対して同じCategoryの値を持つもの同士でグ
ループ化する。その各グループに対して集約関数SUM
(Quantity)を適用して目的の合計数量を得
る。
【0010】(マテリアライズド・ビュー)このような
ディメンジョン・テーブルの集約階層に従ってファクト
・テーブルのタプルをグループ化しその集約値を得る方
法には、分析要求時に計算する方法と、分析要求前にあ
らかじめ計算してマテリアライズド・ビュー(mate
rialized view)として用意する方法があ
る。典型的な分析要求が頻繁に発生したり、他の分析要
求に集計結果などのデータを効率良く再利用できるよう
なビューが存在する場合は、ROLAPにおける分析処
理の性能向上の観点からそれをマテリアライズド・ビュ
ーとして事前に用意するのが効果的である。
【0011】(ビットマップ・インデックスとビットマ
ップ・ジョイン・インデックス)分析要求時に計算する
方法では、スター・ジョインを高速に実行するための仕
組みとして、ディメンション・テーブルとファクト・テ
ーブルとの関係に対してビットマップ・ジョイン・イン
デックスを、そしてディメンション・テーブルにおける
階層構造を表す属性に対してビットマップ・インデック
スをそれぞれ用意する方法がある。ビットマップ・ジョ
イン・インデックスは、ディメンション・テーブルとフ
ァクト・テーブルをあらかじめジョインした結果の関係
を、2次元のビットマップで表現したインデックスであ
る。すなわち、一方の次元にディメンション・テーブル
のタプルのRID(rowidentifier; リ
レーショナルデータベースにおいて、テーブルで管理さ
れる各タプルを一意に特定する)又はOID(obje
ct identifier; オブジェクトリレーシ
ョナルデータベース又はオブジェクト指向データベース
において、テーブル又はクラスで管理される各タプル又
はオブジェクトを一意に特定する)を配置し、もう一方
の次元にファクト・テーブルのタプルのRID又はOI
Dを配置する(RIDもOIDも共に一つのタプル又は
オブジェクトを一意に特定するIDなので、本発明では
以後、RIDとOIDをまとめてRIDと呼ぶことにす
る)。その各次元のタプルの組がジョイン後に関係があ
る場合はビット1を記録し、関係がない場合はビット0
を記録する。
【0012】また、ビットマップ・インデックスは、2
次元のビットマップで、一方の次元にそのディメンショ
ン・テーブルのタプルのRIDを配置し、もう一方の次
元にディメンション・テーブルのある属性の取り得る値
のリスト(すなわちその属性のドメイン)を配置する。
その後、各タプルごとに、その該当する属性値の場所に
ビット1を記録する。また、その他の該当しない属性値
の場所はすべてビット0を記録する。
【0013】以上のビットマップ・ジョイン・インデッ
クスと、ビットマップ・インデックスにより、スター・
ジョインを高速に行うことが可能となり、またディメン
ション・テーブルの階層構造の属性で同じ値を持つスタ
ー・ジョイン後のタプル同士のグループ化を高速に行う
ことが可能となる。またこのグループ化と集約関数によ
って集約値を計算する操作をロールアップ(rollu
p)とよぶ。ロールアップの逆の操作で、ディメンショ
ン・テーブルの集約階層に従って集約値を計算したタプ
ルのグループを展開し、元のグループ化前の値を求める
操作をドリル・ダウン(drill−down)とよ
ぶ。ドリル・ダウンの操作においても、ビットマップ・
インデックスとビットマップ・ジョイン・インデックス
を有効に利用して高速に実行することができる。
【0014】(ROLAPにおける標準SQLと拡張S
QL)ROLAPでファクト・テーブルの集約値を求め
るには、前記マテリアライズド・ビューとしてあらかじ
め用意する場合でも、前記ビットマップ・ジョイン・イ
ンデックスと、ビットマップ・インデックスを用いて分
析要求時に計算する場合でも、タプルをグループ化する
操作が必須となる。このようなグループ化は、通常、R
DBに対する問合せ言語SQL(Structured
Query Language)によってその内容と
方法が記述され、処理される。ISO/IEC 907
5の標準SQLでは、GROUP BY句でリストした
属性で同じ値を持つタプル同士をグループ化する方法を
提供している。さらにHAVING句で指定した条件が
Trueとなるグループのみを結果として残すことも可
能である。しかし、GROUP BY句によってグルー
プ化したタプルの集合に対してさらにその集合の範囲を
限定するような条件を設定することはできない。この同
じ属性値を持つタプル同士をグループ化したタプルの集
合をさらに限定する方法として、以下の2つの文献では
標準SQLを拡張する方法が提案されている(順番に文
献[2]、文献[3]とする)。「Damianos
Chatziantoniou and Kennet
h A. Ross、 "Querying Mult
iple Features of Groupsin
Relational Databases"、 in
Proceedings of the 22nd
International Conference
on Very Large Databases(V
LDB)、 pp.295−306、 Sept. 1
996.」、「Kenneth A. Ross、 D
ivesh Srivastava、 Damiano
s Chatziantoniou、 "Comple
x Aggregation atMultiple
Granularities"、 in Procee
dings of the 6th Internat
ional Conference on Exten
ding Database Technology
(EDBT)、 pp.263−277、 March
1998.」文献[2]、文献[3]で提案されてい
る図4の拡張SQLの構文について説明する。FROM
句のT、...、Tの各Tはテーブルであり、SE
LECT句およびGROUP BY句のB、...、
、A、...、Aの各B、AはTの属性であ
る。SELECT句のf、...、fの各fはグル
ープ化したタプルの集合に対する集約関数である。WH
ERE句のCondはテーブルTに対するタプルの選択
条件であり、タプルのグループ化に先立って評価され
る。βは{B、...、B}の任意の部分集合を表
し、このβの属性の組で同じ値を持つタプル同士をグル
ープ化する。この拡張SQLの構文では、このタプルの
グループ化に関して条件を与えることができる。まずG
ROUP BY句でグループ化変数(grouping
variable)と呼ばれるR、...、R
宣言する。このグループ化変数Rはグループ化するタプ
ルの集合を表し、SLECT句、SUCH THAT
句、HAVING句でそれぞれ利用する。SUCH T
HAT句ではこのm個のRで代表されるタプルの各集合
に対してm個の条件式S、...、Sを与え、その
グループ化の条件とする。条件式Sのシンタックスは
R.とし、最初に対象とするタプルの集合を表すグルー
プ化変数Rを記述し、ドットを一つ記述してからグルー
プ化のためのを記述する。この条件式Sのセマンティク
スは、ドットの後に続く条件でTrueとなるタプルを
Rのタプルの集合要素とする。例えば、R.Date
< "96/09/01" ならばタプルの属性Date
の値が"96/09/01"以下であることがRに対する
タプルのグループ化条件となる。
【0015】HAVING句には2つのセマンティクス
がある。一つは標準SQLのそれと同じであり、グルー
プ化したタプルの集合そのものに対する選択条件を記述
し、Trueであるグループのみを結果として残す。例
えばsum(R.Length) >= sum(Le
ngth)/3ならば、Rのタプルの属性Length
の合計値が、Rによらない全タプルのLengthの合
計の1/3以上であるRのグループのみが結果として返
却される。もう一つのセマンティクスはSUCH TH
AT句のセマンティクスと同じであり、グループ化変数
Rを用いてさらにグループ化に関する条件を指定する。
例えばR.Length = max(R.Lengt
h)ならば、Rのタプルの構成要素は、そのRの中でL
engthの最大値を持つタプルのみとなる。SELE
CT句では、標準SQLと同じく検索結果として取り出
すタプルの属性を記述する。図4の各AやBにおいてグ
ループ化変数を用いて属性を記述することも可能であ
る。また、標準SQLではエラーとなるが、SELEC
T句のBでGROUP BY句のβに含まれない属性が
存在しても可としている。この場合、そのBの属性には
特別な定数値ALLが返却される。
【0016】(対話型SQLと手続き型SQL)標準S
QLも拡張SQLも共にDML(Data Manip
ulationLanguage)として利用する場
合、その利用方法によっていくつかに分類される。その
一つの分類として、対話型(非カーソル型)SQLと手
続き型(カーソル型)SQLとに分けられる。対話型S
QLは、タプルの集合に対して宣言的な操作を行う。す
なわち、タプルの一つずつに対する操作を記述せず、条
件を満たすタプルの集合に対して一括した操作を行う
(例外は、INSERT文におけるタプルの一行挿
入)。このような対話型SQLはコマンドライン・イン
タフェースを通してほぼすべてのデータ操作を実行させ
ることができる。一方手続き型SQLは、対話型SQL
にカーソルという概念を用いて、タプルの集合から一つ
ずつデータを取り出して操作を行う。一般に手続き型S
QLは第3世代(3GL)のプログラミング言語をホス
ト言語とし、そのホスト言語に埋め込むことによって利
用される。具体的には、ホスト言語で宣言するホスト変
数にカーソルで取り出したタプルを一つずつ渡し、それ
をホスト言語が持つ繰り返し、分岐、ジャンプなどの制
御構造を用いて文字通り手続き的に操作を記述する。こ
のように手続き型SQLでは複雑な分析処理を記述・実
行させることができるが、ホスト言語のコンパイル、実
行が必要なため、コマンドライン・インタフェースを通
した分析処理には不向きである。
【0017】
【発明が解決しようとする課題】しかしながら、従来の
対話分析的データベースシステム及び対話的分析プログ
ラムを記録した記録媒体においては次のような問題があ
った。即ち、従来の技術で説明した標準SQLや文献
[2]、文献[3]で提案される従来の拡張SQLを対
話型SQLとして利用する場合、タプルの順序関係に基
づいたグループ化を行うことは不可能である。なぜな
ら、対話型SQLはタプルの集合に対して一括した操作
を宣言的に記述する手段しかなく、タプルの一つずつに
対する操作を記述することができないからである。「順
序付き属性の次元軸における連続した領域での条件判定
によってタプルをグループ化する手段」に関して図26
と図5の例を用いて説明する。図26は、ドメインがD
om={0、 1、 2、 3、 4}、Dom
{0、 1、 2、 3、 4}、Domcolor
{white、 gray}、Domvalue=In
tegerである4つの属性、X、Y、color、v
alueからなるテーブルmeshを表し、その25個
のタプルの集合を示している。図5は図26の属性X、
Yをそれぞれ次元軸として二次元上にタプルをマッピン
グした図である。ここで属性colorの値がgray
であることを条件としてタプルをグループ化することを
考える。従来のSQLで「SELECT color、
sum(value) FROM mesh WHE
RE color = ’gray’ GROUP B
Y color;」と指定してグループ化すると、図2
6及び図5に示した8つのタプルが一つのグループとし
て括られる。このグループ化では、属性X、Y上でのタ
プルの順序関係については何も考慮されない。しかし例
えば属性Xの値を時刻の時、属性Yの値を時刻の分とし
た時系列データでは、図26に示した4つのグループの
ように、その時系列上で連続してcolorがgray
となることを条件としてグループ化する多次元分析要求
も考えられる。また属性Xを経度、属性Yを緯度とする
ような地理データでは、図5の点線で囲った2つのグル
ープのように、二次元軸X、Y上でタプルが連続してい
ることを条件としてグループ化する多次元分析要求も考
えられる。
【0018】このようなグループ化を行うためには、従
来の手法では手続き型SQLのカーソルを用いてタプル
を一つずつ取り出し、ホスト言語を用いて論理的に条件
判断するプログラムを作成してコンパイルし実行してい
た。
【0019】以下で、各用語の説明を行う。順序付き属
性とは、次の条件を満たす属性である。あるテーブルT
のタプルt∈Tについて、Tの属性Aによる≦Aで全
順序関係が成り立ち、かつそのtの全順序関係が分析
上意味のある順序であるとき、この属性AをTの順序付
き属性と呼ぶ。全順序関係が分析上意味を持つとは、例
えば時間を表す属性の値に基づいたデータの全順序関係
は、そのデータの経過や履歴を分析する目的では意味を
持つ。逆に分析上意味を持たない全順序関係では、患者
番号など患者の管理の都合で唯一に割り振られたID番
号などが挙げられる。患者を患者番号で全順序付けして
も患者の症例分析などには本質的には役に立たない。次
に、順序付き属性の次元軸について説明する。順序付き
属性の次元軸とは、順序付き属性の値に基づきタプルを
全射(onto mapping)して全順序付けする
ための分析軸のことである。図26、図5の例でも示さ
れた通り、順序付き属性X、Yの値に従ってタプルを時
間軸(一次元軸)上に全射して順序付けする場合や、座
標軸(二次元軸)上に全射して順序付けする場合があ
る。
【0020】このように、分析の対象とする次元軸によ
って、タプルの全順序関係が異なる。順序付き属性の次
元軸においてタプルが連続であることについて説明す
る。その前に、タプルの隣接について説明する。順序付
き属性Aの値をある次元DAの軸上に全射(onto
mapping)し、タプルtをそのDA軸上で全順
序付けする。タプルt、t∈Tが順序付き属性Aの
次元DAの軸上で隣接であるとは、t=A t
場合。t<A t の場合、t<A t<A
となるt∈T(i≠1、2)が存在しない。t
>A t の場合、t>A t>A t
なるt∈T(i≠1、2)が存在しない。ことを満た
すことである。二つ以上の次元軸上でタプルが隣接する
とは、そのすべての順序付き属性の次元軸上で前記の隣
接に関する条件が成り立つことである。タプルの集合が
連続であるとは、その集合の中の任意の2組のタプルが
隣接しているか、または推移的に隣接していることであ
る。2つタプルが推移的に隣接しているとは、別の1つ
以上のタプルを介して隣接していることである。例えば
タプルt、t∈Tが隣接し、タプルt、t∈T
が隣接している場合、タプルt、tはタプルt
介して推移的に隣接しているという。二つ以上の次元軸
上でタプルが連続するとは、そのすべての順序付き属性
の次元軸上で前記の連続に関する条件が成り立つことで
ある。
【0021】図5に示される灰色(gray)の2つの
グループの例で、タプルの隣接について説明する。図5
の各タプルをmesh[X][Y]で表すことにする。
2つのグループとは、点線で囲った{mesh[0]
[1]、mesh[1][2]、 mesh[1]
[3]、mesh[2][3]、mesh[2]
[4]}と{mesh[3][0]、mesh[4]
[0]、mesh[4][1]}の2つである。隣接に
関する一つの例として、mesh[0][1]とmes
h[1][2]が隣接であることを示す。mesh
[0][1]<X mesh[1][2]であるが、m
esh[0][1]<X mesh<X mesh
[1][2]となるgrayのmeshは存在しない。
よって、X軸上で隣接である。mesh[0][1]<
Y mesh[1][2]であるが、mesh[0]
[1]<Y mesh<Y mesh[1][2]とな
るgrayのmeshは存在しない。よって、Y軸上で
隣接である。よってmesh[0][1]とmesh
[1][2]は隣接である。また、mesh[0]
[1]とmesh[1][2]は同じ連続のグループに
属する。mesh[2][4]とmesh[3][0]
が隣接でないことを示す。mesh[2][4]<X
mesh[3][0]であるが、mesh[2][4]
<X mesh<X mesh[3][0]となるgr
ayのmeshは存在しない。よって、X軸上では隣接
である。また、mesh[2][4]>Y mesh
[3][0]であり、mesh[2][4]>Y me
sh>Y mesh[3][0]となるgrayのme
shが存在する。よって、Y軸上では隣接しない。よっ
て(X、Y)の二次元軸上ではmesh[2][4]と
mesh[3][0]は隣接しない。またあるgray
のmeshを介して推移的に隣接することもない。従っ
てmesh[2][4]とmesh[3][0]は同じ
連続のグループには属さない。
【0022】従って、従来技術においては、当然なが
ら、上記連続条件により得られる従来の次元に対して一
括宣言的な集約階層に依らない新型の集約データに対す
る運用管理手段を持たない。以下では、この傍系の課題
について説明する。
【0023】例えば、図27に示すような、ある患者の
体温と血圧の値を日ごとに記録した「患者の体温−血圧
テーブル」があったとする。ここで次のような分析要求
を考える。「体温は37.0℃以上、最高血圧は140
mmHg以上、最低血圧は90mmHg以上であること
をそれぞれの記録において異常(図27の灰色のデー
タ)であるとし、各記録において記録日の昇順で異常が
連続して続いた状態を異常状態と呼ぶことにする。体温
および(最高血圧、最低血圧)の組の異常状態ごとに、
その各属性値の平均値を求めよ。」図27において、順
序付き属性を記録日とする。分析処理では、この記録日
の軸上で体温、最高血圧、最低血圧のそれぞれが異常状
態である期間中のタプルをグループ化し、その各グルー
プ(タプルの集合)における平均値を求めなければなら
ない。体温が37.0℃以上の異常状態を高熱状態、最
高血圧が140mmHg以上かつ最低血圧が90mmH
g以上の異常状態を高血圧状態と呼ぶことにする。図2
7において高熱状態は2つある。それぞれ期間が[1/
13、 1/15]、[1/19、 1/21]のとき
である。この各期間中における体温の平均値は、それぞ
れ37.8 ℃、37.5℃となる。一方、高血圧状態
は2つある。それぞれ期間が[1/15、 1/1
6]、[1/19、 1/19]のときである。この各
期間中におけるそれぞれの平均値は、最高血圧が145
mmHg、152mmHg、最低血圧が95mmHgと
91mmHgとなる。この記録日におけるタプルの連続
を考慮した高熱状態、高血圧状態のグループ化とその各
値の平均値を計算した結果をテーブルとして表したのが
それぞれ図28、図29となる。これらは、図27のテ
ーブルに対する集約テーブル(ビューテーブル、サマリ
ーテーブル)となる。
【0024】従来技術は、このような集約テーブルを格
納するための手段、そしてこのグループ化と集約の逆の
操作であるドリル・ダウン操作、すなわち図28、図2
9の集約テーブルから図27の中の該当するタプルを特
定する手段を持たない。従来のOLAPサーバシステム
では、キューブの次元軸やスター・スキーマのディメン
ション・テーブルの集約階層に従い、その次元軸上で同
じ値を持つタプル同士を集約する計算がほとんどであ
る。標準SQLで説明すると、GROUP BY句で指
定した属性で同じ値を持つタプル同士をグループ化し、
それに対して集約計算を行う。事実、従来のOLAPサ
ーバシステムでは次元の集約階層に従った集約データを
マテリアライズド・ビューとしてあらかじめ用意した
り、同じ属性値を持つタプル同士を高速にグループ化す
るためにビットマップ・インデックスを用意したりする
などの技術が中心であった。
【0025】しかし本発明の図28や図29の例で見ら
れるように、ある属性に関して同じ値を有するタプル同
士を集約する方法以外に、ある値の大小関係を条件にし
てタプルをグループ化したり、それがある順序付き属性
の次元軸に沿って連続してTrueとなるタプル同士を
グループ化したりするなど、さまざまなグループ化の条
件を設定して集約テーブルを作成する要求が存在する。
【0026】更に、その際の新型の集約データの運用管
理手段としては、これらの集約方法はスター・スキーマ
のディメンション・テーブルの集約階層に依存しないた
め、従来の技術で説明したスター・スキーマに従ったビ
ットマップ・ジョイン・インデックスやビットマップ・
インデックスを用いることができない。また、グループ
化したタプルからグループ化前のタプルに展開するドリ
ル・ダウンの操作でも、これらのインデックスを用いる
ことができない。
【0027】従って、従来のビットマップ・インデック
スに代わる別の方法によって、集約後のテーブルから元
の集約前のタプルを特定する手段である必要がある。
【0028】本発明は、以上の従来技術における問題に
鑑みてなされたものであり、対話性を保ちつつ新たな分
析手法を備えた対話分析的データベースシステム及びに
対話的分析プログラムを記録した記録媒体を提供するこ
とを目的とする。
【0029】
【課題を解決するための手段】前記課題を解決するため
に提供する本願第一の発明に係る対話分析的データベー
スシステムは、対話型ユーザインタフェースと、このイ
ンターフェースで使用される対話型問合せ言語と、この
問合せ言語の構文を解釈する問合せ処理手段と、前記問
合せ言語の構文解釈に従ってデータを運用管理するデー
タ管理手段と、前記データを格納するデータベースとを
備え、データを対話的かつ多次元分析的に運用管理する
OLAPサーバシステムである対話分析的データベース
システムにおいて、順序付け可能属性(ordinal
attribute)を有する一以上の次元の順序に
よる多次元データの隣接概念に基づく多次元分析要求と
その結果を管理する分析結果管理要求とを記述する拡張
された対話型問合せ言語と、この拡張された対話型問合
せ言語の構文を解釈する拡張された問合せ処理手段と、
この構文解釈に従ってデータを運用管理するデータ管理
手段とを備えたことを特徴とする。
【0030】順序付け可能属性(ordinal at
tribute)を有する一以上の次元の順序による多
次元データの隣接概念に基づく多次元分析要求とその結
果を管理する分析結果管理要求とを記述する拡張された
対話型問合せ言語と、この拡張された対話型問合せ言語
の構文を解釈する拡張された問合せ処理手段と、この構
文解釈に従ってデータを運用管理するデータ管理手段と
を備えたことにより、次元の順序付け可能属性に基づく
新たな分析手法を対話的に行える。
【0031】前記課題を解決するために提供する本願第
二の発明に係る対話分析的データベースシステムは、本
願第一の発明に係る対話分析的データベースシステムに
おいて、前記データ管理手段が多次元データを表現する
各テーブルとそのスター・スキーマによりデータを運用
管理すると共に、前記拡張された対話型問合せ言語が対
話型の拡張SQLであることを特徴とする。
【0032】前記データ管理手段が多次元データを表現
する各テーブルとそのスター・スキーマによりデータを
運用管理すると共に、前記拡張された対話型問合せ言語
が対話型の拡張SQLであることにより、従来のROL
AP方式に基づいて、システムを構築できる。
【0033】前記課題を解決するために提供する本願第
三の発明に係る対話分析的データベースシステムは、本
願第二の発明に係る対話分析的データベースシステムに
おいて、前記多次元分析要求が、標準SQLの条件判定
に加えて前記隣接概念による連続した領域であることを
条件に前記テーブルのタプルをグループ化し集約する連
続集約要求を含むことを特徴とする。
【0034】隣接概念による連続した領域であることを
条件に前記テーブルのタプルをグループ化し集約する連
続集約要求を含むことにより、順序付き次元に関する連
続性を条件としてデータの集約が行える。
【0035】前記課題を解決するために提供する本願第
四の発明に係る対話分析的データベースシステムは、本
願第三の発明に係る対話分析的データベースシステムに
おいて、前記多次元分析要求が、前記連続集約要求によ
り生成された集約データに対し、ユーザ定義集約関数に
よりその集約値を求める要求を含むことを特徴とする。
【0036】連続集約要求により生成された集約データ
に対し、ユーザ定義集約関数によりその集約値を求める
要求を含むことにより、更に、柔軟で高度の分析が行え
る。
【0037】前記課題を解決するために提供する本願第
五の発明に係る対話分析的データベースシステムは、本
願第四の発明に係る対話分析的データベースシステムに
おいて、前記拡張SQLが、グループ化属性、集約属
性、範囲属性、派生属性、ファクトグループ参照属性の
5種類の属性を選択的に有するテーブル定義を有し、前
記分析結果管理要求が、前記集約結果を前記拡張SQL
で定義したテーブルとしてデータベースに格納し管理す
る要求を含むことを特徴とする。
【0038】分析結果管理要求が、前記集約結果を前記
拡張SQLで定義したテーブルとしてデータベースに格
納し管理する要求を含むことにより、新型のデータを従
来のテーブルのスタースキーマによる管理方式と平行し
て行え、変更の必要性が低減する。また、テーブルをマ
テリアライズド・ビューとして用意すれば、各種操作を
迅速に行える。
【0039】前記課題を解決するために提供する本願第
六の発明に係る対話的分析プログラムを記録した記録媒
体は、データを対話的かつ多次元分析的に運用管理する
ために対話型SQL(SQL非カーソル型)を解釈し実
行するプログラムを記録した対話的分析プログラムを記
録した記録媒体であって、対応する拡張SQLを解釈
し、順序付け可能属性(ordinal attrib
ute)を有する一以上の次元の順序によるレコードの
隣接概念に基づいてデータを集約し新たなデータとして
運用管理可能にするプログラムを記録したことを特徴と
する。
【0040】対応する対話型の拡張SQLを解釈し、順
序付け可能属性(ordinal attribut
e)を有する一以上の次元の順序によるレコードの隣接
概念に基づいてデータを集約し新たなデータとして運用
管理可能にするプログラムを記録したことにより、次元
の順序付け可能属性に基づく新たな分析手法並びにその
結果の運用管理を対話的に行える。
【0041】
【発明の実施の形態】以下に、本発明に係る対話分析的
データベースシステム及び対話的分析プログラムを記録
した記録媒体の一実施の形態における構成について図面
を参照して説明する。図1は、本発明に係る対話分析的
データベースシステム及び対話的分析プログラムを記録
した記録媒体の一実施の形態における構成を示すブロッ
ク図、図6は、本発明に係る対話分析的データベースシ
ステム及び対話的分析プログラムを記録した記録媒体の
一実施の形態における多次元分析要求を入力するために
ユーザが記述する拡張SQLの構文を示す図、図7は、
本発明に係る対話分析的データベースシステム及び対話
的分析プログラムを記録した記録媒体の一実施の形態に
おける拡張SQLのGROUP BY句、SUCH T
HAT句、HAVING句の構文を示す図、図8は、本
発明に係る対話分析的データベースシステム及び対話的
分析プログラムを記録した記録媒体の一実施の形態にお
けるファクトの集合を管理するファクトグループ参照属
性を有するステート・テーブルを示す図である。図27
乃至図29は、発明が解決しようとする課題でも用いた
例題データと本発明に係わるその集約データ表現である
テーブルである。本実施形態の対話分析的データベース
システムは、OLAP技術を利用したOLAPサーバシ
ステムであり、図1に示すように、拡張SQLが入力さ
れる対話型ユーザインタフェース1と、その構文を解釈
する問合せ処理手段2と、ユーザ定義集約関数処理手段
3と、データ管理手段4と、データベース5とによりな
る。そして、順序付き属性の次元軸においてタプルの集
合が連続して条件を満たすことをグループ化の条件とす
るかどうかを指定することができる問合せ言語として拡
張SQLを用意する。
【0042】本実施のOLAPサーバシステムで扱う問
合せ言語は、図 4の従来の拡張SQLのGROUPB
Y句をさらに拡張した図 6のSQLとする。GROU
PBY句、SUCH THAT句、HAVING句の構
文図も合わせて図 7に示す。図 7のextende
d clauseの部分が本発明で拡張した構文であ
る。図 7のexprおよびconditionは、そ
れぞれ標準SQLにおける式および条件式のシンタック
スと同じとする。またvaluableは図4で説明し
たグループ化変数である。γは{A、...、A
、...、B}の中の順序付き属性で構成され
る任意の部分集合を表し、このγの属性の次元軸上で連
続して条件を満たすタプルをグループ化する。また、連
続の定義にはVECTORとSCALARの二種類があ
り、このいずれか一方を指定する。VECTORの場合
は、γで指定したすべての属性に関して連続が成立する
タプルの集合でグループ化することを表し、SCALA
Rの場合は、γで指定した属性の順序で標準SQLのO
RDER BYを行った一次元軸上で連続が成立するタ
プルの集合でグループ化することを表す。GROUP
BY句でON句を用いなかった場合は、タプルの集合に
おいて連続して条件を満たすことを条件としたグループ
化は行われない。SELECT句のC、...、C
は派生属性であり、テーブルTの直接的な属性ではな
く、他の属性や外部の変数などから二次的に計算した値
を持つ属性である。
【0043】また、新型データに対して、従来型データ
に対するのと同等以上の操作性を得るために、既存の集
約関数をビルト・イン関数式として標準SQLの文に記
述する手段の他に、第一の手段で説明した拡張SQLの
SELECT句、SUCH THAT句、HAVING
句で、グループ化変数を用いたユーザ定義集約関数式を
記述できるようにセマンティクスを拡張する。グループ
化変数をR、ユーザ定義集約関数udf()としたと
き、各句における式の記述方法はR.udf()とな
る。udf()は0以上のパラメータを指定することが
可能であり、その関数が評価する対象は、Rによって限
定されるタプルの集合とする。関数udf()の評価前
と評価後のRのタプルの集合は異なり、R.udf()
の評価後の返却値はTrue、False、Unkno
wnのいずれかとする。SELECT句でR.ud
f()が用いられた場合、udf()によって限定され
たRのタプルが返却の対象となる。返却するタプルの属
性値を限定する場合は、R.udf().att1とい
うように、属性att1を指定することを可とする。S
UCH THAT句でR.udf()が用いられた場
合、R.udf()を評価することによって限定された
タプルの集合がRとなる。HAVING句でR.udf
()が用いられた場合、R.udf()を評価すること
によって限定されたタプルの集合をRとし、かつその評
価結果がTrueであるRのみを結果として残す。そし
て、ユーザ定義関数は、図1に示す本実施のOLAPサ
ーバシステムのユーザ定義集約関数処理手段3において
実装される。前記ユーザ定義集約関数の式を含むSQL
は問合せ処理手段2によって解釈され、問合せ処理手段
2によって前記ユーザ定義関数が呼び出され、実行され
る。
【0044】更に、新型データの管理手段として、まず
グループ化されたタプルの集合とそれに対する集約デー
タを一つのタプルとするテーブルを導入する。グループ
化されたタプルの集合とそれに対する集約データを一つ
のタプルとするテーブルの例は、図27のテーブルに対
してある一定の条件でグループ化し、そのグループ化し
たタプルの集合とそれの集約データを一つのタプルに対
応付けた図28、図29のテーブルである。本実施形態
では、図27のようにグループ化の対象となるテーブル
をファクト・テーブルと呼び、図28、図29のように
グループ化後の集約データを含むテーブルをステート・
テーブルと呼ぶことにする。またファクト・テーブルに
おけるタプルをファクトと呼び、ステート・テーブルに
おけるタプルをステートと呼ぶことにする。前記ファク
ト・テーブルは、従来の技術で説明したスター・スキー
マにおけるファクト・テーブルと同じ意味と構造を持つ
ものとする。ステート・テーブルは本実施のOLAPサ
ーバシステムが扱うスター・スキーマにおいて新しく導
入するテーブルである。ステートは以下の5種類のうち
いくつかの種類の属性を持つものとする。 1)グループ化属性(同じ値を持つファクト同士でグル
ープ化するために指定される属性。SQLでいえば、G
ROUP BY句で指定される属性)、 2)集約属性(グループ化したファクトの集合から求め
られる集約値を格納する属性)、 3)範囲属性(集約属性の一種、グループ化したファク
トの集合に対する、順序付き属性の最大値または最小値
を格納する属性)、 4)派生属性(上記の1)〜3)の属性、または外部の
変数などから二次的に計算した値を格納する属性)、 5)ファクトグループ参照属性(グループ化したファク
トのRIDの集合を管理する属性)。 ステート・テーブルは、本発明のCREATE STA
TE文を用いて定義する。CREATE STATE文
は、標準SQLのCREATE VIEW文の構文と以
下の点を除いて基本的に同じとする。 1) CREATE VIEWのVIEWという予約語
をSTATEに変更する 2) CREATE STATEのAS句以下の副問合
せ部で、本発明の拡張SQL(図6、図7)を用いる。 ステート・テーブルの属性は、CREATE STAT
E文のSELECT句で式として記述される属性であ
る。ただしファクトグループ参照属性については、本実
施形態ではSELECT句で明示せず、FROM句で指
定したファクト・テーブルと同名の属性として暗黙のう
ちに有することとする。またステート・テーブルは、標
準SQLによって生成されるビューと異なり、論理的な
仮想テーブルではなく物理的な実テーブルとして生成さ
れるマテリアライズド・ビューとする。よってステート
・テーブルのタプル、すなわちステートにはRIDが付
加され、RIDによってステートを一意に特定すること
が可能である。グループ化したファクトの集合を管理す
るファクトグループ参照属性についてさらに詳しく説明
する。ステートとファクトの間には、グループ化による
1対多の関係がある。従来のスター・スキーマに基づく
ディメンションとファクトの1対多の関係は、ビットマ
ップ。インデックスとビットマップ・ジョイン・インデ
ックスによって保持される。
【0045】しかし、ファクトのグループ化によってス
テートを作成する本実施の方法では、前記ビットマッ
プ.インデックスとビットマップ・ジョイン・インデッ
クスを利用しないので、これらインデックスによってそ
の1対多の関係を保持することはできない。そこで本実
施のステートの構造として、グループ化したファクトの
RIDの集合を管理するファクトグループ参照属性を用
意する。
【0046】前記ステートの構造に関するイメージを図
8に示す。図8の右側にあるファクト・テーブルFac
t1は通常の属性とRIDで構成され、そのデータとし
て4つのタプルがあることを示している。RIDはユー
ザによって明確に用意される場合もあるし、DBMSに
よって暗黙のうちに用意される場合もある。図8の左側
にあるステート・テーブルState1は通常の属性
と、ファクトのRIDの集合を管理するファクトグルー
プ参照属性とで構成され、そのデータとして2つのタプ
ルがあることを示している。ファクトグループ参照属性
の名前は、対象とするファクトのテーブル名と同名のF
act1である。この属性Fact1の型(type)
は、1999年版のISO/IEC 9075:199
9の標準SQLの用語を用いて説明すれば、ファクト・
テーブルのタプルのRIDを参照するReferenc
e type(REF型)のデータのCollecti
on type(コレクション型)となる。
【0047】本実施の図1に示すOLAPサーバシステ
ムでは、ステート・テーブルのステートを実際に作成す
る際に、グループ化によって集めたファクトのRIDを
データ管理手段4がファクトグループ参照属性の要素と
して一つずつ挿入していく。そしてそのステートがデー
タベース5に格納される。本実施形態のステートの構造
を有することにより、ステートを構成するファクトの集
合をRIDによって直接的に求めることが可能となる。
本実施形態ではこの操作をドリル・ダウンと呼ぶことに
する。
【0048】以上の拡張SQLによって順序付き属性の
次元軸における連続した領域での条件判定によってタプ
ルをグループ化する多次元分析要求を記述することが可
能となり、上記拡張SQLを用いたデータ定義、データ
操作の要求を対話型SQLとして入上記対話型ユーザイ
ンタフェース1に入力することとなる。そして、入力さ
れたSQL文は問合せ処理手段2によって解釈され、そ
の解釈を元にしてデータ管理手段4がデータベース5に
対してテーブルやデータを作成したり、検索したりす
る。以上の流れに関して、以下に5つの動作形態を説明
する。
【0049】次に、本発明に係る対話分析的データベー
スシステム及び対話的分析プログラムを記録した記録媒
体の一実施の形態における動作について図面を参照して
以下に説明する。 (動作形態1)ある次元軸において連続して条件を満た
すタプルの集合をグループ化する動作形態を、図9、図
10、図11、図12に基づいて説明する。図9は、標
準SQLによる多次元分析要求の記述例を示す図、図1
0は、従来の拡張SQLによる多次元分析要求の記述例
を示す図、図11は、図2および図3で示される多次元
データモデルに従う多次元データで、ProdNo=0
01の1997〜1999年のQuantityの値を
示すグラフの図、図12は、本発明に係わる拡張SQL
による多次元分析要求の記述例を示す図である。まず、
図3に示すスター・スキーマに従う多次元データにおい
て、次の多次元分析要求を実行する従来の対照例を示
す。「Fact tableで管理されるQuanti
tyに関して。各Productの各Yearごとに、
その年のQuantityの平均値を上回っていたQu
antityの平均値を求めよ」この分析要求を標準S
QLで表現した例を図9に示す。また、図4で示した文
献[2]、文献[3]で提案されている従来の拡張SQ
Lによって表現すると図10のようになる。図3のスタ
ー・スキーマに従うデータの一部として、図11に示す
ような「ProdNoが001であるProductに
関して、1997年から1999年におけるQuant
ityの値」がデータベースに格納されているとする。
この図 11のデータに対して図9、図10で示したS
QLを適用すると、結果として 1997年のQuantityの平均値を上回っていた
a、bの領域上でのQuantityの平均値 1998年のQuantityの平均値を上回っていた
c、dの領域上でのQuantityの平均値 1999年のQuantityの平均値を上回っていた
e、fの領域上でのQuantityの平均値 の3つのデータが得られることになる。以上の多次元分
析要求を少し変更して、以下の多次元分析要求について
の適用を考える。「Fact tableで管理される
Quantityに関して、各Productの各Ye
arごとに、その年のQuantityの平均値を連続
して上回っていた期間ごとのQuantityの平均値
を求めよ」発明が解決しようとする課題で述べたよう
に、従来の標準SQLまたは拡張SQLでは、この時間
軸上で連続して条件を満たすタプルの集合に対する集約
計算を対話型として実行することは不可能である。ただ
し、SQLのカーソルを用いて手続き的に処理を記述
し、それをホスト言語に埋め込みコンパイルして実行す
れば前記要求の実現は可能であり、従来はこのような方
法で行われてきた。
【0050】本発明の拡張SQLを用いて前記多次元分
析要求を表現すると、図 12のようになる。図10の
従来の拡張SQLと異なる点は、GROUP BY句に
「ON Month、 Date SCALAR」を加
えてMonth、Dateの時間軸上で連続してSUC
H THAT句の条件を満たすタプルの集合をグループ
化する点と、SELECT句にグループ化したタプルの
時間軸上(ON Month、Date SCALA
R)での範囲を表す属性(範囲属性)、StartDa
teとEndDateを加えた点である。この図12の
拡張SQL文が本実施の図1に示すOLAPサーバシス
テムの対話型ユーザインタフェース1を介してユーザに
よって与えられる。また、図1の問合せ処理手段2によ
って、標準SQLおよび図4の従来の拡張SQLの構文
に対する解析に加え、本発明の拡張SQLの構文に対す
る解析が行われる。すなわち、拡張部分である「ON
Month、 Date SCALAR」の宣言によっ
て、GROUP BY Fact、ProdNo、 D
ate、Yearでグループ化したタプルの集合をMo
nth、DateのSCALARの順序で、すなわち標
準SQLのORDER BYを行った一次元軸上で順序
付けし、そしてSUCH THAT句での条件が連続し
てTrueとなるタプルの集合ごとにグループ化する。
グループ化変数Rで表されるタプルの集合は、GROU
P BY Fact。ProdNo、 Date。Ye
arでグループ化された各グループのタプルの集合の中
で、AVG(Quantity)を超えるQuanti
tyを持つタプルのみで構成される。
【0051】また、範囲属性のStartDate、E
ndDateを表すそれぞれのDateKeyは、グル
ープ化変数Rの中で、最小(最大)のMonthを持つ
タプルで一時グループ化し、さらにその中で最小(最
大)のDateを持つタプルでグループ化したタプルの
属性値となる。図11のデータが格納される本実施のO
LAPサーバシステムに対して図12で示した本発明の
拡張SQLを入力すると、結果として、 ・1997年のQuantityの平均値を上回ってい
たaの領域上でのQuantityの平均値 ・1997年のQuantityの平均値を上回ってい
たbの領域上でのQuantityの平均値 ・1998年のQuantityの平均値を上回ってい
たcの領域上でのQuantityの平均値 ・1998年のQuantityの平均値を上回ってい
たdの領域上でのQuantityの平均値 ・1999年のQuantityの平均値を上回ってい
たeの領域上でのQuantityの平均値 ・1999年のQuantityの平均値を上回ってい
たfの領域上でのQuantityの平均値 の6つのデータが得られることになる。さらにそれぞれ
のグループにおいて、範囲属性StartDate、E
ndDateによってその時間間隔に関するデータも得
られる。
【0052】(動作形態2)ユーザ定義集約関数を用い
た分析例を示す。図13は、ユーザ定義集約関数を利用
した拡張SQLによる多次元分析要求の記述例を示す
図、図14は、時間軸上で連続してQuantityが
単調増加していることを条件としてグループ化されたタ
プルの集合を表すグラフの図である。動作形態1で挙げ
た多次元分析要求を少し変更して、以下の多次元分析要
求についての適用を考える。「Fact tableで
管理されるQuantityに関して。各Produc
tの各Yearごとに、Quantityの値が連続し
て単調増加している期間ごとのQuantityの平均
値を求めよ」本実施形態では、ある属性値がある次元軸
上で連続して単調増加していることを条件としてタプル
の集合を作成するユーザ定義集約関数ascendan
t()が用意されているものと仮定する。関数asce
ndant()は単調増加する対象となる属性名を入力
パラメータとして受け取り、本実施の図1のOLAPサ
ーバシステムのユーザ定義集約関数処理手段3で実装さ
れ、問合せ処理手段2によって呼び出され実行される。
【0053】本実施の拡張SQLを用いて前記多次元分
析要求を表現すると、図13のようになる。動作形態1
で挙げた図12と異なる点は、SUCH THAT句の
グループ化の条件式を「R.ascendant(Qu
antity)」とした点である。「GROUP BY
Fact、ProdNo、 Date、Year」で
グループ化された各タプルの集合はグループ化変数Rに
よって表されるが、その各タプルの集合を対象としてユ
ーザ定義集約関数ascendant(Quantit
y)が評価される。加えて、図14に示すようにaから
gまでのグループが作成され、これら7つのグループが
新たにグループ化変数Rによって表されることとなる。
【0054】以上のように、本実施のOLAPサーバシ
ステムでは、タプルの集合に対してより複雑な処理や条
件判定を行うユーザ定義の集約関数を組み込むことによ
り、その集約関数を用いてさらに高度な多次元分析要求
を処理することが可能となる。
【0055】(動作形態3)ステート・テーブルの宣言
と管理の動作形態を示す。図15は、図12の拡張SQ
Lをステート・テーブルとして定義した例を示す図、図
16は、図3の既存のスター・スキーマに変更を加える
ことなく図15のステート・テーブルSeqAVG S
tateを追加したスキーマの図である。図12で示し
た本実施の拡張SQLによって取得されるタプルの集合
をステートとして管理するには、本実施のCREATE
STATE文を用いてステート・テーブルを定義し、
それを対話型ユーザインタフェースを通して入力するこ
とになる。ステート・テーブルの名前をSeq AVG
Stateとし、その副問合せ部(AS句)に図12
の拡張SQLを記述する(図15)。図3のスター・ス
キーマとそのデータが既に本実施のOLAPサーバシス
テムのデータベース5の中に存在したとして、図15の
ステート・テーブルが対話型ユーザインタフェース1を
通して入力された場合、そのステート・テーブルのデー
タベースにおける位置付けは図16に示す通りとなる。
ステート・テーブルSeq AVG Sateは、ファ
クト・テーブルとは別の物理的な格納構造を持つ。ま
た、既存のディメンション・テーブルのProduct
とDateをこのSeq AVG Stateのディメ
ンションとして利用している。よって前記ディメンショ
ン・テーブルのProductとDateが有する集約
階層を表す属性に対するビットマップ・インデックスを
そのまま利用することができる。また、Seq AVG
Stateと前記ディメンション・テーブルとの間の
ビットマップ・ジョイン・インデックスに関しては、新
規に作成することとなる。図16のSeq AVG S
tateとファクト・テーブルとの間のmember−
ofの関係は、ステートとファクトの1対多の関係を表
している。具体的には、ステート・テーブルの定義で与
えたグループ化の条件に従ってグループ化したファクト
の集合を、RIDによってステートが管理している関係
を表している。これにより、ステートからファクトへの
ドリル・ダウンを直接的に行うことが可能となる。
【0056】(動作形態4)ステート・テーブルの追加
定義の実施例を示す。図17は、ステート・テーブルS
eq AVG Stateを利用して別のステート・テ
ーブルSeq AVG D Stateを定義する記述
例を示す図、図18は、ステート・テーブルSeq A
VG D Stateを利用して新たにCityとSa
lespersonの属性を加えたステート・テーブル
City SalesP Seq AVG D Sta
teを定義する記述例を示す図、図19は、テート・テ
ーブルCity SalesP Seq AVG D
State を利用してQuantityの月平均値を
超えるタプルでグループ化するステート・テーブルCi
ty SalesP Seq MAVG D Stat
eを定義する記述例を示す図である。ステート・テーブ
ルSeq AVG Stateを利用して、別のステー
ト・テーブルSeq AVG D Stateを定義す
る。すなわち、Seq AVG Stateに新たな属
性Duration(期間)を加えたステートである
(図17)。さらにステート・テーブルを追加定義す
る。図17で定義されたステート・テーブルSeq A
VG D Stateを利用したステート・テーブルC
itySalesP Seq AVG D State
を定義する。すなわち、CityごとSalesper
sonごとのSeq AVG D Stateを管理す
るステート・テーブルである。定義は図18に示す通り
である。さらにステート・テーブルを追加定義する。グ
ループ化の方法で、Quantityの年平均値を超え
るタプルでグループ化するのではなく、月平均の単位で
タプルの集合を作成するようにする(図19)。
【0057】以上のステート・テーブルの定義(図1
7、図18、図19)を本実施のOLAPサーバシステ
ムに入力したとする。その結果、データベース5では、
図20に示すスキーマが展開される。図20に示すテー
ブルがステート・テーブルである。ステート・テーブル
の間の白抜き三角の矢印はステート・テーブル間の依存
関係を表している。すなわち矢印の先のステートを利用
して、矢印の元のステートが作成される。本実施のOL
APサーバシステムのデータ管理手段4はこのbase
d−onの関係を管理し、矢印の先のステートから矢印
の元のステートの作成、および更新の反映を行う。
【0058】(動作形態5)ステート・テーブルからフ
ァクト・テーブルのファクトの集合を特定するドリル・
ダウン操作の実施例を示す。図20は、図16の既存の
スキーマに変更を加えることなく図17、図18、図1
9のステートテーブルを追加したスキーマの図、図21
は、ステート・テーブルSeq AVG Stateの
中でもっとも平均値の高いステートの詳細データを返却
する本実施の拡張SQLによる問合せの記述例を示す図
である。前述の多次元分析要求を発展させて、以下の要
求について考える。「Fact tableで管理され
るQuantityに関して。各Productの各Y
earごとに、その年のQuantityの平均値を連
続して上回っていた期間ごとのQuantityの平均
値を求め、そのもっとも平均値の高いグループの詳細を
リストせよ」前記多次元分析要求のうち下線を引いてい
ない部分は、前述の図15で示したステート・テーブル
Seq AVG Stateによって既に実現されてい
る。従って、このSeq AVG Stateを用い
て、もっとも平均値の高いステートを求めることができ
る。
【0059】次に、その求めたステートを構成したファ
クト・テーブルのファクトを求めなければならない。ス
テートSeq AVG Stateには、そのステート
・テーブルの定義で宣言したFrom句の各テーブルの
タプルの集合を管理する属性FactとDateを暗黙
のうちに有することにする。その暗黙の各属性には、グ
ループ化の対象となったタプルを一意に識別するRID
を指すREF型の値の集合が格納される。この暗黙の属
性を用いてタプルの属性値を参照するには、ポインタ表
記法の−>を用いる。ここで、前記−>はSQL:19
99で述べられている表記法であるが、DBMSベンダ
ーによっては必ずしもこの表記法を採用しているわけで
はない。ドット表記であったり、DEREF()などの
特別な関数表記法を用いたりさまざまである。本実施の
実装方法では、各DBMSベンダーの表記法に従うもの
とする。前記暗黙の属性を用いて前記多次元分析要求を
満足させるSQLを記述すると、図21となる。図11
のデータを格納する本実施のOLAPサーバシステムに
対して図21のSQLを入力すると、結果として図11
のd(もっとも平均値の高いグループ)の領域上の詳細
データが返却される。
【0060】(動作形態6)ステート・テーブルのマー
ジとジョインの実施例を示す。図22は、ステート・テ
ーブルSeq AVG Stateの中のステートで各
Yearごとにマージを行う操作の記述例を示す図、図
23は、ステート・テーブルCity SalesP
Seq MAVG D Stateの中で各Yearご
とに第一四半期(4〜6月)でステートをマージする操
作の記述例を示す図、図24は、図28の高熱状態テー
ブルで平均体温が37。5℃を超える高温状態同士をマ
ージする操作の記述例を示す図、図25は、図29の高
血圧状態テーブルで、同じ患者番号でかつ高熱状態の期
間と高血圧状態の期間が重なっている状態同士をジョイ
ンする操作の記述例を示す図である。図30、図31
は、マージ操作後、ジョイン操作後のステート・テーブ
ルを示す図である。本実施のOLAPサーバシステムで
は、ステートのマージ操作とステートのマージ操作とジ
ョイン操作を可能とする。マージ操作とは、単一のステ
ート・テーブルにおいて、マージの対象となる複数のス
テートからマージ後の一つのステートを作成することで
あり、マージ対象の複数のステートが管理するそれぞれ
のファクトの集合の和集合を一つのグループとしたステ
ートを作成し、かつそのグループから集約属性、範囲属
性、派生属性を再計算することである。図22にステー
トのマージ操作の例を示す。図22では、同じYear
の値を持つステート同士をマージして一つのステートを
作成し、そのステートの値を返却するものである。グル
ープ化変数が指すタプルがステートである場合は、各ス
テートの元となっているファクトの集合の和集合を求
め、その和集合によって一つのステートを作成する。こ
のとき、そのステートの各属性値は再計算される。例え
ばステート・テーブルSeq AVG Stateに
は、図11で示されるようなa、b、c、d、e、fの
6つのステートが存在したとする。図22のSQLによ
り、各Yearごとに(a、b)、(c、d)、(e、
f)の3つのステートにマージされることとなる。ま
た、SELECT R.*のアスタリスク*に含まれる
属性のうち、集約属性であるSeq AVG Qty、
範囲属性であるStartDate、EndDateが
この(a、b)、(c、d)、(e、f)の新たなグル
ープのタプルの集合を元にして再計算される。図23の
SQLは、ステート・テーブルCity SalesP
Seq MAVG D Stateのステートに対
し、各Yearごとの第一四半期(4〜6月)でマージ
する例である。R.*のアスタリスク*に含まれるグル
ープ化属性Monthは、特別な定数値であるALLを
出力する(文献[3])。
【0061】図28で表されるステート・テーブルに対
するマージ操作の例を示す。ステート・テーブル高熱状
態に対して、平均体温が37.5℃を超えるステート同
士をマージするSQLの例は図24であり、その実行結
果は図30に示す通りである。次にジョイン操作につい
て説明する。ジョイン操作とは、複数のステート・テー
ブルを通常のSQLと同様のジョインを行った後、各ス
テートと関係するファクトの和集合を新たなグループと
してステートを作成することである。このときその新た
なグループを元にしてステートの集約属性、範囲属性、
派生属性の再計算も行われる。
【0062】図28、図29で表されるステート・テー
ブルをジョインする例を示す。双方のステート・テーブ
ルの各ステートが同じ患者番号を持ち、かつステート同
士の期間が重なっていることを条件としてジョインSQ
Lの例は図25であり、その実行結果は図31に示す通
りである。
【0063】
【発明の効果】本発明のOLAPサーバシステムを多次
元分析に利用し得られる第一の効果は、対話型(SQL
非カーソル型)の多次元要求で、時間や座標などの順序
付け可能属性の値の連続した領域での条件判定によって
タプルをグループ化しその集約値を求めることが可能に
なったことである。第二の効果は、タプルの集合に対し
てより複雑な処理や条件判定を行うユーザ定義の集約関
数を用意に組み込むことが可能となり、その集約関数を
用いてさらに高度な多次元分析要求を処理することが可
能となったことである。第三の効果は、第一および第二
の効果で述べたグループ化の方法に従って集約した結果
を、グループ化属性、集約属性、範囲属性、派生属性、
ファクトグループ参照属性の5種類の属性を選択的に有
するテーブルを多次元分析の事前に用意し、その結果、
多次元分析処理の応答時間を短縮することが可能になっ
たことである。第四の効果は、第三の効果で述べたテー
ブルのタプルからグループ化前のタプルの集合を求める
ドリル・ダウンの操作で、前記タプルの集合のRIDを
前記テーブルの各タプルに静的に保持させることによっ
て直接的に求めることを可能にしたことである。第五の
効果は、第三の効果で述べたテーブルの定義が、既存の
スター・スキーマに変更を与えずに追加のみで拡張する
ことができることである。第六の効果は、第三の効果で
述べたテーブルのタプルに対する操作として、従来のス
ター・スキーマに基づくロールアップやドリル・ダウン
に加えて、マージおよびジョインの操作を加えることが
できたことである。
【0064】
【図面の簡単な説明】
【図1】本発明に係る対話分析的データベースシステム
及び対話的分析プログラムを記録した記録媒体の一実施
の形態における構成を示すブロック図である。
【図2】文献[1]より引用したMultidimen
sional dataを示す図である。
【図3】文献[1]より引用したStar Schem
aを示す図である。
【図4】従来の技術を説明するための、文献[2]、
[3]より引用した(一部修正を加えた)拡張SQLの
構文を示す図である。
【図5】本発明に係わる多次元データを二次元上の連続
領域での条件判定によってグループ化する例を示した図
である。
【図6】本発明に係る対話分析的データベースシステム
及び対話的分析プログラムを記録した記録媒体の一実施
の形態における多次元分析要求を入力するためにユーザ
が記述する拡張SQLの構文を示す図である。
【図7】本発明に係る対話分析的データベースシステム
及び対話的分析プログラムを記録した記録媒体の一実施
の形態における拡張SQLのGROUP BY句、SU
CH THAT句、HAVING句の構文を示す図であ
る。
【図8】本発明に係る対話分析的データベースシステム
及び対話的分析プログラムを記録した記録媒体の一実施
の形態におけるファクトの集合を管理するファクトグル
ープ参照属性を有するステート・テーブルを示す図であ
る。
【図9】動作形態1において対照のために供される従来
技術の標準SQLによる多次元分析要求の記述例を示す
図である。
【図10】動作形態1において対照のために供される従
来技術の拡張SQLによる多次元分析要求の記述例を示
す図である。
【図11】図2および図3で示される多次元データモデ
ルに従う多次元データで、ProdNo=001の19
97〜1999年のQuantityの値を示すグラフ
の図である。
【図12】動作形態1における拡張SQLによる多次元
分析要求の記述例を示す図である。
【図13】動作形態2におけるユーザ定義集約関数を利
用した拡張SQLによる多次元分析要求の記述例を示す
図である。
【図14】動作形態2における時間軸上で連続してQu
antityが単調増加していることを条件としてグル
ープ化されたタプルの集合を表すグラフの図である。
【図15】動作形態3における図12の拡張SQLをス
テート・テーブルとして定義した例を示す図である。
【図16】動作形態3における図3の既存のスター・ス
キーマに変更を加えることなく図15のステート・テー
ブルSeq AVG Stateを追加したスキーマの
図である。
【図17】動作形態4におけるステート・テーブルSe
q AVG Stateを利用して別のステート・テー
ブルSeq AVG D Stateを定義する記述例
を示す図である。
【図18】動作形態4におけるステート・テーブルSe
q AVG D Stateを利用して新たにCity
とSalespersonの属性を加えたステート・テ
ーブルCity SalesP Seq AVG D
Stateを定義する記述例を示す図である。
【図19】動作形態4におけるテート・テーブルCit
y SalesP Seq AVG D State
を利用してQuantityの月平均値を超えるタプル
でグループ化するステート・テーブルCity Sal
esP SeqMAVG D Stateを定義する記
述例を示す図である。
【図20】動作形態5における図16の既存のスキーマ
に変更を加えることなく図17、図18、図19のステ
ートテーブルを追加したスキーマの図である。
【図21】動作形態5におけるステート・テーブルSe
q AVG Stateの中でもっとも平均値の高いス
テートの詳細データを返却する本発明の拡張SQLによ
る問合せの記述例を示す図である。
【図22】動作形態6におけるステート・テーブルSe
q AVG Stateの中のステートで各Yearご
とにマージを行う操作の記述例を示す図である。
【図23】動作形態6におけるステート・テーブルCi
ty SalesP Seq MAVG D Stat
eの中で各Yearごとに第一四半期(4〜6月)でス
テートをマージする操作の記述例を示す図である。
【図24】動作形態6における図28の高熱状態テーブ
ルで平均体温が37.5℃を超える高温状態同士をマー
ジする操作の記述例を示す図である。
【図25】動作形態6における図29の高血圧状態テー
ブルで、同じ患者番号でかつ高熱状態の期間と高血圧状
態の期間が重なっている状態同士をジョインする操作の
記述例を示す図である。
【図26】本発明の例題のデータとして用いる、二次元
軸X、Yとその上のmeshの関係を表すテーブルを示
す図である。
【図27】本発明の例題のデータとして用いる、患者の
体温−血圧テーブルを示す図である。
【図28】本発明の例題のデータとして用いる、高熱状
態テーブルを示す図である。
【図29】本発明の例題のデータとして用いる、高血圧
状態テーブルを示す図である。
【図30】動作形態6の結果を示す、マージ操作後のス
テート・テーブルを示す図である。
【図31】動作形態6の結果を示す、ジョイン操作後の
ステート・テーブルを示す図である。
【符号の説明】
1 対話型ユーザインタフェース 2 問合せ処理手段 3 ユーザ定義集約関数処理手段 4 データ管理手段 5 データベース

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】対話型ユーザインタフェースと、このイン
    ターフェースで使用される対話型問合せ言語と、この問
    合せ言語の構文を解釈する問合せ処理手段と、前記問合
    せ言語の構文解釈に従ってデータを運用管理するデータ
    管理手段と、前記データを格納するデータベースとを備
    え、データを対話的かつ多次元分析的に運用管理するO
    LAPサーバシステムである対話分析的データベースシ
    ステムにおいて、順序付け可能属性を有する一以上の次
    元の順序による多次元データの隣接概念に基づく多次元
    分析要求とその結果を管理する分析結果管理要求とを記
    述する拡張された対話型問合せ言語と、この拡張された
    対話型問合せ言語の構文を解釈する拡張された問合せ処
    理手段と、この構文解釈に従ってデータを運用管理する
    データ管理手段とを備えたことを特徴とする対話分析的
    データベースシステム。
  2. 【請求項2】前記データ管理手段が多次元データを表現
    する各テーブルとそのスター・スキーマによりデータを
    運用管理すると共に、前記拡張された対話型問合せ言語
    が対話型の拡張SQLであることを特徴とする請求項1
    に記載の対話分析的データベースシステム。
  3. 【請求項3】前記多次元分析要求が、標準SQLの条件
    判定に加えて前記隣接概念による連続した領域であるこ
    とを条件に前記テーブルのタプルをグループ化し集約す
    る連続集約要求を含むことを特徴とする請求項2に記載
    の対話分析的データベースシステム。
  4. 【請求項4】前記多次元分析要求が、前記連続集約要求
    により生成された集約データに対し、ユーザ定義集約関
    数によりその集約値を求める要求を含むことを特徴とす
    る請求項3に記載の対話分析的データベースシステム。
  5. 【請求項5】前記拡張SQLが、グループ化属性、集約
    属性、範囲属性、派生属性、ファクトグループ参照属性
    の5種類の属性を選択的に有するテーブル定義を有し、
    前記分析結果管理要求が、前記集約結果を前記拡張SQ
    Lで定義したテーブルとしてデータベースに格納し管理
    する要求を含むことを特徴とする請求項4に記載の対話
    分析的データベースシステム。
  6. 【請求項6】データを対話的かつ多次元分析的に運用管
    理するために対話型SQL(SQL非カーソル型)を解
    釈し実行するプログラムを記録した対話的分析プログラ
    ムを記録した記録媒体であって、対応する拡張SQLを
    解釈し、順序付け可能属性を有する一以上の次元の順序
    によるレコードの隣接概念に基づいてデータを集約し新
    たなデータとして運用管理可能にするプログラムを記録
    したことを特徴とする対話的分析プログラムを記録した
    記録媒体。
JP2000185484A 2000-06-20 2000-06-20 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体 Pending JP2002007435A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000185484A JP2002007435A (ja) 2000-06-20 2000-06-20 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000185484A JP2002007435A (ja) 2000-06-20 2000-06-20 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2002007435A true JP2002007435A (ja) 2002-01-11

Family

ID=18685799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000185484A Pending JP2002007435A (ja) 2000-06-20 2000-06-20 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2002007435A (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006065846A (ja) * 2004-08-24 2006-03-09 Microsoft Corp 部分マテリアライズドビュー
JP2007528075A (ja) * 2004-03-08 2007-10-04 マイクロソフト コーポレーション データに関数を適用した結果に対する構造化インデックス
US7499944B2 (en) 2005-05-16 2009-03-03 International Business Machines Corporation Method and apparatus for processing a dimension table and deriving a hierarchy therefrom
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
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
US7895191B2 (en) 2003-04-09 2011-02-22 International Business Machines Corporation Improving performance of database queries
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
JP2013535049A (ja) * 2010-06-28 2013-09-09 ユニバーシティー オブ カルカッタ データウェアハウスに対するオンライン分析処理(olap)のオペレーションの最適化された順序付けのためのハイパー格子モデル
WO2017090475A1 (ja) * 2015-11-25 2017-06-01 日本電気株式会社 情報処理システム、関数作成方法および関数作成プログラム
JP2021511582A (ja) * 2018-01-16 2021-05-06 オラクル・インターナショナル・コーポレイション Sqlクエリプランを最適化するための次元コンテキスト伝搬技術
US11514062B2 (en) 2017-10-05 2022-11-29 Dotdata, Inc. Feature value generation device, feature value generation method, and feature value generation program
US11727203B2 (en) 2017-03-30 2023-08-15 Dotdata, Inc. Information processing system, feature description method and feature description program

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US7895191B2 (en) 2003-04-09 2011-02-22 International Business Machines Corporation Improving performance of database queries
JP2007528075A (ja) * 2004-03-08 2007-10-04 マイクロソフト コーポレーション データに関数を適用した結果に対する構造化インデックス
KR101022929B1 (ko) 2004-03-08 2011-03-16 마이크로소프트 코포레이션 데이터에 대한 함수 적용의 결과에 대한 구조화된 인덱스
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
JP2006065846A (ja) * 2004-08-24 2006-03-09 Microsoft Corp 部分マテリアライズドビュー
US7499944B2 (en) 2005-05-16 2009-03-03 International Business Machines Corporation Method and apparatus for processing a dimension table and deriving a hierarchy therefrom
JP2013535049A (ja) * 2010-06-28 2013-09-09 ユニバーシティー オブ カルカッタ データウェアハウスに対するオンライン分析処理(olap)のオペレーションの最適化された順序付けのためのハイパー格子モデル
US9002782B2 (en) 2010-06-28 2015-04-07 University Of Calcutta Hyper-lattice model for optimized sequencing of online analytical processing (OLAP) operations on data warehouses
WO2017090475A1 (ja) * 2015-11-25 2017-06-01 日本電気株式会社 情報処理システム、関数作成方法および関数作成プログラム
JPWO2017090475A1 (ja) * 2015-11-25 2018-09-20 日本電気株式会社 情報処理システム、関数作成方法および関数作成プログラム
US10885011B2 (en) 2015-11-25 2021-01-05 Dotdata, Inc. Information processing system, descriptor creation method, and descriptor creation program
JP7098327B2 (ja) 2015-11-25 2022-07-11 ドットデータ インコーポレイテッド 情報処理システム、関数作成方法および関数作成プログラム
US11727203B2 (en) 2017-03-30 2023-08-15 Dotdata, Inc. Information processing system, feature description method and feature description program
US11514062B2 (en) 2017-10-05 2022-11-29 Dotdata, Inc. Feature value generation device, feature value generation method, and feature value generation program
JP2021511582A (ja) * 2018-01-16 2021-05-06 オラクル・インターナショナル・コーポレイション Sqlクエリプランを最適化するための次元コンテキスト伝搬技術
JP7273045B2 (ja) 2018-01-16 2023-05-12 オラクル・インターナショナル・コーポレイション Sqlクエリプランを最適化するための次元コンテキスト伝搬技術

Similar Documents

Publication Publication Date Title
JP7273045B2 (ja) Sqlクエリプランを最適化するための次元コンテキスト伝搬技術
US8108399B2 (en) Filtering of multi attribute data via on-demand indexing
US7716167B2 (en) System and method for automatically building an OLAP model in a relational database
US7171399B2 (en) Method for efficient query execution using dynamic queries in database environments
US20200356568A1 (en) Pre-Emptive Database Processing For Performance Enhancement In A Hybrid Multi-Cloud Database Environment
US6947934B1 (en) Aggregate predicates and search in a database management system
JP5242875B2 (ja) 多次元データベースおよび統合集約サーバ
US8041708B2 (en) Optimizing execution of database queries containing user-defined functions
US20160292167A1 (en) Multi-system query execution plan
US8135698B2 (en) Techniques for representing relationships between queries
US9405812B2 (en) Systems and methods for providing performance metadata in interest-driven business intelligence systems
US20060116999A1 (en) Sequential stepwise query condition building
US20130238551A1 (en) Interest-Driven Business Intelligence Systems and Methods of Data Analysis Using Interest-Driven Data Pipelines
JPH01194028A (ja) データベース処理方法および装置
JP2002007435A (ja) 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体
KR20040005889A (ko) 데이터 처리 시스템에서 연속 최적화를 사용한 분류가능한 데이터 세트의 순서 정렬
CN103631911A (zh) 基于数组存储和向量处理的olap查询处理方法
US6678686B1 (en) Method and apparatus for evaluating index predicates on complex data types using virtual indexed streams
Han et al. Scatter-gather-merge: An efficient star-join query processing algorithm for data-parallel frameworks
CN113032427B (zh) 一种用于cpu和gpu平台的向量化查询处理方法
US7072897B2 (en) Non-additive measures and metric calculation
Song et al. Approximate calculation of window aggregate functions via global random sample
US7958160B2 (en) Executing filter subqueries using a parallel single cursor model
Yerneni et al. Fusion queries over internet databases
CN107480220B (zh) 一种基于在线聚集的快速文本查询方法