Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
KABATA_Kimikazu
Product and Topic Expert
Product and Topic Expert
1,343
※ 最新の情報は下記のブログをご確認ください。

 

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などの各国毎の売上が表示されるなど、ドリルダウンをしながらデータを可視化することができます。

 

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


 

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


 

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

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

 

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