4

SAP Datasphere モデリングTips:スタースキーマ設計時のE/Rモデルの活用

 1 year ago
source link: https://blogs.sap.com/2023/06/26/datasphere-modelling-tips-create-associations-in-an-e-r-model/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

SAP Datasphere モデリングTips:スタースキーマ設計時のE/Rモデルの活用

本ブログでは、SAP Datasphere (以下、「Datasphere」) でのモデリング操作の流れを、より分かり易く、直感的に行うためのTips について解説します。

今回は、スタースキーマ、スノーフレークスキーマの設定/定義をするにあたって「E/Rモデル」を活用したモデリングのTipsについてご紹介します。

018a.png

下記のブログで、Datasphere のモデリングの基本的な操作の流れについてご紹介しました。

はじめての SAP Datasphere Part 3 : モデリング

301a-2.png

ただし、DWHやBIの構築、モデリングの経験者にとっては、

「ディメンションの定義とファクトの定義はわかるけど、なぜ、ファクトの定義でディメンションとの関連付け(アソシエーションの設定)をしなければいけないのか ?」

と少しモヤモヤした気持ちになっていたかと思います。

315-2.png

その気持ち….. わかります…… (私もはじめはモヤモヤしました) 。

モデリングの操作手順をもう少し丁寧に解説すると下記の順番になります。

1. ディメンションテーブル/ビューの定義

2. ファクトテーブル/ビューの定義

3. ディメンションとファクトの関連付け

4. 分析モデルの作成

前出のブログでの操作解説では、「ファクトビューの定義/作成」の中で「ディメンションとファクトの関連付け」を行いましたが、より理解を深めていただくために、今回は、この操作を「E/Rモデル」を利用して、直感的に、そして、全体の流れをイメージしていただこうと思います。

もちろん、ディメンションの数が増えた場合には、エンティティ間の関係がビジュアライズされて直感的に分かることはメリットがありますので、是非、この機会に「E/Rモデル」もご利用ください。

実際に操作を試す場合は、前出のブログのモデリングで作成したファクトビューから「アソシエーション」を削除して再デプロイしてください。削除の方法は、アソシエーションを選択して「ゴミ箱」ボタンをクリックします。

「アソシエーションを未設定にした」ファクトビューを新規に作成しても結構です。

001-5.png
002-5.png

E/Rモデルの作成

左メニューの「データビルダー」から「E/Rモデル」タブを選択し、「新しいERモデル」をクリックします。

003-5.png

まず、最初にファクトである「受注明細ファクト」ビューをキャンバスにドラック & ドロップします。「受注明細ファクト」ビューのエンティティが表示されました。

004-5.png
005-4.png

005a.png

この「受注明細ファクト」ビューを選択して、プロパティで「アソシエーション」が未設定であることを確認します。

006-4.png

続いて1つの目のディメンション、「顧客ディメンション」ビューをキャンバスにドラッグ & ドロップします。「顧客ディメンション」ビューのエンティティが表示されました。

007-4.png
008-4.png

同じ手順で2つの目のディメンション、「製品ディメンション」ビューをキャンバスにドラッグ & ドロップします。「製品ディメンション」ビューのエンティティが表示されました。

009-4.png
010-2.png

さて、準備は整いました。

いよいよ、ファクトとディメンションの関連付け(アソシエーションの設定) を行います。

「受注明細ファクト」ビューを選択し、「アソシエーションの作成」ボタンをクリックし、「顧客ディメンション」ビューに対してドラッグ & ドロップします。

011-3.png

ファクトからディメンションに対して、アソシエーションが作成されました。また、顧客ID同士で関連付けられていることがわかります。

012-3.png
013-3.png

ここでの注意点は、アソシエーションの矢印の向きは、「ファクトからディメンション」の方向であることです。

「ファクトからディメンションに”マスターデータ”を参照する」と憶えると容易かと思います。

同じ手順で、「受注明細ファクト」ビューを選択し、「アソシエーションの作成」ボタンをクリックし、「製品ディメンション」ビューに対してドラッグ & ドロップします。

ファクトからディメンションに対して、アソシエーションが作成されました。また、製品ID同士で関連付けられていることがわかります。

014-3.png
015-2.png
016-2.png

画面右上の「自動レイアウト」ボタンをクリックして、表示を整えます。

017-2.png
018-2.png
018a-1.png

「受注明細ファクト」ビューを選択すると、プロパティで「アソシエーション」が設定されていることが確認できます。

019-2.png

それでは、このアソシエーションの設定とE/Rモデル(図)を保存して有効化します。

ビジネス名と技術名に任意の名前を付けて、「保存」ボタン、「デプロイ」ボタンの順番でクリックし、有効化します。

020-2.png
021-2.png
023-2.png
024-2.png

いかがでしたでしょうか ?

まず、「ファクトビューの設定」はシンプルに「メジャーの選択/設定」を行います。

「アソシエーションの設定」については、ディメンション数が少ない場合は、そのまま「ファクトビューの設定」の中で設定しても良いと思います。

ディメンションの数が多い場合は、「E/Rモデル」を作る中で設定した方がラクチンですし、ビジュアル化できてエンティティ間の関係も分かり易いかと思います。

また、ファクトビューの設定でアソシエーションの設定をした場合でも、「E/Rモデル」で関連するファクトとディメンションをドラッグ & ドロップするだけで、作成済のアソシエーションの定義がビジュアル化されます。

いずれにしても、「E/Rモデル」を各スタースキーマ毎、各スノーフレークスキーマ毎に作成すると便利だと思いますので、是非、ご活用ください。

ありがとうございました !!

※ Special Thanks TOCHIMOTO-san : ブログ執筆にあたり、いつものように色々と教えていただき、ありがとうございました。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK