データ ウェアハウスのディメンション モデリングとは何ですか? 学習タイプ
次元モデリング
次元モデリング (DM) は、データ ウェアハウス内のデータ ストレージ用に最適化されたデータ構造技術です。 ディメンション モデリングの目的は、データをより高速に取得できるようにデータベースを最適化することです。 ディメンション モデリングの概念は Ralph Kimball によって開発され、「ファクト」テーブルと「ディメンション」テーブルで構成されます。
データ ウェアハウスのディメンション モデルは、データ ウェアハウス内の値、残高、カウント、重量などの数値情報を読み取り、要約、分析するように設計されています。対照的に、リレーション モデルは、リアルタイムのオンライン トランザクション システムでのデータの追加、更新、削除に最適化されています。
これらの次元モデルとリレーショナル モデルには、特有の利点を持つ独自のデータ ストレージ方法があります。
たとえば、リレーショナル モードでは、正規化モデルと ER モデルによりデータの冗長性が削減されます。 逆に、データ ウェアハウスのディメンション モデルは、情報の取得とレポートの生成が容易になるようにデータを配置します。
したがって、次元モデルは次のような場合に使用されます。 データウェアハウスシステム リレーショナル システムには適していません。
次元データモデルの要素
事実
ファクトは、ビジネス プロセスからの測定/指標、またはファクトです。 販売ビジネス プロセスの場合、測定値は四半期の販売数になります。
次元
Dimension は、ビジネス プロセス イベントの周囲のコンテキストを提供します。 簡単に言えば、誰が、何を、どこで、事実を示します。 販売ビジネス プロセスでは、四半期ごとの販売数のディメンションは次のようになります。
- 誰 – 顧客名
- どこ – 場所
- 何を – 製品名
言い換えれば、ディメンションはファクト内の情報を表示するための窓です。
Attributes
属性は、ディメンション データ モデリングにおけるディメンションのさまざまな特性です。
Location ディメンションでは、属性は次のとおりです。
- 都道府県
- 国
- 郵便番号など
属性は、ファクトの検索、フィルタリング、または分類に使用されます。 ディメンション テーブルには属性が含まれます
ファクトテーブル
ファクト テーブルは、ディメンション モデリングにおける主要なテーブルです。
ファクトテーブルには以下が含まれます
- 測定値/事実
- ディメンションテーブルへの外部キー
寸法表
- ディメンション テーブルにはファクトのディメンションが含まれます。
- これらは外部キーを介してファクト テーブルに結合されます。
- ディメンション テーブルは非正規化されたテーブルです。
- ディメンション属性は、ディメンション テーブル内のさまざまな列です。
- ディメンションは、属性を活用してファクトの説明的な特徴を提供します。
- 指定された次元数に制限が設定されていません
- ディメンションには1つ以上の階層関係を含めることもできる。
データ ウェアハウスのディメンションの種類
以下は データ ウェアハウスのディメンションの種類:
- 適合寸法
- アウトリガー寸法
- 縮んだ寸法
- ロールプレイングの次元
- ディメンション対ディメンションテーブル
- ジャンクディメンション
- 次元の縮退
- 交換可能な次元
- ステップ寸法
次元モデリングの手順
次元モデリングの作成の正確さが、データ ウェアハウス実装の成功を左右します。 ディメンションモデルを作成する手順は次のとおりです。
- ビジネスプロセスの特定
- 粒子の識別 (詳細レベル)
- 寸法の確認
- 事実の特定
- ビルドスター
モデルでは、ビジネス プロセスの理由、金額、いつ、どこで、誰が、何を行うかを説明する必要があります。
ステップ 1) ビジネス プロセスを特定する
データウェアハウスがカバーすべき実際のビジネス プロセスを特定する。 これは、マーケティング、営業、人事などが考えられます。 データ分析 組織のニーズ。 ビジネス プロセスの選択は、そのプロセスで利用できるデータの品質にも依存します。 これはデータ モデリング プロセスの最も重要なステップであり、ここで失敗すると連鎖的で修復不可能な欠陥が発生する可能性があります。
ビジネス プロセスを記述するには、プレーン テキストを使用するか、基本的なビジネス プロセス モデリング表記法 (BPMN) または統一モデリング言語 (UML).
ステップ 2) 粒子を特定する
The Grain は、ビジネス上の問題/解決策の詳細レベルを表します。 これは、データ ウェアハウス内のテーブルの最低レベルの情報を特定するプロセスです。 テーブルに毎日の売上データが含まれている場合は、粒度を日単位にする必要があります。 テーブルに各月の合計売上データが含まれている場合、そのテーブルには月単位の粒度があります。
この段階では、次のような質問に答えます。
- 利用可能なすべての製品を保管する必要がありますか、それとも数種類の製品だけを保管する必要がありますか? この決定は、Datawarehouse 用に選択されたビジネス プロセスに基づいています。
- 製品の販売情報は月ごと、週ごと、日ごと、または時間ごとに保存されますか? この決定は、経営陣が要求するレポートの性質によって異なります。
- 上記の XNUMX つの選択肢はデータベースのサイズにどのような影響を与えますか?
穀物の例:
多国籍企業の CEO は、さまざまな場所での特定の製品の売上を毎日調べたいと考えています。
で、粒は「日別の場所別の商品販売情報」です。
ステップ 3) 寸法を特定する
ディメンションは、日付、店舗、在庫などの名詞です。これらのディメンションは、すべてのデータが保存される場所です。 たとえば、日付ディメンションには、年、月、曜日などのデータが含まれる場合があります。
寸法例:
多国籍企業の CEO は、さまざまな場所での特定の製品の売上を毎日調べたいと考えています。
ディメンション: 製品、場所、時間
属性: 製品の場合: プロダクト キー (外部キー)、名前、タイプ、仕様
階層: 場所の場合: 国、州、市、住所、名前
ステップ 4) 事実を特定する
このステップは、システムのビジネス ユーザーと関連付けられています。これは、ビジネス ユーザーがデータ ウェアハウスに保存されているデータにアクセスできる場所であるためです。 ファクト テーブルの行のほとんどは、価格や単位あたりのコストなどの数値です。
事実の例:
多国籍企業の CEO は、さまざまな場所での特定の製品の売上を毎日調べたいと考えています。
ここでの事実は、製品別、場所別、時間別の売上の合計です。
ステップ 5) スキーマの構築
このステップでは、ディメンション モデルを実装します。 スキーマとは、データベースの構造 (テーブルの配置) に他なりません。 一般的なスキーマは XNUMX つあります
- スタースキーマ
スター スキーマ アーキテクチャは設計が簡単です。図が星に似ていて、中心から点が放射状に広がっているため、スター スキーマと呼ばれます。星の中心はファクト テーブルで構成され、星の点はディメンション テーブルです。
スター スキーマのファクト テーブルは第 XNUMX 正規形ですが、ディメンション テーブルは非正規化されています。
- スノーフレークスキーマ
スノーフレーク スキーマはスター スキーマの拡張です。 スノーフレーク スキーマでは、各ディメンションが正規化され、より多くのディメンション テーブルに接続されます。
また、チェックしてください:- データ ウェアハウスのスター スキーマとスノーフレーク スキーマとモデル例
次元モデリングのルール
ディメンション モデリングのルールと原則は次のとおりです。
- 原子データを次元構造に読み込みます。
- ビジネスプロセスに基づいた次元モデルを構築します。
- すべてのファクト テーブルに日付ディメンション テーブルが関連付けられていることを確認する必要があります。
- 単一のファクト テーブル内のすべてのファクトが同じ粒度または詳細レベルであることを確認します。
- レポート ラベルを保存し、ディメンション テーブルにドメイン値をフィルターすることが重要です
- ディメンション テーブルでサロゲート キーが使用されていることを確認する必要がある
- 要件と現実のバランスを継続的に維持して、意思決定をサポートするビジネス ソリューションを提供します
次元モデリングの利点
- ディメンションの標準化により、ビジネスの分野全体で簡単にレポートを作成できるようになります。
- ディメンション テーブルには、ディメンション情報の履歴が保存されます。
- これにより、ファクト テーブルに大きな混乱をもたらすことなく、まったく新しい次元を導入することができます。
- また、データがデータベースに保存された後、データから情報を簡単に取得できるような方法でデータを保存することもできます。
- 正規化されたモデルの寸法表と比較すると、理解しやすくなります。
- 情報は明確でシンプルなビジネス カテゴリに分類されます。
- 次元モデルはビジネスにとって非常に理解しやすいものです。 このモデルはビジネス用語に基づいているため、企業は各事実、ディメンション、または属性が何を意味するかを理解できます。
- 次元モデルは非形式化され、高速なデータ クエリのために最適化されています。 多くのリレーショナル データベース プラットフォームはこのモデルを認識し、クエリ実行プランを最適化してパフォーマンスを向上させます。
- データ ウェアハウスの次元モデリングにより、高パフォーマンスを実現するために最適化されたスキーマが作成されます。 これは結合が少なくなり、データの冗長性が最小限に抑えられることを意味します。
- ディメンション モデルは、クエリのパフォーマンスの向上にも役立ちます。 より非正規化されているため、クエリ用に最適化されています。
- 次元モデルは変化に快適に対応できます。 ディメンション テーブルには、これらのテーブルを使用する既存のビジネス インテリジェンス アプリケーションに影響を与えることなく、さらに多くの列を追加できます。
データ ウェアハウスの多次元データ モデルとは何ですか?
多次元データモデル データ ウェアハウスにおけるデータは、データ キューブの形式で表現されるモデルです。 これにより、データを複数の次元でモデル化し、表示することができ、次元と事実によって定義されます。 多次元データ モデルは通常、中心テーマに基づいて分類され、ファクト テーブルによって表されます。
まとめ
- 次元モデルは、次の用途に最適化されたデータ構造技術です。 データウェアハウスツール.
- ファクトは、ビジネス プロセスからの測定/指標、またはファクトです。
- Dimension は、ビジネス プロセス イベントの周囲のコンテキストを提供します。
- 属性は、ディメンション モデリングのさまざまな特性です。
- ファクト テーブルは、ディメンション モデルの主テーブルです。
- ディメンション テーブルにはファクトのディメンションが含まれます。
- ファクトには、1. 加算的、2. 非加算的、3. 半加算的の XNUMX つのタイプがあります。
- ディメンションのタイプには、適合ディメンション、アウトリガーディメンション、縮小ディメンション、ロールプレイングディメンション、ディメンションからディメンションテーブルへのディメンション、ジャンクディメンション、縮退ディメンション、スワップ可能ディメンション、およびステップディメンションがあります。
- 次元モデリングの 1 つのステップは、2. ビジネス プロセスの特定 3. 粒度 (詳細レベル) の特定 4. 次元の特定 5. 事実の特定 XNUMX. スターの構築
- データ ウェアハウスでのディメンション モデリングの場合、すべてのファクト テーブルに関連付けられた日付ディメンション テーブルがあることを確認する必要があります。