Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4159099B2 - 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム - Google Patents
[go: Go Back, main page]

JP4159099B2 - 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム - Google Patents

次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム Download PDF

Info

Publication number
JP4159099B2
JP4159099B2 JP2005143319A JP2005143319A JP4159099B2 JP 4159099 B2 JP4159099 B2 JP 4159099B2 JP 2005143319 A JP2005143319 A JP 2005143319A JP 2005143319 A JP2005143319 A JP 2005143319A JP 4159099 B2 JP4159099 B2 JP 4159099B2
Authority
JP
Japan
Prior art keywords
dimension
hierarchy
information
column
dimension table
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.)
Expired - Fee Related
Application number
JP2005143319A
Other languages
English (en)
Other versions
JP2006318422A (ja
Inventor
正也 樋口
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2005143319A priority Critical patent/JP4159099B2/ja
Priority to US11/434,271 priority patent/US7499944B2/en
Publication of JP2006318422A publication Critical patent/JP2006318422A/ja
Application granted granted Critical
Publication of JP4159099B2 publication Critical patent/JP4159099B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、データウェアハウス等で使用される次元テーブルにおける次元階層を処理する次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラムに関するものである。
OLAPを使用する多次元データ分析では、リレーショナルデータベース上でデータウェアハウスあるいはデータマートを構築し、分析の視点となる事象を定めて様々な角度から柔軟な集計を行っている。この際、アプリケーションから見た分析の視点となる属性には階層といった考え方が存在し、分析の細かさを決定する。
具体的には、製品別の売り上げという視点でレポートを分析する場合、「大分類ごとの売上高」、「中分類ごとの売上高」、「製品コードごとの売上高」といった3つの分析の粒度が視点の階層となる。この階層を多次元データ分析では「次元階層」と呼ぶ。これは、属性となる製品などの情報が格納されるマスターテーブルが、「次元テーブル」と呼ばれるからである。
データウェアハウスあるいはデータマートを利用した分析アプリケーションを構築する場合、この次元階層や多次元データモデルを容易に構築する仕組みはデータウェアハウス管理者にとって非常に重要な作業になる。
従来技術における次元階層の構築は次のように行なわれている。
(1)DBA(データベース管理者)は、関連する次元テーブルをデータベース内のテーブルの一覧から選択する。
(2)DBAは、選択した各テーブルに対して、次元階層として必要である列を選択する。
(3)DBAは、選択した列(属性)について、属性からの概念等に基づき階層上の上下関係を把握し、上位の次元階層から下位の次元階層へ向かって順番にテーブルや列を手作業で構築中のデータベースやテーブルにそれぞれ追加する。
特許文献1は、多次元データベースの処理に関し、2個の木構造を結合する仕組みについて開示する。該仕組みでは、特許文献1の図9〜図15に関連して説明されているように、結合前の2個の木構造において重複するカテゴリは、所定のルールに従い、結合後の木構造では、1個にまとめられ、これにより、木構造内に同一のカテゴリが重複して存在するのを排除している。
特許文献2は、段落0012において、事実テーブルに結合されている次元テーブル(マスタテーブル)から読み込んだ結合キーに基づき結合キーテーブルを作成し、それをテストデータの生成に役立てている。
特許文献3は、患者規則帰納法(PRIM)を使って、大量のデータレコードの集合内に高い平均値領域を見つけ出し、該領域に対してOLAP(Online Analytical Processing)ツールにより集中解析することにより、解析の効率化を図っている。
特開2000−194710公報 特開2000−20529公報 特開2002−328937公報
DBAにより従来、手作業で行われていた次元階層の抽出は、DBAが、列としての属性の概念に基づき各列の上下関係を把握して、この把握に基づき、あるいは参照整合制約上の次元テーブルの連鎖関係を把握して、この把握に基づき、行なわれることになるので、すなわち、次元階層の抽出作業に概念把握等の高度の処理が存在するので、このような作業手順を、非正規化された次元テーブルの各列の次元階層の抽出に関するコンピュータ化に適用する場合には、難が生じる。
特許文献1〜3は、多次元データベースの処理、事実テーブル、及びOLAPなどを開示するものの、非正規化された次元テーブルにおける次元階層抽出処理をコンピュータ化するのに有利な方策はまったく示唆していない。
本発明の目的は、非正規化された次元テーブルにおける次元テーブル処理をコンピュータ化するのに有利な次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラムを提供することである。
本発明の次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラムによれば、処理対象の次元テーブルにおいて次元階層を抽出しようとする列について、その列に属する各セルのデータに基づき例えばカーディナリティや相関係数値等の評価値が計算される。そして、評価値に基づき各列の次元階層が抽出される。
評価値を計算する対象となっている処理対象の次元テーブルは非正規化されている。次元テーブル処理装置及び方法が次元テーブルについて抽出した次元階層は、管理者に提示されるが、好ましくは、管理者は次元テーブル処理装置及び方法から提示のあった次元階層について承認するか拒否(拒否とは非承認を意味する。)するかを決めることができるようになっている。承認には、全面的な承認だけでなく、部分的な承認が含まれる。次元テーブル処理装置及び方法が管理者に提示する次元階層情報には、枝分かれを含む次元階層情報(例:図12)が含まれてもよいとする。管理者による提示次元階層情報に対する部分的な承認には、提示次元階層情報に対して、例えば、少なくとも、一部の次元階層を削除したり、一部の枝(該枝上には1個以上の次元階層が階層順に配置されている。)を削除したり、枝の枝分かれ点を変更したりすることが含まれる。
全面的に又は部分的に承認された次元階層は、好ましくはデータウェアハウス及び/又はデータマートのメタデータとして保存され、ユーザが、後に、OLAPを利用して、階層的なデータ分析を行う際に、利用される。
本発明によれば、次元階層を抽出しようとする次元テーブルに対し、各列に係るカーディナリティ及び相関係数等の評価値を計算し、各列間の評価値に基づき次元階層を決定するので、次元階層の抽出処理を円滑に自動化(コンピュータ化)できる。
図1は組織内のデータベース10の概略構成図である。データベースシステム10は、基幹系システム11と情報系システム12とに分けられる。基幹系システム11は、基幹系データベース13及び外部データベース14を備えている。情報系システム12は、さらに、1個のデータウェアハウス16と、目的別及び/又は部門別の複数個のデータマート18とを備えている。データウェアハウス16及びデータマート18はそれぞれメタデータ17,19を有し、メタデータ17,19にはOLAP用メタデータが含まれる。データウェアハウス16は、基幹系データベース13及び外部データベース14のデータを統合して構築される。ユーザは、パーソナルコンピュータ23においてOLAPを使用しつつ、データマート18から所望の情報を提供される。
図2はデータウェアハウス16及びデータマート18におけるスタースキーマ構造及びスノーフレークスキーマ構造を示している。事実テーブル25と、次元テーブル26,28及び非正規化次元テーブル27とはスタースキーマ構造を形成している。次元テーブル26と次元テーブル30とはスノーフレーク構造を形成している。スタースキーマ構造及びスノーフレークスキーマ構造は共に参照整合制約に基づいている。図2の例では、非正規化次元テーブル27は非正規化されており、次元テーブル26,28,30は正規化されている。
図3は図2の非正規化次元テーブル27の具体的内容を示している。図4は内容上、図3の非正規化次元テーブル27に代替可能となっている正規化された複数個の次元テーブルを示している。図4において、事実テーブル25と次元テーブル33とはスタースキーマ構造を形成し、次元テーブル33−次元テーブル34、及び次元テーブル34−次元テーブル35は参照整合制約に基づくスノーフレークスキーマ構造を形成している。例えば、分類を階層化し(販売製品についての分類を例えば大分類、中分類及び小分類に3個に分ける。)、各階層分類ごとの売上げを分析する場合、複数個の正規化された次元テーブル(次元テーブル33,34,35)を参照整合制約により結合することは、コンピュータの負荷を増大させて、処理時間を増大させるのに対し、非正規化された次元テーブル(非正規化次元テーブル27)では、結合が省略でき、処理が高速化できる利点がある。
図3の非正規化次元テーブル27は、釣り製品についての非正規化された次元テーブルとなっている。図3の例では、各製品は、製品ID(PRODUCTID)、製品名(PRODUCTNAME)、ファミリー名(FAMILYNAME)、及びカテゴリ名(CATEGORYNAME)を属性としてもつ。製品名、ファミリー名及びカテゴリ名は製品についてのそれぞれ小分類、中分類及び大分類であると想定して、以下の説明を行なう。ファミリー名には、ロックキャスティングロッド(Rock Casting Rod)、フライロッド(Fly Rod)、バスロッド(Bass Rod)、スピニング(Spinning)及びベイト(Bait)がある。カテゴリ名には、ロッド(Rod)及びリール(Reel)がある。
図5は次元テーブル処理装置50の機能ブロック図である。次元テーブル処理装置50は第1情報提示手段51、第2情報提示手段52、次元階層抽出手段53、第3情報提示手段54及び承認受理手段55を有している。第1情報提示手段51は、多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する。第2情報提示手段52は、管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを受理して、該事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として管理者に提示する。次元階層抽出手段53は、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして受理し、該処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき所定の評価値を計算し、各列の評価値に基づき各列の次元階層を抽出する。第3情報提示手段54は、次元階層抽出手段が抽出した処理対象次元テーブルの次元階層を第3情報として管理者に提示する。承認受理手段55は、管理者が第3情報に基づき承認した次元階層を承認済み次元階層として受理する。
後述の図20の次元階層抽出方法99は、次元テーブル処理装置50とは発明のカテゴリ(装置のカテゴリ及び方法のカテゴリ)が相違するのみで、技術内容はほぼ共通であり、両者を代表して次元テーブル処理装置50について技術事項を説明する。第1情報は、例えば、図6のような表示形式で、管理者のモニター(図示せず)の画面にリスト表示される。多次元データベースは例えばデータウェアハウス16(図1)に保存されているものであり、該多次元データベースに含まれている次元テーブル及び事実テーブルが図6のリストに幾つか存在している。次元テーブルは事実テーブルより多く、リストに含まれている。次元テーブルの管理者とは例えばDBAである。
第2情報は、例えば、図7のように、管理者のモニターの画面に画像表示される。管理者が第1情報から選択した事実テーブル60と共に、該事実テーブル60に対して、スタースキーマにより関連付けられている複数個(図では5個)の次元テーブル61a〜eが画面に表示される。これら次元テーブル61a〜eは、たいていは、非正規化されている次元テーブルであるが、正規化されている次元テーブルも存在することがある。管理者は、典型的には、第2情報より1個の次元テーブルを選択するが、複数個の次元テーブルを選択してもよいとする。複数個の次元テーブルが選択された場合、次元階層抽出手段53〜承認受理手段55では、選択された各次元テーブルに対して各処理が行われることになる。管理者が選択した次元テーブルが例えば図3の非正規化次元テーブル27であったと仮定して、説明する。
次元階層抽出手段53において計算される評価値は例えばカーディナリティ(Cardinalty)又は相関係数である。カーディナリティ及び相関係数については後で詳説する。セルとは、テーブルにおいて行と列とが交差する升目のことであり、各タプル(行)の属性(列)に係るデータがセルに書き込まれている。図3の非正規化次元テーブル27では、ロックキャスティング1(Rock Casting 1)とか、フライロッド(Fly Rod)とか、リール(Reel)とかのデータが書き込まれている1つ1つがセルとなっている。評価値と非正規化された次元テーブルの列の次元階層とは、対応関係があるので、各列の評価値に基づき列間の階層関係、したがって各列の次元階層が抽出できる。第3情報提示手段54は、次元階層抽出手段53が抽出した次元階層を第3情報として管理者に提示する。
第3情報は、例えば、図8のように、管理者のパソコンのモニターの画面に画像表示される。各列の属性名としてのカテゴリ名(CATEGORYNAME)、ファミリー名(FAMILYNAME)及び製品名(PRODUCTNAME)が階層の上位から下位へ順番に並べられて画面表示される。次元階層抽出手段53が抽出した次元階層に対し、管理者は、場合によっては、承認できないことがあるので、管理者は、第3情報として提示された次元階層の採用について承認権をもち、承認した次元階層が承認受理手段55により受理される。承認後の処理は例えば後述の図13の保存手段81によって行われる。
こうして、次元テーブル処理装置50では、非正規化された次元テーブルの各列間の階層関係としての次元階層が、各列について該列に属する各セルのデータに基づき計算した所定の評価値に基づき、抽出される。該抽出処理には、或る列の属性名が他の列の属性名に対して上位概念にあるか下位概念にあるかの概念把握を必要としないので、コンピュータ処理へ支障なく適用できる。
次元テーブル処理装置50は例えばコンピュータ・ソフトウェアとして実現される。コンピュータ・ソフトウェアの具体的なプログラムでは、変数及び配列が使用され、それらは、主記憶装置及び/又は補助記憶装置等の記憶手段に対するデータの読み書きを利用して、値の代入、更新及び読み出しが行われる。記憶手段を含む次元テーブル処理装置50の構成は次のとおりとなる。ただし、データの読み書きに係る手段のみ説明する。記憶手段は多次元データベースを記憶する。前述の第1情報提示手段51は、多次元データベースに含まれている複数個の事実テーブルを記憶手段から読み出し、該事実テーブルについての情報を第1情報として管理者に提示する。前述の第2情報提示手段52は、管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを受理して、該事実テーブルに対してスタースキーマにより関連付けられている次元テーブルを記憶手段から読み出し、該次元テーブルについての情報を第2情報として管理者に提示する。次元階層抽出手段53は、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして受理し、該処理対象次元テーブルにおける各列について該列に属する各セルのデータを記憶手段から読み出し、各セルのデータに基づき所定の評価値を計算し、各列の評価値に基づき各列の次元階層を抽出する。
図9は次元テーブル処理装置50により抽出した次元階層を利用した分析例を示している。ユーザは、分析作業にOLAPを使用し、各階層分類ごとに販売実績が分析されている。すなわち、西暦2003年の各四半期(Qtr1,Qtr2,・・・)の販売実績を(a)大分類としてのカテゴリ別、(b)中分類としてのファミリー別、及び(c)小分類としての製品別に分析され、分析結果が例えばパーソナルコンピュータ23(図1)の画面に表示される。分析結果は、画面への出力の外、プリンタから印刷物として出力されてもよい。
図10は別の次元テーブル処理装置70の機能ブロック図である。次元テーブル処理装置70では、図5の次元テーブル処理装置50に対して、受理切替手段71及び正規化次元テーブル用処理手段72が追加され、第3情報提示手段54は機能を追加されている。受理切替手段71は、処理対象次元テーブルが非正規化されたもの及び正規化されたもののどちらであるかを判定し、処理対象次元テーブルが非正規化されたものであれば、次元階層抽出手段53が処理対象次元テーブルを受理し、また、処理対象次元テーブルが正規化されたものであれば、正規化次元テーブル用処理手段72が処理対象次元テーブルを受理するように、切替を実施する。正規化次元テーブル用処理手段72は、受理した処理対象次元テーブルに対し該処理対象次元テーブルを出発点の次元テーブルとして順番に、参照元の列をもつ次元テーブルから参照整合制約による参照先の列をもつ次元テーブルへ辿っていき、各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に、より上位の次元階層に位置付けて抽出する。第3情報提示手段54は、正規化次元テーブル用処理手段72が次元テーブルについて抽出した次元階層を管理者に第3情報として提示する。
図10の次元テーブル処理装置70について、記憶手段のデータの読み書きに関与する手段を抜粋して、その構成を説明すると次のようになる。正規化次元テーブル用処理手段72は、受理した処理対象次元テーブルに対し該処理対象次元テーブルを出発点の次元テーブルとして順番に、参照元の列をもつ次元テーブルから参照整合制約による参照先の列をもつ次元テーブルへ辿っていき、各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に、より上位の次元階層に位置付けて抽出する。
後述の図21の次元階層抽出方法109は次元テーブル処理装置70とは発明のカテゴリ(装置のカテゴリ及び方法のカテゴリ)が相違するのみで、技術内容はほぼ共通であり、両者を代表して次元テーブル処理装置70について技術事項を説明する。管理者は、例えば、図7の表示から1個の次元テーブルを選択するが、該選択された次元テーブルが、非正規化されたものではなく、正規化されたものである場合があり得る。その場合、次元階層抽出手段53による評価値の計算及び次元階層の抽出は困難となるので、正規化次元テーブル用処理手段72が正規化次元テーブルにおける次元階層抽出処理を代行する。例えば、図7において、次元テーブル61bが図4の正規化された次元テーブル33であり、管理者は、図7の第2情報提示において、次元テーブル61bを選択した場合を想定する。正規化次元テーブル用処理手段72は、図4の参照整合制約に基づき下位の次元テーブル33から上位の方へ(スノーフレークスキーマの先端の方へ)次元テーブル34及び次元テーブル35を順番に辿ることにより、カテゴリ名、ファミリー名及び製品名の間における上位から下位への次元階層は、辿り順とは逆に、カテゴリ名→ファミリー名→製品名と並ぶことを抽出する。正規化次元テーブル用処理手段72により抽出された次元階層は、次元階層抽出手段53により抽出された次元階層と同様に、第3情報提示手段54により第3情報として管理者に提示される。
次元テーブルが正規化されたものであるか非正規化されたものであるかは、参照整合制約に基づきさらに先の次元テーブルへ辿ることができるか否かにより検出できる。第2情報に含まれる次元テーブルの内、正規化された次元テーブルは、参照整合制約に基づきさらに先の次元テーブルへ辿れるのに対し、非正規化された次元テーブルは、該次元テーブルに対して参照整合制約により結合している次元テーブルは存在しないので、参照整合制約に基づき上位の階層の次元テーブルへ辿れない。
次元テーブル処理装置50,70の変形形態では、次元階層抽出手段53は、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とする。
この場合、管理者は、第2情報に係る次元テーブルの中から処理対象次元テーブルとする次元テーブルの選択を省略することができる。ユーザには、次元テーブル処理装置50,70により各次元テーブルについて抽出された次元階層を、承認するか否かの権利が残される。ユーザにより承認されなかった次元階層は、承認受理手段55が受理しない。
次元テーブル処理装置50,70の別の変形形態では、承認受理手段55における承認済み次元階層は、管理者が第3情報に基づき修正して承認した修正付き次元階層を含む。好ましくは、修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、(a)第3情報で提示した複数個の次元階層において管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、(b)第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を管理者が削除してその結果として残った1個以上の次元階層、又は(c)枝の分岐点を変更された1個以上の次元階層が含まれている。(a)の例は図11に示され、(b)の例は図12に示され、(c)の例は図12においてDa3及びDa4の枝について、その枝分かれ点をD2から例えばDb3やDb4へ変更することである。
管理者が、次元テーブル処理装置50,70が抽出した次元階層に対して、修正できるようにしたことにより、不要や不適格な次元階層がデータベースに取り込まれるのを排除できる。
図11は、第3情報提示手段54が管理者に提示した第3情報に対して、管理者が一部削除の修正を行なった場合を示している。第3情報提示手段54が、上位から下位の次元階層へ順番にD4→D3→D2→D1を提示したのに対し、管理者は、D3は不適格又は不要としてこれを削除する。この削除に伴い、次元階層D2の直上の次元階層は、D3からD4へ自動的に変更される。
図12は、第3情報提示手段54が管理者に提示した第3情報に対して、管理者が、所定の次元階層から枝分かれした枝を削除する修正を行なった場合を示している。第3情報提示手段54が、上位から下位の次元階層へ順番にDa4→Da3→D2→D1と、Db5→Db4→Db3→D2→D1とを提示しており、D2から上位階層方向へはDa3とDb3との2個に分岐している。これに対し、管理者はDa4→Da3の枝を削除した。次元階層の枝分かれの具体例については、図18において詳述する。
図13はさらに別の次元テーブル処理装置80について主要部のみを抜粋した機能ブロック図である。次元テーブル処理装置80では、次元テーブル処理装置50又は70の承認受理手段55の次段に保存手段81が追加される。保存手段81は、承認済み次元階層を例えば図1のメタデータ17又はデータマート18のような多次元データベースのメタデータとして保存する。保存手段による保存場所は例えば前述の記憶手段である。
後述の図22の次元テーブル処理方法114は次元テーブル処理装置80とは発明のカテゴリ(装置のカテゴリ及び方法のカテゴリ)が相違するのみで、技術内容はほぼ共通であり、両者を代表して次元テーブル処理装置80について技術事項を説明する。次元階層をメタデータとして保存することにより、OLAP等において次元階層が活用できる。
次元テーブル処理装置50,70,80において、次元階層検出手段53における評価値とは、例えば各列におけるカーディナリティ、又は基準の列に対する相関係数である。
カーディナリティについて説明する。カーディナリティとは、非正規化された次元テーブルの各列における固有値の個数と定義する。図14は図3の非正規化次元テーブル27について計算したカーディナリティを示している。製品名には計10個の固有値が存在するので、製品名の列のカーディナリティは10となる。ファミリー名には、ロックキャスティングロッド(Rock Casting Rod)、フライロッド(Fly Rod)、バスロッド(Bass Rod)、スピニング(Spinning)及びベイト(Bait)の計5個の固有値が存在するので、ファミリー名の列のカーディナリティは5となる。カテゴリ名には、ロッド(Rod)及びリール(Reel)の計2個存在するので、カテゴリ名の列のカーディナリティは2となる。
各列(列=属性)のカーディナリティを検出するSQL(Structured Query Language)は次のとおりである。(1)〜(3)はそれぞれ属性が製品名、ファミリー名及びカテゴリ名であるカーディナリティを検出するSQLに対応している。「DB2ADMIN.PRODUCT」は非正規化次元テーブル27について使用したテーブル名であり、TTは副問合せの結果を一時的に格納するテーブル名である。count(1)は、TTの出発点の列の固有値の個数を計数する集約関数である。カーディナリティ(Cardinality)が低い(Low)属性程、階層(Hierarchy)では上位(Top)となり、また、カーディナリティが高い(High)属性程、階層では、下位(Bottom)となる。
(1) select count(1) from (select distinct PRODUCTNAME from DB2ADMIN.PRODUCT) TT
(2) select count(1) from (select distinct FAMILYNAME from DB2ADMIN.PRODUCT) TT
(3) select count(1) from (select distinct CATEGORYNAME from DB2ADMIN.PRODUCT) TT
相関係数について説明する。図15は図3の非正規化次元テーブル27について計算した相関係数を示している。図15では、説明の便宜上、製品ID、製品名、ファミリー名及びカテゴリ名の列をそれぞれCol1〜Col4と名付けている。図15の相関テーブル(Correlation Table)に、列間の相関係数が記入されている。図16は相関係数の計算のために図3の非正規化次元テーブル27の各固有値を各列ごとに割り振った数値(自然数)を示すテーブルである。非正規化次元テーブル27の異なる固有値(図3)は、異なる自然数(図16)へ変換されるとともに、自然数は1から順番に使用されている。図17は相関係数rの算出式である。図15の相関テーブルでは、列(Col1〜Col4)に対する行(製品ID、製品名、ファミリー名及びカテゴリ名)の相関係数が記載されており、図17の相関係数算出式では、図16において基準列における数値をxの数値とし、基準列に対して相関関係を調べられる列の数値をyの数値としている。
図15の相関表の相関係数から分かるように、基準列Col1に対する相関係数調査列Col2,Col3,Col4の相関係数はそれぞれ1.00、0.97及び0.85であり、基準列Col2に対する相関係数調査列Col3,Col4の相関係数はそれぞれ0.97および0.85である。最初の基準列は、典型的には、事実テーブルの属性に含まれる非正規化次元テーブル27の列としてのCol1が選択される。Col2に対してもっとも相関係数の高い列はCol3の0.97であるので、Col3は、Col2の直上の次元テーブルとされる。次に、このCol3に対してもっとも相関係数の高い列はCol3の0.89であるので(相関係数の計算された列はCol3しかないので、)、Col3は、Col2の直上の次元テーブルとされる。図15の下部の相関(Corralation)及び階層(Hierachy)の領域に図示されているように、相関の低い(Low)列程、階層は高くなる。
図18は図12で説明した次元階層が枝分かれする非正規化次元テーブルの具体例を示している。カーディナリティを計算すると、商品コードのカーディナリティは10、商品名のカーディナリティは10、商品区分のカーディナリティは4、容器種別のカーディナリティは2となる。カーディナリティから単純に次元階層を抽出すると、次元階層が上位から下位となる順番に容器種別→商品区分→商品名と並ぶ。しかしながら、商品区分と容器種別を対比すると、商品区分のビールが、商品コードの1,2では、容器種別の缶に含まれるのに対し、商品コードの3では、容器種別のビンに含まれている。したがって、カーディナリティから単純に、容器種別は商品区分より上位の次元階層と判断するのは早計となる。商品名−商品区分間、及び商品名−容器種別間では、カーディナリティに基づいて下位の次元階層とされた商品名における1個の固有値が、カーディナリティに基づいて上位の次元階層とされた商品区分又は容器種別における複数個の固有値に対応付けられることはない。したがって、商品名から1個、上位の次元階層へは、商品区分と容器種別との2個へ枝分かれすることになる。次元テーブル処理装置50,70,80は、このような枝分かれを、下位の列の固有値と上位の列の固有値とが複数:1の関係にあるか、又は複数:複数の関係にあるかのいずれかにあるかを判定し、複数:複数の関係にあれば、枝分かれが起きていると判断する。
図19は次元階層抽出装置90の機能ブロック図である。次元階層抽出装置90は、評価値計算手段91、順位付け手段92及び次元階層決定手段93を有している。評価値計算手段91は、処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき評価値を計算する。順位付け手段92は、評価値に基づき処理対象次元テーブルの各列を順位付けする。次元階層決定手段93は、順位付けに従い処理対象次元テーブルの各列の次元階層を決定する。
後述の図23の次元階層抽出方法150は次元階層抽出装置90とは発明のカテゴリ(装置のカテゴリ及び方法のカテゴリ)が相違するのみで、技術内容はほぼ共通であり、両者を代表して次元階層抽出装置90について技術事項を説明する。評価値計算手段91における評価値とは、例えば、各列におけるカーディナリティ、又は所定の列に対する相関係数である。評価値をカーディナリティとする場合、カーディナリティが低い列程、上位の次元階層となる。評価値を相関係数とする場合、基準の列に対する相関係数が一番高い列が、基準の列に近い次元階層となる。次元階層抽出装置90は、評価値計算手段91における処理に先立ち、対象次元テーブルが非正規化であるか否かを調べ、非正規化されている次元テーブルのみを対象次元テーブルとすることもできる。
図20は次元テーブル処理方法99のフローチャートである。第1情報提示ステップS100では、多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する。第2情報提示ステップS101では、管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを受理して、該事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として管理者に提示する。次元階層抽出ステップS102では、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして受理し、該処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき所定の評価値を計算し、各列の評価値に基づき各列の次元階層を抽出する。第3情報提示ステップS103では、次元階層抽出ステップS102において抽出した処理対象次元テーブルの次元階層を第3情報として管理者に提示する。承認受理ステップS104では、管理者が第3情報に基づき承認した次元階層を承認済み次元階層として受理する。
図21は別の次元テーブル処理方法109のフローチャートである。次元テーブル処理方法99との相違点のみを説明する。受理切替ステップS110では、処理対象次元テーブルが非正規化されたもの及び正規化されたもののどちらであるかを判定し、処理対象次元テーブルが非正規化されたものであれば、次元階層抽出ステップS102が処理対象次元テーブルを受理し、また、処理対象次元テーブルが正規化されたものであれば、正規化次元テーブル用処理ステップS111が処理対象次元テーブルを受理するように切替を実施する。正規化次元テーブル用処理ステップS111では、受理した処理対象次元テーブルに対し該処理対象次元テーブルを出発点の次元テーブルとして順番に、参照元の列をもつ次元テーブルから参照整合制約による参照先の列をもつ次元テーブルへ辿っていき、各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に、より上位の次元階層に位置付けて抽出する。第3情報提示ステップS103では、正規化次元テーブル用処理ステップS111において次元テーブルについて抽出した次元階層を管理者に第3情報として提示する。
次元テーブル処理方法99,109の次元階層抽出ステップS102では、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とすることもできる。
図22は別の次元テーブル処理方法114のフローチャートである。S103までのステップは、次元テーブル処理方法99,109のものと同一である。次元テーブル処理方法99,109との相違点について述べると、承認受理ステップS104では、修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、第3情報で提示した複数個の次元階層において管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を管理者が削除してその結果として残った1個以上の次元階層、又は枝の分岐点を変更された1個以上の次元階層が含まれている。さらに、保存ステップS120では、承認済み次元階層を多次元データベースのメタデータとして保存する。
次元テーブル処理方法99,109,114において、次元階層抽出ステップS102における評価値とは、各列におけるカーディナリティ、又は所定の列に対する各列の相関係数である。
図23は次元階層抽出方法150のフローチャートである。評価値計算ステップS151では、処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき評価値を計算する。順位付けステップS152では、評価値に基づき処理対象次元テーブルの各列を順位付けする。次元階層決定ステップS153では、順位付けに従い処理対象次元テーブルの各列の次元階層を決定する。評価値とは、例えば、各列におけるカーディナリティ、又は所定の列に対する相関係数である。
本発明の装置及び方法は、ハードウェア、ソフトウェア、又はそれらの組み合わせにより実現可能である。ハードウェアとソフトウェアとの組み合わせによる実行において、所定のプログラムを有するコンピュータシステムにおける実行が典型的な例と挙げられる。かかる場合、該所定プログラムが該コンピュータシステムにロードされ実行されることにより、該プログラムは、コンピュータシステムを制御し、本発明に係る処理を実行させる。このプログラムは、任意の言語・コード・表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接、又は(a)他の言語・コード・表記への変換、(c)他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブル・ディスク、MO、CD−ROM、DVD、ハードディスク装置、ROM、MRAM、RAM等の任意のコンピュータ読み取り可能な記録媒体に格納することができる。かかるプログラムは、記録媒体への格納のために、通信回線で接続する他のコンピュータシステムからダウンロードしたり、他の記録媒体から複製したりすることができる。また、かかるプログラムは、圧縮し、又は複数に分割して、単一又は複数の記録媒体に格納することもできる。
図24は本発明のプログラムが実装されるコンピュータ200の概略構成図である。コンピュータ本体201はCPU202及び主記憶装置203を含み、CPU202はさらに演算装置204及び制御装置205を含む。演算装置204は、演算、比較及び判断等を行い、制御装置205は主記憶装置203や演算装置204等を制御する。システムバス210は、データバス、アドレスバス及び制御バスから成り、CPU202、主記憶装置203、入力インターフェース215、入出力インターフェース216、及び出力インターフェース217が接続されている。入力装置220は例えばキーボードや読出し専用CDドライブ等であり、データを入力インターフェース215を介してシステムバス210へ送る。外部記憶装置221は、例えば、HD(ハードディスク)装置や読書き可能なCDドライブ等であり、入出力インターフェース216を介してシステムバス210とデータを送受する。出力装置222は、例えばディスプレイやプリンタであり、出力インターフェース217を介してシステムバス210からのデータを受ける。本発明のプログラムは、例えばHD装置等の外部記憶装置221に保存され、実行時には主記憶装置203へ読み込まれる。
本発明のプログラムは、次元テーブル処理方法99,109,114又は次元階層抽出方法150における各ステップをコンピュータ200に実行させる。あるいは、本発明のプログラムは、次元テーブル処理装置50,70,80又は次元階層検出装置90における各手段としてコンピュータ200を機能させる。具体的には、次のとおりである。
次元テーブル処理プログラムは、
多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する第1情報提示ステップ、
管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを受理して該事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として管理者に提示する第2情報提示ステップ、
管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして受理し、該処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき所定の評価値を計算し、各列の評価値に基づき各列の次元階層を抽出する次元階層抽出ステップ、
次元階層抽出ステップが抽出した処理対象次元テーブルの次元階層を第3情報として管理者に提示する第3情報提示ステップ、及び
管理者が第3情報に基づき承認した次元階層を承認済み次元階層として受理する承認受理ステップ、
をコンピュータに実行させるためのものである。
次元テーブル処理プログラムは、さらに、次のステップをコンピュータに実行させてもよい。
処理対象次元テーブルが非正規化されたもの及び正規化されたもののどちらであるかを判定し処理対象次元テーブルが非正規化されたものであれば次元階層抽出ステップが処理対象次元テーブルを受理し、また、処理対象次元テーブルが正規化されたものであれば正規化次元テーブル用処理ステップが処理対象次元テーブルを受理するように切替を実施する受理切替ステップ、
受理した処理対象次元テーブルに対し該処理対象次元テーブルを出発点の次元テーブルとして順番に、参照元の列をもつ次元テーブルから参照整合制約による参照先の列をもつ次元テーブルへ辿っていき、各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に、より上位の次元階層に位置付けて抽出する正規化次元テーブル用処理ステップ、及び
正規化次元テーブル用処理ステップが次元テーブルについて抽出した次元階層を管理者に第3情報として提示する第3情報提示ステップ。
好ましくは、次元テーブル処理プログラムは、次元階層抽出ステップでは、管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とする。
好ましくは、次元テーブル処理プログラムでは、承認済み次元階層は、管理者が第3情報に基づき修正して承認した修正付き次元階層を含む承認受理ステップ。
好ましくは、次元テーブル処理プログラムでは、修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、第3情報で提示した複数個の次元階層において管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を管理者が削除してその結果として残った1個以上の次元階層、又は枝の分岐点を変更された1個以上の次元階層が含まれている。
さらに、次元テーブル処理プログラムは次のステップをコンピュータに実行させることもできる。
承認済み次元階層を多次元データベースのメタデータとして保存する保存ステップ。
次元テーブル処理プログラムでは、次元階層抽出ステップにおける評価値とは、例えば、各列におけるカーディナリティ、又は所定の列に対する各列の相関係数である。
次元階層抽出プログラムは次のステップをコンピュータに実行させる。
処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき評価値を計算する評価値計算ステップ、
評価値に基づき処理対象次元テーブルの各列を順位付けする順位付けステップ、及び
順位付けに従い処理対象次元テーブルの各列の次元階層を決定する次元階層決定ステップ。
次元階層抽出プログラムでは、評価値とは、例えば、各列におけるカーディナリティ、又は所定の列に対する相関係数である。
組織内のデータベース10の概略構成図である。 データウェアハウス及びデータマートにおけるスタースキーマ構造及びスノーフレークスキーマ構造を示す図である。 図2の非正規化次元テーブルの具体的内容を示す図である。 内容上、図3の非正規化次元テーブルに代替可能となっている正規化された複数個の次元テーブルを示す図である。 次元テーブル処理装置の機能ブロック図である。 第1情報の提示例を示す図である。 第2情報の提示例を示す図である。 第3情報の提示例を示す図である。 次元テーブル処理装置により抽出した次元階層を利用した分析例を示す図である。 別の次元テーブル処理装置の機能ブロック図である。
第3情報提示手段が管理者に提示した第3情報に対して、管理者が一部削除の修正を行なった場合を示す図である。 第3情報提示手段が管理者に提示した第3情報に対して、管理者が、所定の次元階層から枝分かれした枝を削除する修正を行なった場合を示す図である。 他の次元テーブル処理装置について主要部のみを抜粋した機能ブロック図である。 図3の非正規化次元テーブルについて計算したカーディナリティを示す図である。 図3の非正規化次元テーブルについて計算した相関係数を示す図である。 相関係数の計算のために図3の非正規化次元テーブルの各固有値を各列ごとに割り振った数値を示すテーブルである。 相関係数rの算出式である。 図12で説明した次元階層が枝分かれする非正規化次元テーブルの具体例を示す図である。 次元階層抽出装置の機能ブロック図である。 次元テーブル処理方法のフローチャートである。
別の次元テーブル処理方法のフローチャートである。 別の次元テーブル処理方法のフローチャートである。 次元階層抽出方法のフローチャートである。 本発明のプログラムが実装されるコンピュータの概略構成図である。
符号の説明
16:データウェアハウス、17:メタデータ、18:データマート、19:メタデータ、25:事実テーブル、26:次元テーブル、27:非正規化次元テーブル、28〜35:次元テーブル、50:次元テーブル処理装置、51:第1情報提示手段、52:第2情報提示手段、53:次元階層抽出手段、54:第3情報提示手段、55:承認受理手段、60:事実テーブル、61:次元テーブル、70:次元テーブル処理装置、71:受理切替手段、72:正規化次元テーブル用処理手段、80:次元テーブル処理装置、81:保存手段、90:次元階層抽出装置、91:評価値計算手段、92:順位付け手段、93:次元階層決定手段。

Claims (21)

  1. 記憶装置より多次元データベースのデータを読み出して該多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する第1情報提示手段、
    前記第1情報提示手段が提示した前記第1情報に対して前記管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを検出手段が検出し、該検出手段が検出した事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として前記管理者に提示する第2情報提示手段、
    前記第2情報提示手段が提示した前記第2情報に対して前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを前記検出手段が処理対象次元テーブルとして検出し、該検出手段が検出した処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算し、計算したカーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位になる階層関係で各列の次元階層を抽出する次元階層抽出手段、
    前記次元階層抽出手段が抽出した前記処理対象次元テーブルの次元階層を第3情報として前記管理者に提示する第3情報提示手段、及び
    前記第3情報提示手段が提示した前記第3情報を前記管理者が承認したか否かを検出し、承認した次元階層を承認済み次元階層として受理する承認受理手段、
    を有していることを特徴とする次元テーブル処理装置。
  2. 前記処理対象次元テーブルに対して参照整合制約に基づいてそれより先の次元テーブルへ辿ることができれば及び辿ることができなければ、該処理対象次元テーブルをそれぞれ非正規化及び正規化されたものと判定し非正規化及び正規化された処理対象次元テーブルをそれぞれ前記次元階層抽出手段及び正規化次元テーブル用処理手段に受理させる受理切替手段、
    受理した正規化された処理対象次元テーブルを出発点の次元テーブルとするとともに、参照元の列をもつ次元テーブル及び該参照元の列が参照整合制約により参照する列をもつ次元テーブルをそれぞれ元及び先の次元テーブルにして、前記出発点の次元テーブルから元及び先の次元テーブルの関係で先の方へ向かって次元テーブルを順番に辿っていき、この辿り過程における各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に1ずつ上位の次元階層にして各列の次元階層を抽出する前記正規化次元テーブル用処理手段、及び
    前記正規化次元テーブル用処理手段が前記次元テーブルについて抽出した次元階層を前記管理者に第3情報として提示する前記第3情報提示手段、
    を有していることを特徴とする請求項1記載の次元テーブル処理装置。
  3. 前記次元階層抽出手段は、前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とすることを特徴とする請求項1記載の次元テーブル処理装置。
  4. 前記承認済み次元階層は、前記管理者が第3情報に基づき修正して承認した修正付き次元階層を含む前記承認受理手段、
    を有していることを特徴とする請求項1記載の次元テーブル処理装置。
  5. 前記修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、前記第3情報で提示した複数個の次元階層において前記管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、前記第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を前記管理者が削除してその結果として残った1個以上の次元階層、又は前記枝の枝分かれ点を変更された1個以上の次元階層が含まれていることを特徴とする請求項4記載の次元テーブル処理装置。
  6. 承認済み次元階層を多次元データベースのメタデータとして保存する保存手段、
    を有していることを特徴とする請求項1記載の次元テーブル処理装置。
  7. 処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算する計算手段、
    前記計算手段が計算したカーディナリティ又は相関値に対し、カーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位の階層となるように各列について階層関係に係る順位付けを行う順位付け手段、及び
    前記順位付け手段による順位付けの階層関係で前記処理対象次元テーブルの各列の次元階層を抽出する次元階層抽出手段、
    を有していることを特徴とする次元階層抽出装置。
  8. コンピュータが、記憶装置より多次元データベースのデータを読み出して該多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する第1情報提示ステップ、
    コンピュータが、前記第1情報提示ステップにおいて提示した前記第1情報に対して前記管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを検出するとともに、検出した事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として前記管理者に提示する第2情報提示ステップ、
    コンピュータが、前記第2情報提示ステップにおいて提示した前記第2情報に対して前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして検出するとともに、検出した処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算し、計算したカーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位になる階層関係で各列の次元階層を抽出する次元階層抽出ステップ、
    コンピュータが、前記次元階層抽出ステップにおいて抽出した前記処理対象次元テーブルの次元階層を第3情報として前記管理者に提示する第3情報提示ステップ、及び
    コンピュータが、前記第3情報提示ステップおいて提示した前記第3情報を前記管理者が承認したか否かを検出し、承認した次元階層を承認済み次元階層として受理する承認受理ステップ、
    を有していることを特徴とする次元テーブル処理方法。
  9. コンピュータが、前記処理対象次元テーブルに対して参照整合制約に基づいてそれより先の次元テーブルへ辿ることができれば及び辿ることができなければ、該処理対象次元テーブルをそれぞれ非正規化及び正規化されたものと判定し非正規化及び正規化された処理対象次元テーブルをそれぞれ前記次元階層抽出ステップ及び正規化次元テーブル用処理ステップの処理対象に仕向ける切替を実施する受理切替ステップ、
    コンピュータが、正規化された処理対象次元テーブルを出発点の次元テーブルとするとともに、参照元の列をもつ次元テーブル及び該参照元の列が参照整合制約により参照する列をもつ次元テーブルをそれぞれ元及び先の次元テーブルにして、前記出発点の次元テーブルから元及び先の次元テーブルの関係で先の方へ向かって次元テーブルを順番に辿っていき、この辿り過程における各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に1ずつ上位の次元階層にして各列の次元階層を抽出する前記正規化次元テーブル用処理ステップ、及び
    コンピュータが、前記正規化次元テーブル用処理ステップにおいて前記次元テーブルについて抽出した次元階層を前記管理者に第3情報として提示する前記第3情報提示ステップ、
    を有していることを特徴とする請求項8記載の次元テーブル処理方法。
  10. 前記次元階層抽出ステップでは、コンピュータが、前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とすることを特徴とする請求項8記載の次元テーブル処理方法。
  11. 前記承認済み次元階層は、前記管理者が第3情報に基づき修正して承認した修正付き次元階層を含む前記承認受理ステップ、
    を有していることを特徴とする請求項8記載の次元テーブル処理方法。
  12. 前記修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、前記第3情報で提示した複数個の次元階層において前記管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、前記第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を前記管理者が削除してその結果として残った1個以上の次元階層、又は前記枝の枝分かれ点を変更された1個以上の次元階層が含まれていることを特徴とすることを特徴とする請求項11記載の次元テーブル処理方法。
  13. コンピュータが、承認済み次元階層を多次元データベースのメタデータとして保存する保存ステップ、
    を有していることを特徴とする請求項8記載の次元テーブル処理方法。
  14. コンピュータが、処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算する計算ステップ、
    コンピュータが、前記計算ステップにおいてが計算したカーディナリティ又は相関値に対し、カーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位の階層となるように各列について階層関係に係る順位付けを行う順位付けステップ、及び
    コンピュータが、前記順位付けステップにおける順位付けの階層関係で前記処理対象次元テーブルの各列の次元階層を抽出する次元階層抽出ステップ、
    を有していることを特徴とする次元階層抽出方法。
  15. コンピュータが、記憶装置より多次元データベースのデータを読み出して該多次元データベースに含まれている複数個の事実テーブルについての情報を第1情報として管理者に提示する第1情報提示ステップ、
    コンピュータが、前記第1情報提示ステップにおいて提示した前記第1情報に対して前記管理者が第1情報に係る事実テーブルの中から選択した事実テーブルを検出するとともに、検出した事実テーブルに対してスタースキーマにより関連付けられている次元テーブルについての情報を第2情報として前記管理者に提示する第2情報提示ステップ、
    コンピュータが、前記第2情報提示ステップにおいて提示した前記第2情報に対して前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルを処理対象次元テーブルとして検出するとともに、検出した処理対象次元テーブルにおける各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算し、計算したカーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位になる階層関係で各列の次元階層を抽出する次元階層抽出ステップ、
    コンピュータが、前記次元階層抽出ステップにおいて抽出した前記処理対象次元テーブルの次元階層を第3情報として前記管理者に提示する第3情報提示ステップ、及び
    コンピュータが、前記第3情報提示ステップおいて提示した前記第3情報を前記管理者が承認したか否かを検出し、承認した次元階層を承認済み次元階層として受理する承認受理ステップ、
    をコンピュータに実行させるための次元テーブル処理プログラム。
  16. 請求項15の次元テーブル処理プログラムにおいて、
    コンピュータが、前記処理対象次元テーブルに対して参照整合制約に基づいてそれより先の次元テーブルへ辿ることができれば及び辿ることができなければ、該処理対象次元テーブルをそれぞれ非正規化及び正規化されたものと判定し非正規化及び正規化された処理対象次元テーブルをそれぞれ前記次元階層抽出ステップ及び正規化次元テーブル用処理ステップの処理対象に仕向ける切替を実施する受理切替ステップ、
    コンピュータが、正規化された処理対象次元テーブルを出発点の次元テーブルとするとともに、参照元の列をもつ次元テーブル及び該参照元の列が参照整合制約により参照する列をもつ次元テーブルをそれぞれ元及び先の次元テーブルにして、前記出発点の次元テーブルから元及び先の次元テーブルの関係で先の方へ向かって次元テーブルを順番に辿っていき、この辿り過程における各次元テーブルにおいて参照先となった各列の次元階層を、出発点の次元テーブルの列からの辿り順に1ずつ上位の次元階層にして各列の次元階層を抽出する前記正規化次元テーブル用処理ステップ、及び
    コンピュータが、前記正規化次元テーブル用処理ステップにおいて前記次元テーブルについて抽出した次元階層を前記管理者に第3情報として提示する前記第3情報提示ステップ、
    をコンピュータに実行させるための次元テーブル処理プログラム。
  17. 請求項15の次元テーブル処理プログラムにおいて、
    前記次元階層抽出ステップでは、コンピュータが、前記管理者が第2情報に係る次元テーブルの中から選択した次元テーブルに代えて、第2情報に含まれる全部の次元テーブルを処理対象とする次元テーブル処理プログラム。
  18. 請求項15の次元テーブル処理プログラムにおいて、
    前記承認済み次元階層は、前記管理者が第3情報に基づき修正して承認した修正付き次元階層を含む前記承認受理ステップ、
    をコンピュータに実行させるための次元テーブル処理プログラム。
  19. 請求項18の次元テーブル処理プログラムにおいて、
    前記修正付き次元階層は1個以上の次元階層を含み、該1個以上の次元階層には、前記第3情報で提示した複数個の次元階層において前記管理者が一部の次元階層を削除してその結果として残った1個以上の次元階層、前記第3情報で提示した複数個の次元階層において所定の次元階層から枝分かれした枝上のすべての次元階層を前記管理者が削除してその結果として残った1個以上の次元階層、又は前記枝の枝分かれ点を変更された1個以上の次元階層が含まれている次元テーブル処理プログラム。
  20. 請求項15の次元テーブル処理プログラムにおいて、
    コンピュータが、承認済み次元階層を多次元データベースのメタデータとして保存する保存ステップ、
    をコンピュータに実行させるための次元テーブル処理プログラム。
  21. コンピュータが、処理対象次元テーブルにおいて、各列について該列に属する各セルのデータに基づき各列のカーディナリティ又は列間の相関値を計算する計算ステップ、
    コンピュータが、前記計算ステップにおいてが計算したカーディナリティ又は相関値に対し、カーディナリティの小さい列ほど上位になる階層関係で又は事実テーブルの属性に含まれる列に対する相関値の小さい列ほど上位の階層となるように各列について階層関係に係る順位付けを行う順位付けステップ、及び
    コンピュータが、前記順位付けステップにおける順位付けの階層関係で前記処理対象次元テーブルの各列の次元階層を抽出する次元階層抽出ステップ、
    をコンピュータに実行させるための次元階層抽出プログラム。
JP2005143319A 2005-05-16 2005-05-16 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム Expired - Fee Related JP4159099B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005143319A JP4159099B2 (ja) 2005-05-16 2005-05-16 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム
US11/434,271 US7499944B2 (en) 2005-05-16 2006-05-15 Method and apparatus for processing a dimension table and deriving a hierarchy therefrom

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005143319A JP4159099B2 (ja) 2005-05-16 2005-05-16 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2006318422A JP2006318422A (ja) 2006-11-24
JP4159099B2 true JP4159099B2 (ja) 2008-10-01

Family

ID=37420410

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005143319A Expired - Fee Related JP4159099B2 (ja) 2005-05-16 2005-05-16 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム

Country Status (2)

Country Link
US (1) US7499944B2 (ja)
JP (1) JP4159099B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
EP2164007A1 (en) * 2008-09-11 2010-03-17 Neutrino Concepts Ltd. Data storage and fusion layer
US7970728B2 (en) * 2008-10-23 2011-06-28 International Business Machines Corporation Dynamically building and populating data marts with data stored in repositories
US8027981B2 (en) * 2008-12-10 2011-09-27 International Business Machines Corporation System, method and program product for classifying data elements into different levels of a business hierarchy
US8543535B2 (en) 2010-02-24 2013-09-24 Oracle International Corporation Generation of star schemas from snowflake schemas containing a large number of dimensions
US10437846B2 (en) 2010-05-28 2019-10-08 Oracle International Corporation System and method for providing data flexibility in a business intelligence server using an administration tool
US8311975B1 (en) * 2011-02-28 2012-11-13 Allan Michael Gonsalves Data warehouse with a domain fact table
US10157175B2 (en) 2013-03-15 2018-12-18 International Business Machines Corporation Business intelligence data models with concept identification using language-specific clues
US10698924B2 (en) 2014-05-22 2020-06-30 International Business Machines Corporation Generating partitioned hierarchical groups based on data sets for business intelligence data models
US20160019251A1 (en) * 2014-07-17 2016-01-21 Lexmark International Technology, SA System and Methods for Efficiently Storing Heterogeneous Data Records Having Low Cardinality
US10002179B2 (en) 2015-01-30 2018-06-19 International Business Machines Corporation Detection and creation of appropriate row concept during automated model generation
US10437793B2 (en) * 2015-07-24 2019-10-08 Oracle International Corporation BI cloud services data modeling denormalized table introspection algorithm
US9984116B2 (en) 2015-08-28 2018-05-29 International Business Machines Corporation Automated management of natural language queries in enterprise business intelligence analytics
KR101591324B1 (ko) * 2015-11-20 2016-02-03 (주)다봄소프트 데이터의 계층관계 추출시스템 및 그 방법
US11086895B2 (en) 2017-05-09 2021-08-10 Oracle International Corporation System and method for providing a hybrid set-based extract, load, and transformation of data
CN110427604B (zh) * 2019-08-15 2022-12-06 北京明略软件系统有限公司 表格整合方法和装置
US11379444B1 (en) * 2021-01-28 2022-07-05 International Business Machines Corporation Data-analysis-based facility for adjusting trace fields of a database trace
EP4323889A1 (en) * 2021-04-15 2024-02-21 Sigma Computing, Inc. Data visualization with derived dimensional hierarchy

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3366257B2 (ja) 1998-07-07 2003-01-14 エヌイーシーシステムテクノロジー株式会社 データウェアハウステストデータ作成装置
JP2000099542A (ja) 1998-09-25 2000-04-07 Ricoh Co Ltd 生産実績の問い合わせ及びデータベースの問い合わせ装置
JP3651560B2 (ja) 1998-12-25 2005-05-25 三菱電機株式会社 多次元データベースにおける木構造をもつ概念データの合成装置並びにその方法
JP2000259723A (ja) 1999-03-09 2000-09-22 Toshiba Corp 情報関係チューニング装置及びプログラムを記憶したコンピュータ読み取り可能な記憶媒体
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
JP2002007435A (ja) 2000-06-20 2002-01-11 Nec Corp 対話的分析データベースシステム及び対話的分析プログラムを記録した記録媒体
JP2002032893A (ja) 2000-07-18 2002-01-31 Mitsubishi Heavy Ind Ltd 道路交通量制御方法とそのシステム
US20020099563A1 (en) * 2001-01-19 2002-07-25 Michael Adendorff Data warehouse system
US6643646B2 (en) 2001-03-01 2003-11-04 Hitachi, Ltd. Analysis of massive data accumulations using patient rule induction method and on-line analytical processing
US20030050825A1 (en) * 2001-09-05 2003-03-13 Impactrx, Inc. Computerized pharmaceutical sales representative performance analysis system and method of use
US7020661B1 (en) * 2002-07-10 2006-03-28 Oracle International Corporation Techniques for pruning a data object during operations that join multiple data objects
US7383257B2 (en) * 2003-05-30 2008-06-03 International Business Machines Corporation Text explanation for on-line analytic processing events
US7089266B2 (en) 2003-06-02 2006-08-08 The Board Of Trustees Of The Leland Stanford Jr. University Computer systems and methods for the query and visualization of multidimensional databases
US7844570B2 (en) * 2004-07-09 2010-11-30 Microsoft Corporation Database generation systems and methods

Also Published As

Publication number Publication date
JP2006318422A (ja) 2006-11-24
US20060259507A1 (en) 2006-11-16
US7499944B2 (en) 2009-03-03

Similar Documents

Publication Publication Date Title
JP4159099B2 (ja) 次元テーブル処理装置、次元階層抽出装置、次元テーブル処理方法、次元階層抽出方法及びプログラム
US10885112B2 (en) System and method for non-programmers to dynamically manage multiple sets of XML document data
JP3213585B2 (ja) データ検索方法及び装置、データ検索システム、記録媒体
US8886617B2 (en) Query-based searching using a virtual table
US5455945A (en) System and method for dynamically displaying entering, and updating data from a database
US5826257A (en) Method and structure for maintaining and utilizing a lookup value associated with a stored database value
US6970882B2 (en) Unified relational database model for data mining selected model scoring results, model training results where selection is based on metadata included in mining model control table
US5611076A (en) Multi-model database management system engine for databases having complex data models
US7015911B2 (en) Computer-implemented system and method for report generation
US7437379B2 (en) Efficient storage and access in a database management system
US5819086A (en) Computer system for creating semantic object models from existing relational database schemas
US20040153469A1 (en) Database comparator
US20070005619A1 (en) Method and system for detecting tables to be modified
US7890532B2 (en) Complex data access
JP5175284B2 (ja) スプレッドシートおよびその他の文書の記憶および処理
US7083091B2 (en) Commodity information management program, computer readable medium storing the program, and data structure of commodity classification master database used by the program
JP2008083992A (ja) 構造化文書検索支援装置およびプログラム
CN106776704A (zh) 统计信息收集方法和装置
JP2842487B2 (ja) データ編集方式
US7987203B2 (en) Method of processing data for a system model
JP2785317B2 (ja) ソフトウェア標準化方法
JPH06236305A (ja) 関係型データベースにおけるカーソル機能実現方法
JP2003233516A (ja) データベース、コンピュータ読取可能なプログラム、データベース管理システム、データベースの新規登録方法、データベースの検索方法、および、データベースの更新登録方法
JP2008234429A (ja) 部分ライブラリ構築装置、プログラムおよび部分ライブラリ構築方法
Ganguly et al. A Brief Survey on Issues & Approaches of Data Cleaning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071207

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20071219

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20071228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080319

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080410

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080709

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20080709

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080714

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110725

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees