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: 
haruki
Advisor
Advisor

はじめに


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

DatasphereのデータをSACで分析するには、SACから直接Datasphereへライブ接続でデータ活用行うことができ、ここではモデルのセマンティクスなども連携されるため分析シナリオでは最適な組み合わせとなります。

一方、SACの計画機能を利用する際はSACにデータをインポートする必要があり、2022年9月時点ではDatasphereのAPI(※)を利用してDatasphereからSACにデータ連携することが可能です。(ヘルプ、下図の青線)

※本APIは2022年9月時点では制限付きリリースとなっており、いくつかの制約がある点ご留意ください。詳細はSAPノート3199078をご参照ください。今後のリリース予定はロードマップをご参照ください。

正式リリースとなり、制約が取り払われました!(2022年9月下旬)

更に、SACの計画機能で更新されたデータをDatasphereに連携する際は、こちらも2022年6月時点ではSACの公開APIを利用してSACからDatasphereにデータを連携することが可能です。(ヘルプ、下図の赤線)

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


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


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


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


 

本ブログのシナリオ


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

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


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




  1. S/4HANAなどから実績データをDatasphereに連携する。(本ブログの対象外)

  2. Datasphereの実績データをSACの計画モデルに連携する。(本ブログPart1でデータ連携方法説明)

  3. 計画データを入力、公開する(本ブログの対象外、触ってみよう!ブログでご紹介)

  4. SACの計画モデルを参照する計画テーブル(仮想)をDatasphereに作成し、これをもとに予実対比のビューを作成し、予実分析を行う(本ブログPart2でデータ連携方法説明)


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

 

DatasphereのデータをSACのモデルに連携する方法


手順概要


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


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




  2. SACでODataサービス接続を作成




  3. SACでデータをインポート




 

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


まず、DatasphereでSACへのデータ抽出用のOAuthクライアントの登録を行います。

SAC側作業


まず、SACの「リダイレクトURI」を取得するために、SACで新しいOdataサービス接続を作成します。SACで「接続」に遷移し「+」ボタンを押下します。


図4. [SAC] 新しい接続の作成


データソースの選択で「ODataサービス」を選択します。


図5. [SAC] ODataサービス接続の作成


接続名と説明を記入し、「認証タイプ」で「OAuth2.0認証コード」を選択します。


図6. [SAC] 認証タイプの選択


さらに下にスクロールし、「リダイレクトURI」をコピーします。


図7. [SAC] リダイレクトURIの取得


この画面は残したまま、Datasphereに移ります。

Datasphere側作業


Datasphereの「システム」→「管理」より「アプリ統合」タブに遷移し、「新規OAuthクライアントを追加」を押下します。


図8. [Datasphere] 新規OAuthクライアントの追加


任意の名称を入力し、以下のように入力・選択し、新規OAuthクライアントを追加します。

  • 名称:任意

  • 目的:「インタラクティブ用途及びAPIアクセス」

  • アクセス:「データエクスポートサービス」

  • リダイレクトURI:図7で取得した「リダイレクトURI」をペースト



図9. [Datasphere] OAuthクライアントの追加


以上で、Datasphere側でのOAuthクライアント作成は完了です。

 

2. SACでODataサービス接続を作成


次に、SACでODataサービス接続を作成します。SAC側で作成しますが、Datasphere側の以下の情報が必要になります。

Datasphere側作業


前のステップで作成したOAuthクライアントの以下の情報。変種画面より取得。

  • OAuthクライアントID

  • シークレット



図10. [Datasphere] 作成したOAuthクライアントの情報


テナントのOAuthサービスの情報。

  • 権限URL

  • トークンURL



図11. [Datasphere] テナントのOAuthサービスの情報



SAC側作業


SACでODataサービス接続を作成します。SACに戻ると、図7の状態になっているかと思います。(そうでない方は図7まで同じ手順を実施してください)

ここで、各情報を入力し、作成ボタンを押下します。

 



図12. [SAC] ODataサービス接続の作成


以上で、SAC側でDatasphereの実績ビューに対するODataサービス接続が作成されました。

 

3. SACでデータをインポート


最後に、この接続を使用してDatasphereからSACへデータをインポートします。

まず、SACでデータを連携するモデルの「データ管理」を開き、「ドラフトソース」→「データのインポート」→「データソース」を選択します。


図13. [SAC] モデルのデータ管理


データソースとして「ODataサービス」を選択します。


図14. [SAC] データソースの選択


図12で保存したODataサービス接続を選択します。


図15. [SAC] ODataサービス接続の選択


データ連携のためのクエリを作成します。まずクエリ名、対象となるDatasphereのビューを選択します。


図16. [SAC] クエリ名の入力


次に、SACに連携するデータ項目、フィルタ条件を設定します。「作成」を押下するとデータ連携が開始され、ドラフトデータとしてSACに保存されます。


図17. [SAC] クエリの作成、データの連携


DatasphereのデータがドラフトデータとしてSACにインポートされました。このドラフトデータを選択し、SACのモデルにデータをインポートします。


図18. [SAC] ドラフトデータの選択


要件に応じマッピングの設定、インポート方法の設定などを行い、「マッピングの終了」を押下するとモデルへのデータインポートが開始されます。


図19. [SAC] インポート設定


データのインポートが終わりました。


図20. [SAC] データインポート結果


実際にデータがインポートされていることを確認します。まずはデータインポート前のレポート画面です。


図21. [SAC] データインポート前のレポート


データインポート後にレポートを開くと、データが表示されることが確認できます。つまり、DatasphereからSACのモデルへのデータインポートが正常に行われたことが確認できました。


図22. [SAC] データインポート後のレポート


 

さいごに


以上、DatasphereのデータをSACにインポートする方法をご紹介しました。

最初にも触れた通り、DatasphereにあるデータをSACの計画機能で利用する際、現時点ではこの方法でデータの連携を行うことが可能です。

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

 
1 Comment