ディメンショナル・モデリングは、キューブ操作でデータを表現し、OLAPデータ管理により適した論理データ表現とするものである。
ディメンジョンモデリングでは、トランザクションレコードは、頻繁に数値トランザクションデータである「ファクト」と、ファクトにコンテキストを与える参照情報である「ディメンション」のいずれかに分割されます。 例えば、販売トランザクションは、注文した製品の数や製品に支払った価格などの事実と、注文日、ユーザー名、製品番号、注文の出荷先、請求先の場所、注文を受けた担当セールスマンなどの次元に損傷することがあります。
次元モデリングの目的
次元モデリングの目的は次のとおりである:
- エンドクライアントが理解しやすくクエリを書きやすいデータベースアーキテクチャを作成すること。
次元モデリングの利点
次元モデリングの利点は次のとおりです:
Dimensional modeling is simple: 次元モデリングの手法により、倉庫設計者は、ビジネス顧客が容易に保持し、理解できるデータベース スキーマを作成することが可能になります。 図の読み方に関する膨大なトレーニングは必要なく、異なるデータ要素間の複雑な関係もありません。
次元モデリングはデータ品質を促進します。 スタースキーマは、ウェアハウス管理者がデータウェアハウスで参照整合性チェックを実施することを可能にします。 ファクト情報のキーは、関連するディメンションのエッセンスを連結したものなので、対応するディメンションレコードが適切に記述され、データベースにも存在する場合、ファクトレコードは積極的にロードされます。
参照整合性チェックの形式として外部キー制約を強制することにより、データウェアハウスDBAは破損した倉庫データに対して防御線を追加します。 データウェアハウスのサイズが大きくなるにつれて、パフォーマンスの最適化が緊急の関心事となります。 クエリに対する応答を得るために何時間も待たなければならない顧客は、すぐにウェアハウスに対して落胆してしまうでしょう。 集計は、クエリのパフォーマンスを最適化できる最も簡単な方法の1つです。
次元モデリングのデメリット
- 事実と次元の整合性を維持するために、さまざまな運用システムからレコードをデータウェアハウスにロードすると、複雑な作業が発生します。
- ディメンジョン手法を採用する組織がビジネスを行う方法を変更する場合、データウェアハウスの運用を修正するのは厳しい。
次元モデリングの要素
Fact
メジャーとコンテキストデータからなる関連データ項目の集合体である。
次元
それは1つのビジネス次元を記述するデータの集まりである。 7219>
Measure
ファクトの数値属性で、ディメンションに対するビジネスのパフォーマンスや振る舞いを表します。
関係のコンテキストを考慮すると、ディメンション・モデリングで使用される 2 つの基本的なモデルがあります:
- Star Model
- Snowflake Model
Star モデルはディメンション・モデルの基本構造である。 これは、1つの広い中央テーブル(ファクトテーブル)と、主テーブルを中心に放射状に配置された一連の小さなテーブル(ディメンジョン)を持っています。
Fact Table
Fact テーブルは、ビジネスにおける事実または尺度をデータ化するために使用されます。 ファクトは、企業にとって関心のある数値データ要素である。
ファクト・テーブルの特徴
ファクト・テーブルには、測定するものの数値が含まれています。 例えば、ファクト値が 20 の場合、ウィジェットが 20 個販売されたことを意味します。
各ファクト・テーブルには、関連するディメンジョン・テーブルへのキーが含まれます。 これらは、ファクト・テーブルの外部キーと呼ばれます。
ファクト・テーブルには通常、少数の列が含まれます。
ディメンジョン・テーブルと比較すると、ファクト・テーブルには多数の行があります。 ディメンション・テーブルは、ファクトを記述するフィールドを格納します。
ディメンション・テーブルの特徴
ディメンション・テーブルには、ファクトに関する詳細が格納されます。 それは、例として、ビジネスアナリストがデータとそのレポートをよりよく理解することを可能にします。
次元テーブルには、ファクトテーブルの数値に関する記述的データが含まれています。 つまり、ファクトの属性が含まれています。 たとえば、マーケティング分析機能のディメンション・テーブルには、時間、マーケティング地域、および製品タイプなどの属性が含まれます。
ディメンション・テーブルのレコードは非正規化されているので、通常は多数の列があります。 ディメンジョン・テーブルには、ファクト・テーブルよりもかなり少ない情報の行が含まれます。
ディメンジョン・テーブルの属性は、ドキュメントまたはクエリ結果表示で行見出しおよび列見出しとして使用されます。 都市と州は、ファクト・テーブルで店舗サマリーを表示できます。 アイテム・サマリーは、ブランド、色などで表示できます。 顧客情報は、名前と住所によって表示することができます。
Fact Table
時間ID | 商品ID | 顧客ID | 販売個数 |
---|---|---|---|
4 | 17 | 2 | 1 |
8 | 21 | 3 | 2 |
8 | 4 | 1 |
この例では、
と
があります。 ファクト・テーブルの顧客ID列は、ディメンジョン・テーブルと結合する外部キーです。 リンクをたどると、ファクト・テーブルの行2には、顧客3であるGauravが8日目に2つの商品を購入したという事実が記録されていることがわかります。
ディメンションテーブル
顧客ID | 名前 | 性別 | 所得 | 学歴 | 地域 |
---|---|---|---|---|---|
1 | Rohan | 男性 | 2 | 3 | 4 |
2 | Sandeep | 男性 | 3 | 5 | 1 |
3 | Gaurav | 男性 | 7 |
階層
階層は、ノードが次元属性で、そのアークが次元属性チーム間の多対一の関連をモデル化した有向木である。 ツリーのルートに配置された1つのディメンジョンと、それを定義するすべてのディメンジョン属性が含まれます。