(57)【要約】 【課題】  関連する属性のデータを分析的にモデル化する際の、複雑さおよび手間を軽減する。【解決手段】  関連する属性のデータを分析的にモデル化するシステムおよび方法が開示されている。単一の次元が関連する属性の各々にしたがってデータを提供するために用いられる。分析的データモデルのメジャーは、データの属性の双方に従った次元によって結び付けられており、それによってメジャーを双方の属性にしたがって次元によって分析する。【選択図】  図５
2004164592.tif 000002
【特許請求の範囲】
【請求項１】
データの第１および第２テーブルと組み合わせて、第１テーブルは第１および第２属性にしたがって第１タイプを編成し、第２テーブルは第３属性にしたがって第２タイプを編成し、第１テーブルの第１属性は第２テーブルの第３属性と関連し、それにより第１テーブルは第２テーブルを相互参照できるようになし、および第１テーブルの第２属性は第２テーブルの第３属性と関連して、それにより第１テーブルは第２テーブルを相互参照できるようになした方法において、
第１テーブルの第１タイプにしたがってメジャーをモデル化するステップと、
第２テーブルの第２タイプにしたがって次元をモデル化するステップと、
第１テーブルの第１属性および第２テーブルの第３属性にしたがってメジャーを次元に結合化して、第１属性にしたがって次元によってメジャーを分析できるようにするステップと、
第１テーブルの第２属性および第２テーブルの第３属性にしたがって、メジャーを次元に結合して、第２属性にしたがって次元によってメジャーを分析できるようにするステップとを備え、次元によって第１テーブルの第１属性および第１テーブルの第２属性の双方にしたがってデータを提供することを特徴とする方法。
【請求項２】
第１テーブルの第１タイプにしたがって、メジャーをモデル化するステップを有し、第１テーブルはリレーショナル型データベースに格納されたデータを有することを特徴とする請求項１に記載の方法。
【請求項３】
第２テーブルの第２タイプにしたがって、次元をモデル化するステップを有し、第２テーブルはリレーショナル型データベースに格納されたデータを有することを特徴とする請求項１に記載の方法。 
【請求項４】
第２テーブルの第２タイプにしたがって、次元をモデル化するステップを有し、第２テーブルは、その中で階層的に編成されたデータを有することを特徴とする請求項１に記載の方法。
【請求項５】
第２テーブルの階層的な構造にしたがって、次元のデータを集積するステップを有することを特徴とする請求項４に記載の方法。
【請求項６】
第１テーブルの第１タイプにしたがって、データキューブのメジャーをモデル化するステップを有することを特徴とする請求項１に記載の方法。
【請求項７】
第１テーブルの第１タイプにしたがって、オンライン分析処理のために、フォーマット化されたデータキューブのメジャーをモデル化するステップを有することを特徴とする請求項６に記載の方法。
【請求項８】
第２テーブルの第２タイプにしたがって、データキューブの次元をモデル化するステップを有することを特徴とする請求項１に記載の方法。
【請求項９】
第２テーブルの第２タイプにしたがって、オンライン分析処理のために、フォーマット化されたデータキューブの次元をモデル化するステップを有することを特徴とする請求項８に記載の方法。
【請求項１０】
データの第１および第２テーブルと組み合わせて、第１テーブルは第１および第２属性にしたがって第１タイプを編成し、第２テーブルは第３属性にしたがって第２タイプを編成し、第１テーブルの第１属性は第２テーブルの第３属性と関連し、それにより第１テーブルは第２テーブルを相互参照できるようになし、および第１テーブルの第２属性は第２テーブルの第３属性と関連して、それにより第１テーブルは第２テーブルを相互参照できるようになしたコンピュータにより読み取り可能な命令を格納したコンピュータ読み取り可能な媒体において、
第１テーブルの第１タイプにしたがってメジャーをモデル化するステップと、
第２テーブルの第２タイプにしたがって次元をモデル化するステップと、
第１テーブルの第１属性および第２テーブルの第３属性にしたがってメジャーを次元に結合化して、第１属性にしたがって次元によってメジャーを分析できるようにするステップと、
第１テーブルの第２属性および第２テーブルの第３属性にしたがって、メジャーを次元に結合して、第２属性にしたがって次元によってメジャーを分析できるようにするステップとを備え、次元によって第１テーブルの第１属性および第１テーブルの第２属性の双方にしたがってデータを提供することを特徴とするコンピュータ読み取り可能な媒体。
【請求項１１】
第１テーブルの第１タイプにしたがって、メジャーをモデル化するステップを実行するための命令を有し、第１テーブルはリレーショナル型データベースに格納されたデータを有することを特徴とする請求項１０に記載のコンピュータ読み取り可能媒体。
【請求項１２】
第２テーブルの第２タイプにしたがって、次元をモデル化するステップを実行するための命令を有し、第２テーブルはリレーショナル型データベースに格納されたデータを有することを特徴とする請求項１０に記載のコンピュータ読み取り可能媒体。
【請求項１３】
第２テーブルの第２タイプにしたがって、次元をモデル化するステップを実行するための命令を有し、第２テーブルは階層的に編成されたデータを有することを特徴とする請求項１０に記載のコンピュータ読み取り可能媒体。
【請求項１４】
第２テーブルの階層構造にしたがって、次元のデータを集積するステップを実行するための命令を有することを特徴とする請求項１３に記載のコンピュータ読み取り可能媒体。
【請求項１５】
第１テーブルの第１タイプにしたがって、データキューブのメジャーをモデル化するステップを実行するための命令を有することを特徴とする請求項１０のコンピュータ読み取り可能媒体。
【請求項１６】
第１テーブルの第１タイプにしたがって、オンライン分析処理のためにフォーマット化されたデータキューブのメジャーをモデル化するステップを実行するための命令を有することを特徴とする請求１５のコンピュータ読み取り可能媒体。
【請求項１７】
第２テーブルの第２タイプにしたがって、データキューブの次元をモデル化するステップを実行するための命令を有することを特徴とする請求１０のコンピュータ読み取り可能媒体。
【請求項１８】
第２テーブルの第２タイプにしたがって、オンライン分析処理のために、フォーマット化されるデータキューブの次元をモデル化するステップを実行するための命令を有することを特徴とする請求１７のコンピュータ読み取り可能媒体。
【請求項１９】
データの第１および第２テーブルと組み合わせて、第１テーブルは第１および第２属性にしたがって第１タイプを編成し、第２テーブルは第３属性にしたがって第２タイプを編成し、第１テーブルの第１属性は第２テーブルの第３属性と関連し、それにより第１テーブルは第２テーブルを相互参照できるようになし、および第１テーブルの第２属性は第２テーブルの第３属性と関連して、それにより第１テーブルは第２テーブルを相互参照できるようになしたシステムにおいて、
コンピュータが実行可能な命令を実行するように動作するプロセッサと、コンピュータが実行可能な命令を格納して、
第１テーブルの第１タイプにしたがってメジャーをモデル化するステップと、
第２テーブルの第２タイプにしたがって次元をモデル化するステップと、
第１テーブルの第１属性および第２テーブルの第３属性にしたがってメジャーを次元に結合化して、第１属性にしたがって次元によってメジャーを分析できるようにするステップと、
第１テーブルの第２属性および第２テーブルの第３属性にしたがって、メジャーを次元に結合して、第２属性にしたがって次元によってメジャーを分析できるようにするステップとを備え、次元によって第１テーブルの第１属性および第１テーブルの第２属性の双方にしたがってデータを提供するステップとを実行するメモリとを備えたことを特徴とするシステム。
【請求項２０】
第１テーブルの第１タイプにしたがって、メジャーをモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項１９に記載のシステム。
【請求項２１】
第１テーブルの第１タイプにしたがって、メジャーをモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項１９に記載のシステム。
【請求項２２】
第２テーブルの第２タイプにしたがって、次元をモデル化するステップを実行するためのコンピュータ実行可能命令を有し、その第２テーブルは、その中で階層的に編成されたデータを有することを特徴とする請求項１９に記載のシステム。
【請求項２３】
第２テーブルの階層構造にしたがって、次元のデータを集積するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項２２に記載のシステム。
【請求項２４】
第１テーブルの第１タイプにしたがって、データキューブのメジャーをモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求１９のシステム。
【請求項２５】
第１テーブルの第１タイプにしたがって、オンライン分析処理のためにフォーマットされるデータキューブのメジャーをモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項２４に記載のシステム。
【請求項２６】
第２テーブルの第２タイプにしたがって、データキューブの次元をモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項１９に記載のシステム。
【請求項２７】
第２テーブルの第２タイプにしたがって、オンライン分析処理のためにフォーマットされるデータキューブの次元をモデル化するステップを実行するためのコンピュータ実行可能命令を有することを特徴とする請求項２６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リレーショナル型データベース中に編成および格納されたデータを分析的にモデル化するためのシステムおよび方法に関し、より詳しくは、関連する属性にしたがって編成されたデータを分析的にモデル化することに関する。
【背景技術】
【０００２】
オンライン分析処理（ＯＬＡＰ）は、多くのデータウェアハウスおよびビジネス分析システムの重要な部分である。ＯＬＡＰサービスは多次元の情報の速い分析を提供する。この目的のために、ＯＬＡＰサービスは、直感的および自然な方法でデータの多次元のアクセスおよびナビゲーションを提供し、それにより興味のある特定のデータへと突き進むことができる全体的な視野のデータを提供する。速さおよび応答時間はＯＬＡＰサービスの重要な属性であり、その属性によりユーザは効率的な方法でデータをオンライン閲覧して、分析することができる。さらに、ＯＬＡＰサービスは、典型的には、分析下にあるデータに対する進みと遅れの指標を格付けし、集計および計算するための分析ツールを提供する。
【０００３】
この状況において、ユーザのデータの認識にしたがって、ＯＬＡＰキューブはモデル化される。そのキューブは多次元（ｄｉｍｅｎｓｉｏｎ）を有し、その各次元はデータの属性にしたがってモデル化されている。典型的には、各次元と関連付けられた階層構造がある。例えば、時間の次元は年を含み、年は月に細分化され、月は週に細分化され、週は日に細分化される。一方、地理学の次元は国を含み、国は州に細分化され、州は市に細分化される。次元メンバは、キューブ内の特定のセルまたはある範囲のセルを特定するためのインデックスとしての働きをしている。
【０００４】
ＯＬＡＰサービスは、例えば、オンライン取引処理（ＯＬＴＰ）のデータベースなどのリレーショナル型データベースに格納されているデータを、分析的にモデル化するためにしばしば利用される。リレーショナル型データベースに格納されるデータは、各テーブルが特定のデータタイプに対応するデータを有する複数のテーブルにしたがって編成することができる。特定のデータタイプに対応するテーブルは、データの属性に対応する列にしたがって編成することができる。例えば、「販売」のタイプに対応するデータは、「発送先（Ｓｈｉｐ−ｔｏ）顧客ＩＤ」、「請求先（Ｂｉｌｌ−ｔｏ）顧客ＩＤ」および「販売量」の列を持つ「販売」テーブル中で編成することができる。更に、「顧客」のタイプに対応するデータは、「顧客ＩＤ」、「名前」、「市」および「州」の列を持つ「顧客」テーブル中で編成することができる。
【０００５】
「販売」テーブルの「発送先の顧客ＩＤ」および「請求先の顧客ＩＤ」の属性は、関連付けられた属性である。その理由は、それら双方は「顧客」テーブルの「顧客ＩＤ」の属性を相互に参照する。各発送先の顧客に対して、顧客の「名前」、「市」および「州」に対応するデータは、発送先の顧客の「顧客ＩＤ」を有する行上の「顧客」テーブル中に格納される。同様に、各請求先の顧客に対して、顧客の「名前」、「市」および「州」に対応するデータは、請求先の顧客の「顧客ＩＤ」を有する行上の「顧客」テーブル中に格納される。
【０００６】
リレーショナル型データベースからのデータを分析的にモデル化することに関して生じる１つの問題は、そのような関連する属性をもつデータについてどの様にしたら最善の考慮を払えるかである。関連する属性を有するデータを分析的にモデル化するための既存の方法では、複数の次元のそれぞれは、関連する属性の１つにデータを提供する。例えば、リレーショナル型データベースの「販売」および「顧客」テーブル中に格納されるデータにしたがって、ＯＬＡＰキューブをモデル化することができる。キューブは「顧客」のタイプにしたがってモデル化された第１の次元を有し、それにより「発送先顧客」の属性にしたがってデータを提供し、および「顧客」のタイプにしたがってモデル化された第２の次元を有し、それにより「請求先顧客」の属性にしたがってデータを提供する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
関連する属性の１つにそれぞれデータを提供する２つの次元をモデル化することは、複雑で手間のかかるプロセスである。その理由は、各次元に対して、データを複数のテーブルから検索しなければならないからである。関連する属性の１つにそれぞれデータを提供する２つの次元を持つことよりも、むしろ、関連する属性の双方にデータを提供する単一の次元をキューブが持つならば、キューブをモデル化するのに必要とされる複雑さおよび所要の時間は大いに短縮される。したがって、関連する属性のデータを分析的にモデル化するためのシステムおよび方法であって、データに複数の関連する属性を提供する単一の次元を有するシステムおよび方法が当該技術分野において必要である。
【課題を解決するための手段】
【０００８】
したがって、本発明では、関連する属性のデータを分析的にモデル化するためのシステムおよび方法が開示される。リレーショナル型データベースでは、第１テーブルにより第１属性および第２属性にしたがって第１タイプを編成し、および第２テーブルにより第３属性に従って第２タイプを編成する。第１テーブルの第１属性を、第２テーブルの第３属性に関連させて、第１テーブルを第２テーブルと相互参照できるようにする。第１テーブルの第２属性を第２テーブルの第３属性に関連させて、第１テーブルを第２テーブルと相互参照できるようにする。
【０００９】
リレーショナル型データベース中に格納されたデータを分析的にモデル化する。第１テーブルの第１タイプにしたがってメジャーをモデル化する。第２テーブルの第２タイプにしたがって次元をモデル化する。メジャーは第１テーブルの第１属性および第２テーブルの第３属性にしたがって次元と結びついて、それによりメジャーは第１属性にしたがって次元により分析される。メジャーは、第１テーブルの第２属性および第２テーブルの第３属性にしたがって次元と結びついて、それによりメジャーは第２属性にしたがって次元により分析される。したがって、第１テーブルの第１属性および第１テーブルの第２属性の双方にしたがって、その次元はデータを提供する。
【発明の効果】
【００１０】
「顧客」のタイプにしたがってそれぞれモデル化される２つの次元４１０、４１２を有している図４の先行技術のデータキューブ４００と異なって、図５のデータキューブ５００は、「顧客」のタイプにしたがってモデル化される単一の次元５１０のみを有し、「発送先顧客」の属性２１０および「請求先顧客」の属性２１２の双方に対してデータを提供し、実際に、特定の質問にしたがって各属性２１０と２１２の役割を担う。第２の次元の重複を排除することによって、単一の「役割負担（ｒｏｌｅ  ｐｌａｙｉｎｇ）」次元によって、キューブが定義付けるのを容易になり、およびキューブを設けるのに必要とする時間およびキューブ中のデータに必要とされる記憶量が減る。
【発明を実施するための最良の形態】
【００１１】
関連する属性を有するデータを分析的にモデル化するためのシステムおよび方法を、図面を参照して以下に開示する。図面に関して以下に与えられる説明は、説明の目的のためのみであって、本発明を図示の特定の実施形態に制限する意図はないことを当業者は容易に理解されよう。説明を通して、同様の参照番号は、各図面中の同様の要素を参照するために使用される。
【００１２】
コンピュータ環境
図１および以下の記述は、本発明および／または本発明の一部分を実施することのできる適切なコンピュータ環境の簡潔な一般的な説明を提供することを意図している。必ずしも必要ではないが、本発明は、クライアントワークステーションやサーバなどのようなコンピュータによって実行される、プログラムモジュールなどのようなコンピュータ実行可能な命令との一般的な関係で説明される。一般に、プログラムモジュールは、特定のタスクを実行するか、または特定の抽象データタイプを実行するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。更に、本発明および／または本発明の一部分は、携帯装置、マルチプロセッサシステム、マイクロプロセッサに基づいたまたはプログラマブルな消費者エレクトロニクス装置、ネットワークＰＣ、ミニコンピュータ、メインフレーム・コンピュータなどを含む他のコンピュータ・システム構成で実施してもよいことが理解されよう。また、通信ネットワークを通してリンクされるリモート処理装置によってタスクを実行する分散コンピューティング環境で本発明を実施してもよい。分散コンピューティング環境では、プログラムモジュールをローカルおよび遠隔のメモリ記憶装置の双方に配置してもよい。
【００１３】
図１に示すように、例示の汎用のコンピューティングシステムは慣例のパーソナルコンピュータ１２０か同様のものを含み、このコンピュータ１２０は処理ユニット１２１、システムメモリ１２２およびシステムメモリを含む種々のシステムのコンポーネントを処理ユニット１２１に結合するシステムバス１２３を含む。システムバス１２３は、種々のタイプのバスアーキテクチャのいずれかを用いたメモリバスまたはメモリコントローラ、周辺バスおよびローカルバスを含む、いくつかのタイプのバス構造のいずれかを用いることができる。システムメモリはリードオンリメモリ（ＲＯＭ）１２４およびランダムアクセスメモリ（ＲＡＭ）１２５を含む。基本的な入出力システム１２６（ＢＩＯＳ）は、ＲＯＭ１２４に格納され、スタートアップの間などにおいてパーソナルコンピュータ１２０内の要素の間で情報を転送することを助ける基本的なルーチンを含んでいる。
【００１４】
パーソナルコンピュータ１２０は、ハードディスク（不図示）から読み取り、およびそれに書き込むためのハードディスクドライブ１２７、着脱可能な磁気ディスク１２９から読み取り、またはそれに書き込むための磁気ディスクドライブ１２８、およびＣＤ−ＲＯＭあるいは他の光学媒体のような着脱可能な光ディスク１３１から読み取るか、またはそれに書き込むための光ディスクドライブ１３０をさらに含むことができる。ハードディスクドライブ１２７、磁気ディスクドライブ１２８および光ディスクドライブ１３０は、ハードディスクドライブインターフェイス１３２、磁気ディスクドライブインターフェイス１３３および光ドライブインターフェイス１３４によってシステムバス１２３にそれぞれ結合される。これらドライブおよびそれらの関連するコンピュータ読み取り可能な媒体は、パーソナルコンピュータ１２０のための、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、および他のデータを有する不揮発性装置を提供する。
【００１５】
ここに示す例示の環境では、ハードディスク、着脱可能なディスク１２９、および着脱可能な光ディスク１３１が使用されるけれども、コンピュータによってアクセス可能なデータを格納できる他のタイプのコンピュータ読み取り可能な媒体もまた例示の動作環境下で使用できることは理解されよう。そのような、他のタイプの媒体は、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）などを含んでいる。
【００１６】
複数のプログラムモジュールがハードディスク、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４またはＲＡＭ１２５に格納されている。オペレーティングシステム１３５、１つまたは２つ以上のアプリケーションプログラム１３６、他のプログラムモジュール１３７およびプログラムデータ１３８を含んでいる。ユーザはキーボード１４０およびポインティング・デバイス１４２などの入力装置を通してパーソナルコンピュータ１２０にコマンドおよび情報を入力することができる。他の入力装置（不図示）はマイクロホン、ジョイスティック、ゲームパッド、サテライトディスク、スキャナなどを含むことができる。これらおよび他の入力装置は、システムバスに結合されるシリアルポートインタフェース１４６を通して処理ユニット１２１にしばしば接続されるが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス（ＵＳＢ）などの他のインタフェースによって接続してもよい。モニタ１４７または他のタイプのディスプレイ装置もまた、ビデオアダプタ１４８のようなインタフェースを通してシステムバス１２３に接続される。モニタ１４７に加えて、パーソナルコンピュータはスピーカおよびプリンタなどのような他の周辺出力装置（不図示）を一般的には含んでいる。図１の例示システムはホストアダプタ１５５、スモールコンピュータシステムインターフェイス（ＳＣＳＩ）バス１５６、およびＳＣＳＩバス１５６に接続された外部記憶装置１６２を含んでいる。
【００１７】
パーソナルコンピュータ１２０は、リモートコンピュータ１４９のような１つまたは２つ以上のリモートコンピュータへの論理的な接続を使用するネットワーク環境中で動作することができる。リモートコンピュータ１４９は、別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置または他の共通なネットワークノードであってもよく、代表的には、パーソナルコンピュータ１２０につき上述した多くのあるいは全ての要素を含んでいるが、記憶装置１５０だけが図１に示されている。図１に示されている論理的な接続は、ローカルエリアネットワーク（ＬＡＮ）１５１および広域ネットワーク（ＷＡＮ）１５２を含んでいる。そのようなネットワーク環境は、オフィス、企業内コンピュータネットワーク、イントラネット、およびインターネットにおいて普通となっている。
【００１８】
ＬＡＮネットワーク環境下で使用されるとき、パーソナルコンピュータ１２０は、ネットワークインタフェースまたはアダプタ１５３を通してＬＡＮ１５１に接続される。ＷＡＮネットワーク環境下で使用されるとき、パーソナルコンピュータ１２０は、インターネットのような広域ネットワーク１５２にわたってコミュニケーションを確立するための、モデム１５４か他の手段を含んでいる。モデム１５４は、内部または外部にあってもよいが、シリアルポートインタフェース１４６を通してシステムバス１２３に接続される。ネットワークの環境では、パーソナルコンピュータ１２０、または前記コンピュータまたはその一部に関連して示されるプログラムモジュールは、遠隔記憶装置中に格納することができる。図示のネットワーク接続は例示であって、コンピュータ間にコミュニケーションリンクを確立する他の手段を用いてもよいことは理解されよう。
【００１９】
本発明のシステムおよび方法
例えば、オンライン分析処理（ＯＬＡＰ）のような分析データサービスを用いて、オンライン取引処理（ＯＬＴＰ）データベースのようなリレーショナル型データベースに格納されたデータをモデル化することができる。前述したように、リレーショナル型データベースに格納されたデータは複数のテーブルにしたがって編成され、その各テーブルは特定のデータタイプに対応したデータを有している。特定のデータタイプに対応するテーブルは、データの属性に対応する列にしたがって編成される。そのようなテーブルの１つを図２に示し、「販売」デーブル２００中に編成されたタイプ「販売」に対応するデータを有し、このテーブルは列「発送先の顧客ＩＤ」２１０、「請求先の顧客ＩＤ」２１２および「販売量」２１４、および個別の顧客の販売の登録エントリに対応する行を備える。別のそのようなテーブルを図３で示されている。このテーブルは、「顧客」タイプに対応するデータを有し、「顧客」タイプは「顧客」デーブル３００中で編成される。このテーブルは列、すなわち、「顧客ＩＤ」３１０、「名前」３１２、「市」３１４、「州」３１６の列、および、個々の顧客の販売登録に対応する行を有する。
【００２０】
「販売」テーブル２００からの「発送先顧客ＩＤ」２１０の属性および「請求先顧客ＩＤ」２１２の属性は、関連する属性である。その理由は、それらは「顧客」テーブル３００からの「顧客ＩＤ」の属性３１０を共に相互参照しているからである。すなわち、「販売」テーブル２００の各発送先顧客は、「顧客」テーブル３００にある「顧客ＩＤ」３１０と、「顧客」テーブル３００の対応した発送先顧客ＩＤを有する行上に格納されている発送先顧客の名前および市に対応したデータとにしたがって参照される。
【００２１】
同様に、「販売」テーブル２００の各請求先顧客は、「顧客」テーブル３００にある「顧客ＩＤ」３１０と、「顧客」テーブル３００の対応した請求先顧客ＩＤを有する行上に格納されている請求先顧客の名前および市に対応したデータとにしたがって参照される。
【００２２】
ここで、図４を参照するに、「販売」テーブル２００および「顧客」テーブル３００からのデータの先行技術によるＯＬＡＰモデルが、データキューブ４００に編成されたものとして示されている。キューブ４００は、「販売」のタイプにしたがってモデル化された「販売量」４０５のメジャーを有している。キューブ４００は「顧客」のタイプにしたがってモデル化され、「発送先顧客」の属性２１０にしたがってデータを提供する第１の次元４１０を有する。キューブ４００は同じ「顧客」のタイプにしたがってモデル化され、「請求先顧客」の属性２１２にしたがってデータを提供する第２の次元４１２をも有している。理解されるように、他の次元（不図示）も他のＯＬＴＰテーブル（不図示）に基づいて存在してもよい。
【００２３】
キューブ４００において、第１の次元４１０および第２の次元４１２は、それぞれ関連する属性「発送先顧客ＩＤ」２１０および「請求先顧客ＩＤ」２１２の一つにデータを提供する。２つの関連する属性２１０および２１２の１つにデータを提供する、２つの次元４１０および４１２を有するキューブ４００をモデル化することは、複雑であり時間を消費する処理である。その理由は、各次元に対して、複数のテーブル２００および３００からデータを検索しなければならないからである。キューブ４００をモデル化するのに必要とされる複雑さおよび時間は、各々が関連する属性２１０および２１２の１つにデータを提供する２つの次元４１０および４１２を有するよりも、もしキューブ４００が、関連する属性２１０および２１２の双方にデータを提供する単一の次元を有するとしたならば、大いに減少される。従って、本発明のシステムおよび方法は、関連した属性２１０および２１２双方にしたがってデータを提供する単一の次元でキューブをモデル化する。
【００２４】
特に、ここで、図５を参照するに、本発明の１つの実施形態では、分析的データキューブ５００は、「販売」テーブル２００および「顧客」テーブル３００からのデータのＯＬＡＰモデルである。図からわかるように、キューブ５００は、「販売」タイプにしたがってモデル化されたメジャー「販売量」５０５を有する。キューブ５００は、図３の「顧客」テーブル３００の「顧客」のタイプにしたがってモデル化された単一の次元５１０をも有し、そこで、そのような次元５１０は、「販売」テーブル２００の「発送先顧客」の属性２１０および「請求先顧客」の属性２１２の双方にしたがってデータを提供する。「顧客」のタイプにしたがってそれぞれモデル化される２つの次元４１０、４１２を有している図４の先行技術のデータキューブ４００と異なって、図５のデータキューブ５００は、「顧客」のタイプにしたがってモデル化される単一の次元５１０のみを有し、「発送先顧客」の属性２１０および「請求先顧客」の属性２１２の双方に対してデータを提供し、実際に、特定の質問にしたがって各属性２１０と２１２の役割を担う。第２の次元の重複を排除することによって、単一の「役割負担（ｒｏｌｅ  ｐｌａｙｉｎｇ）」次元によって、キューブが定義付けるのを容易になり、およびキューブを設けるのに必要とする時間およびキューブ中のデータに必要とされる記憶量が減る。
【００２５】
図６に示されるように、次元５１０は大きく単純化した形態でデータ木６００によって表わされる次元の階層を有する。最上行のノード６１０および６１１は、図３の「州」の属性３１６に対応した「州」のノードである。第２行のノード６２０−６２４は、図３の「市」の属性３１４に対応した「市」のノードである。第３行のノード６３０−６３７は、図３の「氏名」の属性３１２に対応した「氏名」のノードである。第４行のノード６４０−６４９は、図３の「顧客ＩＤ」の属性３１０に対応した「顧客ＩＤ」のノードである。
【００２６】
理解されるように、階層的に編成された分析的データモデルの利点は、このようなモデルによって質問に応答してデータが集積されることである。特に、図６の次元の階層にしたがって集積されたデータは、階層のいずれのレベルに基づいて集積してもよい。例えば、質問が特定の市に対する販売量を要求するときは、データを「市」の属性３１４とデータ木６００の第２行とによって集積することができる。
【００２７】
質問に応答してキューブ５００を使用することは、関連ある公衆にとって自明なことである。したがって、特定の事例を提供しない。一般的に、特定の質問が請求先または発送先顧客にしたがってデータを必要とするか否かに基づいて、次元は各請求先または各発送先顧客の役割を担うように動作する。
【００２８】
本発明に関連して実行される処理を実行するのに必要なプログラミングは、比較的簡単であり、プログラミング関係者にとって、自明のことである。したがって、そのようなプログラミングはここには添付されていない。いかなる特定のプログラミングも、本発明の精神および範囲から逸脱しない限り、本発明を実施するのに用いることができる。
【００２９】
本発明は特定の実施形態に関して記述され説明されているが、改良および変更が、特許請求の範囲に記載し述べられている本発明の原則から逸脱することなく実施可能なことは、当業者にとって理解できよう。例えば、発明が「販売」テーブルおよび「顧客」テーブルに関して説明されているが、本発明はリレーショナル型データベースからのいかなるテーブルにも関連して用いることができる。さらに、本発明の分析データモデルはいかなる個数のデータ属性に対応するいかなる個数の次元を有していてもよい。したがって、本発明の範囲を示す特許請求の範囲が参照されるべきである。
【図面の簡単な説明】
【００３０】
【図１】図１は本発明および／またはその一部分の形態を組み込むことのできる汎用計算機システムを示すブロック図である。
【図２】図２は「販売」データに対応するリレーショナル型データベースのテーブルの例を示す図である。
【図３】図３は「顧客」データに対応するリレーショナル型データベースのテーブルの例を示す図である
【図４】図４は図２および３のテーブルから得られた従来技術の分析データキューブを示す図である。
【図５】図５は本発明の１実施形態にしたがって図２および３のテーブルから得られた分析データキューブを示す図である。
【図６】図６は複数の段階にしたがって１次元に編成されたデータを示す階層的なデータ木の図である。
【図１】
2004164592.tif 000003
【図２】
2004164592.tif 000004
【図３】
2004164592.tif 000005
【図４】
2004164592.tif 000006
【図５】
2004164592.tif 000007
【図６】
2004164592.tif 000008
【外国語明細書】
2004164592.tif 000009
2004164592.tif 000010
2004164592.tif 000011
2004164592.tif 000012
2004164592.tif 000013
2004164592.tif 000014
2004164592.tif 000015
2004164592.tif 000016
2004164592.tif 000017
2004164592.tif 000018
2004164592.tif 000019
2004164592.tif 000020
2004164592.tif 000021
2004164592.tif 000022
2004164592.tif 000023
2004164592.tif 000024
2004164592.tif 000025
2004164592.tif 000026
2004164592.tif 000027
2004164592.tif 000028
2004164592.tif 000029
2004164592.tif 000030