🎧

SAP cortex frameworkを使ってLookerで可視化してみる

2024/06/19に公開

SAP cortex frameworkを使ったLookerの可視化

SAP cortex frameworkとは何か?またサンプルデータを使用してビルドするまでの一連の流れはこちらのブログに記載しているのでみてみてください!

[前回の記事]

https://zenn.dev/delacroix/articles/50a3014fce73db

さて、前回の記事ではSAP cortex frameworkをGCP上にDeployしてBigQueryにreporting テーブルの作成までができました。

今回はLooker側でこのデータを可視化していきたいと思います。
Looker側の可視化についても実はFrameworkが用意されていますのでそれを用いてLookerでダッシュボードを作成していきます。

SAP Cortex framework の Looker テンプレートを使うと何が見れるのか

Looker テンプレートを使用すると、Cortex frameworkによって作成されたReporingテーブルを元に自動でダッシュボードが作成されます。

SD、FI、MM系のダッシュボードをすぐに見ることができます。

SD系の注文管理系のダッシュボードはこれらが用意されています。

FI系の財務諸表系のダッシュボードはこれらが用意されています。

MM系のサプライチェーン系のダッシュボードはこちらが用意されています。

これらのダッシュボードから以下のようなことが確認可能です
配送パフォーマンス
注文の履行状況 (注文処理は順調に進んでいるか?)
注文状況 / 注文のステータス
売上実績
価格調整によってどの程度利益が向上するか
財務状況
在庫情報 (部品や商品ごとの)
物流遅延でどれくらいの損失があるのか

例えば、SD系のSales Order Fulfillment (注文履行状況) ダッシュボードは以下のように可視化できます。

① on tim (時間通り)に配達できた割合
② in full (注文した量通り) に配達できた割合
③ ontime かつ infullで配達できた割合
④ 配達に遅れが生じた割合
⑤ ontime率、in-full率を折れ線グラフにしたもの
⑥ 商品ごとの顧客が注文してから商品を受け取るまでの平均的な時間を棒グラフにしたもの
⑦ Delivery performanceの帳票データ画面へ (次ページ)
⑧ 各種フィルター条件

などが見ることができます。
これはあくまでも一例です。
SAP cortex frameworkはGoogle内のSAPの技術者によって作成されたもので、おおよそこういうデータ分析はしたいよね?というユースケースを元にいくつもこのようなダッシュボードが用意されています。

事前にやっておくこと

事前にやっておくことは以下の4点を実施しておきます。

① SAP cortex frameworkのdeploy
② Looker インスタンスの構築

LookerインスタンスをGoogle Cloudのコンソールから立ち上げる方法はこちら

https://zenn.dev/delacroix/articles/a1d47322056e24

③ サービスアカウントの作成
Looker側からBigQueryにアクセスする際に使用するサービスアカウントを作成しておきます。

[IAM] → [サービスアカウント] → [サービスアカウントの作成]

サービスアカウントに任意の名前を付与して作成します。

BigQuery ジョブユーザー
BigQuery データ編集者
のロールを追加して、作成します

[IAM] → [サービスアカウント]で作成したサービスアカウントが作成されていることを確認して、そのサービスアカウントをクリック

新しい鍵を作成します。

Jsonタイプを指定して、作成をクリックします。
jsonファイルがダウンロードされますので、それを後ほど使います。

④ Looker側からBigQueryで展開されたSAP cortex frameworkのREPORTINGデータセットのConnectionを作成していきます。

接続方式はサービスアカウントで、前項で作成したjsonファイルを指定します。

Persistent Derived Tables (PDTs) を Enableにしておきます。

PDT oberrideもONして、項目値は特に何も設定せずに進んでOKです!

SAP cortex framworkを使って Lookerで可視化しよう

それでは実際にLooker側でFrameworkを使って可視化をしていきます。

FrameworkとReadme自体はOpensourceなので、こちらのgithubに公開されています!
今回はこれに沿って実施してみようと思います。

https://github.com/looker-open-source/block-cortex-sap

GithubのrepositoryとSHAの取得をしよう!!!

次に、LookerにGithub repositoryのコンテンツをインストールするための準備をしていきます。
Github上でこちらのCortex frameworkのrepositoryをforkしておきます!
(Forkはしなくてもそのまま使えますが、今後必要に応じて修正したい場合のためにForkします)

基本設定はそのままでもOKですが、名前等を変更してもOKです!
ということでそのまま[Create fork]

GithubのURLをコピーしておきます!後ほど使います.

続いて、コミットのSHAを取得します!
まずはGithubの中央あたりにある[commits]をクリックします!

そして最新のコミットのSHAをコピーしておきます!こちらも後ほど使います

LookMlモデルのインストール

LookMLモデルのインストールには2つ方法があります。LookerのMarketplaceからGitを利用してインストールする方法があります。
今回はMarketplaceからインストールしてみたいと思います。

まずはMartketplaceをenableしておく必要がありますので、以下の手順で設定していきます。
Lookerのホーム画面から → [admin] をクリックします

[Marketplace]をクリックします

MarketplaceとAutoinstallがOffになっている場合はONにします

Looker画面の右上にMarketplaceのアイコンが表示されます
そこから[Manage]をクリックします

三点アイコンをクリックして、[Install via Git URL]をクリック

ここで、先ほど取得したGithubのrepositoryのURLとSHAを入力します!

続けてここも[Agree & Continue]

ここで必要になってくる項目が
・Connection Name
・Project ID
・REPORTING name
・SAP Client ID (mandt) ← 今回はサンプルデータを使うので100とか適当につけています
・Sign Change ← 一旦 Yesで (損益計算書の見え方が変わります。詳しくはReadmeを確認してください。)

Installが成功すると、以下のようにCortex Data Foundation for SAP - Operational Dashboardsという名前で見えてきます。

User Attributeの設定

次にLooker側でUser Attributeの設定を行なっていきます。

[Admin] → [User Attribute] → [Create User Attribute] の順番で作っていきます

Locale user Attributeの作成

default_value_currency_required User Attributeの作成

これに倣ってそのほかのUser Attributeも作成していきます。

client_id_rep User Attributeの作成

sap_use_demo_data User Attributeの作成

sap_sql_flavor User Attributeの作成

自動で作成されたダッシュボードの確認

LookerのランディングページからBlocksをクリック

このように自動でダッシュボードが生成されていることが確認できます

例えば、Sales Performanceというダッシュボードを開いてみると
以下のように、可視化することができました。

まとめ

ということでLooker のテンプレートを使ってすぐに可視化まですることができました。
特にLookMLを書かずにここまで見れるのは一定の価値がある気がします。
もし追加のadd on テーブルがあったり、追加で作成したいダッシュボードがある際にはLookMLを編集することで実現可能です。
その辺りはまた試してみて記事にしたいと思います。

Discussion