Skip to Content
Technical Articles
Author's profile photo Kimikazu Kabata

SAP Data Warehouse Cloud: モデリング – 階層の設定

※ 最新の情報は下記のブログをご確認ください。

 

SAP Datasphere での階層定義とドリルアップ/ドリルダウン

 

 

 

—————————————–

今回は多次元レポート用に階層(ヒエラルキー)を設定する方法について解説します。

階層というと、少し難しいかもしれませんが、Analytics ツールでドリルダウン/ドリルアップするために、各属性間の「上下関係」を指定する作業です。

下記の図にある通り、例えばJapanの売上の棒グラフをクリックしてドリルダウンすると、その配下の都市毎の売上データを見ることができます。

 

このようなドリルダウンを行うためにSAP Data Warehouse Cloud (以下、「DWC」) 側での設定方法、いわゆる、「モデリング」について解説します。

 

※ 今回のBlog 読者の対象者は、こちらのBlogを一通り、確認/経験された方になります。

 

こちらのBlogで解説した通り、通常はテーブルを作成した後、ビューを作成する流れですが、今回のような本格的な分析/レポート用のモデリングをする場合は、下記のような設定の流れになります。

 

1. マスターテーブルをベースとしたディメンションタイプのビューを作成

2. ファクトテーブル(トランザクションテーブル ) とディメンションビューの関連付け

 

ディメンションタイプのビュー作成

 

まず顧客マスターのディメンションビューを作成します。

左メニューの「データビルダ」を選択し、「新しいグラフィックビュー」をクリックし、「顧客マスター」をDrag & Dropしてビューを作成します。

 

 

ビューに名前を付けて「セマンティック用途」に「ディメンション」を選択します。「利用のために公開」をONにすることも忘れないでください。

その後に「hierarchy(ヒエラルキー)」のボタンをクリックし、「レベルベースの階層の追加」を設定します。

 

 

ビジネス名と技術名はデフォルトのままにして、レベルを追加してきます。

 

この顧客マスターのディメンションは階層の順番が「REGIONNAME(地域)」、「COUNTRYNAME(国)、「CITYNAME(都市)」、「CUSTOMER(顧客)」になりますので、階層が高い順番から指定して行きます。

 

次に列名の表示変更を行います。英語の名前を日本語に修正し、各ID列を非表示に設定します。

 

 

設定が終わりましたら、「保存」ボタン、「デプロイ」ボタンの順番にクリックして、顧客マスターディメンションビューを有効化します。

 

続いて、同じ要領で製品マスターテーブルを利用した製品ディメンションビューを作成します。

製品マスターテーブルをDrag & Drop して、ディメンションビューの名前を入力し、「セマンティック用途」に「ディメンション」を設定します。「利用のために公開」をONにすることも忘れないでください。

「ヒエラルキー」のボタンをクリックし、「レベルベースの階層の追加」を設定します。

 

先ほどと同様にビジネス名と技術名はデフォルトのままにして、レベルを追加してきます。

製品マスターの場合は、「LINENAME(製品ライン)」、「CATEGORYNAME(製品カテゴリー)」、「PRODUCTNAME(製品)」の階層の順番になります。

 

設定が終わったら、列名の表示変更を行います。英語の名前を日本語に修正し、各ID列とDescription 関連の列を非表示に設定します。

 

設定が終わりましたら、「保存」ボタン、「デプロイ」ボタンの順番にクリックして、製品マスターディメンションビューを有効化します。

 

ファクトテーブルとディメンションビューの関連付け

 

次に受注明細ビューの作成を行います。

ファクトテーブル (トランザクションの履歴データを格納したテーブル) である受注明細テーブルと、先ほど作成した顧客マスターディメンションビュー製品マスターディメンションビューを関連付けます。

 

「新しいグラフィックビュー」ボタンをクリックした後、受注明細テーブルをDrag & Drop します。

 

受注明細のビューのビジネス名と技術名を入力し、「セマンティック用途」には「分析データセット」を指定します。「利用のために公開」をONにすることも忘れないでください。

 

分析データセットには「メジャー」が必要なので、NETSALES列を選択します、その後、NETSALES列の列名を日本語名に修正します。それ以外の列項目については非表示にします。

 

 

 

 

次に顧客マスターディメンションビューと受注明細テーブルの関連付けを行います。

アソシエーションの「+」ボタンをクリックして、顧客マスターディメンションビューを選択します。

 

 

自動的にCUSTOMERID列同士が関連付けられています。上位の画面に戻るために「受注明細(分析)ビュー」のリンクをクリックします。

 

続いて、製品マスターディメンションビューと受注明細テーブルの関連付けを行います。

先ほどと同様にアソシエーションの「+」ボタンをクリックして、製品マスターディメンションビューを選択します。

 

 

自動的にPRODUCTID列同士が関連付けられていることを確認し、「受注明細(分析)ビュー」のリンクをクリックして、上位の画面に戻ります。

 

 

ここで一手間加えます

 

受注明細テーブルの「PRODUCTID」列と「CUSTOMERID」列をそれぞれ「製品属性」と「顧客属性」の日本語名に修正します。

 

 

これは後にSAP Analytics Cloud (以下、「SAC」) でレポートを作成する際に、ディメンションの指定を分かり易くするためです。

 

ビューの設定はこれで終了です。

「保存」ボタン、「デプロイ」ボタンの順番にクリックして、受注明細ビュー(分析用)を有効化します。

 

データの可視化

 

それではSACを使用して、ストーリーを作成してみましょう。

SACにアクセスして、こちらのBlog を参考にしながらデータソースを選択し、今回作成した「受注明細(分析)」ビューを選択します。

 

 

 

 

 

 

 

 

 

 

「チャート」ボタンをクリックし、「メジャー」に「売り上げ」を選択します。

 

 

次に「ディメンション」を設定する際、先ほど、一手間加えた「顧客属性」を選択します。

 

ここでドリルダウンの動作を確認しましょう。

棒グラフを選択し、「下向きの矢印」をクリックすると顧客属性の「各地域」がごとの売り上げが表示されます。

 

 

さらに「Asia PAC (アジアパシフィック) 」の棒グラフを選択し、「下向き矢印」をクリックすると、アジアパシフィック地域の Japan, Thai, Singaporeなどの各国毎の売上が表示されるなど、ドリルダウンをしながらデータを可視化することができます。

 

レポートが確認できたら一旦ここでレポートを保存します。

 

追加で「製品属性」毎の売り上げのパイチャートを作成してもいいでしょう。

 

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

データモデリングが、いわゆる「スタースキーマ」型にビジュアルに表示されないので、直感的に分かり辛いところもあるかもしれませんが、頭の中でスタースキーマをイメージしながら作業を進めていただけたらと思います。

 

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

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.