SAP Data Warehouse CloudとSAP Analytics Cloudの双方向連携方法Part2 (SAC→DWC)

本ブログでは、SAP Data Warehouse Cloud (DWC) とSAP Analytics Cloud (SAC) の双方向のデータ連携の方法を記載します。

Part1ではDWCからSACへのデータ連携(青線)を説明しました。本ブログPart2ではSACからDWCへのデータ連携(赤線)を説明します。

図1. SACとDWCのデータExport&Import連携

本ブログを作成した2022年9月時点では上記のような方法での連携となりますが、今後段階的にSACとDWCの統合が進み、2022年Q4時点ではデータモデルおよびカタログの統合が予定され、2023年にはSACとDWCのデータ基盤が完全に統合される予定です。

図2. SACとDWCの機能統合ロードマップ

本ブログでは、「触ってみよう!SAP Analytics Cloud for Planning」で使用しているモデル、データを利用してご説明します。

大まかな流れは以下の通りです。

図3. 本ブログのシナリオ概要

  1. S/4HANAなどから実績データをDWCに連携する。(本ブログの対象外)
  2. DWCの実績データをSACの計画モデルに連携する。(本ブログPart1でデータ連携方法説明)
  3. 計画データを入力、公開する(本ブログの対象外、触ってみよう!ブログでご紹介)
  4. SACの計画モデルを参照する計画テーブル(仮想)をDWCに作成し、これをもとに予実対比のビューを作成し、予実分析を行う。(本ブログPart2でデータ連携方法説明)

では、早速本題に入っていきましょう。

手順概要

DWCからSACへのデータ連携は、以下のような手順で進みます。

  1. SACでOAuthクライアントを登録

  2. DWCでクラウドデータ統合接続(CDI接続)を作成

  3. DWCでリモートテーブルをインポート、ビューを作成

1.  SACでOAuthクライアントを登録

まず、SACにてOAuthクライアントを登録します。(Part1ではDWC側にOAuthクライアントを登録しました。)

SACの「システム」→「管理」→「アプリ統合」に遷移し、「OAuthクライアント」より「新規OAuthクラ案とを追加」を押下します。(ここのトークンURLは後程使用します)

図1. [SAC] 新規OAuthクライアント追加

以下の項目を入力・選択し、「追加」を押下します。

  • 名称:任意の名前
  • 目的:「インタラクティブ用途及びAPIアクセス」を選択
  • アクセス:「データエクスポートサービス」を選択

図2. [SAC] 新規OAuthクライアント設定

OAuthクライアントが追加されました。この後DWCにて「OAuthクライアントID」と「シークレット」を使用します。

図3. [SAC] 新規OAuthクライアント

以上でSAC側でOAuthクライアントが作成されました。図1の「トークンURL」、図3の「OAuthクライアントID」、「シークレット」をこの後利用します。

2. DWCでクラウドデータ統合接続(CDI接続)を作成

次に、DWCでSACに対するクラウドデータ統合接続を作成します。

DWCの接続より「作成」を押下して新しい接続を作成します。

図4. [DWC] 接続の作成

接続タイプとして「クラウドデータ統合」を選択します。

図5. [DWC] 接続タイプの選択

SACへの接続情報として、以下のように選択します。

  1. 接続詳細URL:https://<SACのホスト名>/api/v1/dataexport/administration
  2. 接続タイプ:OAuth 2.0
  3. OAuthトークンエンドポイント:図1のトークンURL
  4. 接続情報(OAuth2.0) クライアントID:図3のクライアントID
  5. 接続情報(OAuth2.0) クライアントシークレット:図3のクライアントシークレット
  6. データプロビジョニングエージェント:あらかじめ登録済みのDP Agent

図6. [DWC] 接続プロパティ

接続のビジネス名、技術名を入力し「接続を作成」を押下して保存します。

図7. [DWC] 接続の作成

接続が作成されたら、接続のチェックを行い、正常にDWCからSACに接続されていることを確認します。

図8. [DWC] 接続のチェック

以上で、DWCからSACへの接続が設定されました。次に、この接続をもとに実際にデータの連携を行います。

3. DWCでリモートテーブルをインポート、ビューを作成

SACで作成した計画モデルをDWCにリモートテーブルとしてインポートします。

データビルだを開き、「リモートテーブルをインポート」を選択します。

図9. [DWC] リモートテーブルのインポート

上記2で作成したSACへのCloud Data Integration接続を選択します。

図10. [DWC] 接続の選択

リモートテーブルのインポートの際、SACの計画モデルのGUIDが必要となります。SACで計画モデルを開き、URLよりGUIDを取得(コピー)します。GUIDはURLの<…/m/model/>以降の文字列です。

図11. [SAC] 計画モデルのGUIDの取得

リモートテーブルを選択します。左に表示されているSACのオブジェクトリストから対象のSAC計画モデルのGUID選択するか、GUIDが見つからない場合は検索ボックスにSAC計画モデルのGUIDを入力してGUIDを検索し、選択します。

図12. [DWC] リモートテーブルのインポート

必要に応じ、ビジネス名、技術名を変更して「インポート及び配置」を押下しDeploy(配置)します。

図13. [DWC] リモートテーブルのDeploy

Deployが完了するとデータビルだにてリモートテーブルが表示されます。

図14. [DWC] Deployされたリモートテーブル

リモートテーブルを開く、データプレビューを行うと、SACから取得したデータが表示されます。

図15. [DWC] リモートテーブルの確認

以上で、SACの計画モデルをDWCでリモートテーブルとしてインポートし、SACのデータがDWCで活用可能となりました。

最後に、DWCでこの計画データと実績データを統合する予実分析データモデルの作成を行います。このデータモデルは業務要件をもとに作成いただく形になりますが、シンプルな例としては以下のように実績のデータとSACの予算データをUNIONするビューとなります。このビューを介してSACでレポーティングを行うことで、S/4HANAなどから連携された実績データとSAC Planningで登録された計画データを統合した予実分析が可能となります。

さいごに

以上、SACの計画データをDWCに連携する方法をご紹介しました。

最初にも触れた通り、現時点ではこの方法でSACの計画データをDWCで直接利用することが可能です。

一方、2023年に予定されているSACとDWCの連携強化により、SACの計画機能を直接DWCのデータに対して行うことができる予定になっています。