Technology Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
yureshino
Product and Topic Expert
Product and Topic Expert
1,907

はじめに

SAP の連携ツールである SAP Integration Suite を使用して SAP Datasphere からデータを抽出するには、以下の2つの方法があります。本ブログでは②の方法について紹介します。

① SAP Datasphere の OData サービスを利用したデータ抽出(前回のブログにて記載)

② SAP Datasphere データベースユーザでの JDBCを利用したデータ抽出(本ブログ)yureshino_0-1731239373843.png

今回は下記のバージョンで検証を行いました。
SAP Datasphere : バージョン2024.16.46
SAP Integration Suite : バージョン 3.66.0

手順

  1. SAP Datasphere でデータベースユーザを作成する
  2. SAP Integration Suite で JDBC データソースを作成する
  3. SAP Integration Suite で Integration Flow を作成する
  4. SAP Integration Suite で Integration Flow をデプロイする
  5. SAP Integration Suite で Integration Flow の動作を確認する

ポイント

  • SAP Integration Suite 側で SAP HANA Cloud の JDBC ドライバはデフォルトでインストールされているため、ユーザ側で JDBC ドライバをアップロードする必要はありません
  • SAP Integration Suite から SAP Datasphere への接続はデータベースユーザでおこなうため、データベースユーザが参照できる範囲のオブジェクトのデータが抽出できます

ここから具体的な方法を紹介します。

手順1. SAP Datasphere で データベースユーザを作成する

※すでに作成済みの場合は飛ばしてもかまいません

1.SAP Datasphere にログインします

2.スペース管理から対象となるスペースを選択し、[編集] ボタンをクリックします

3.データベースアクセスタブに移動します

4.データベースユーザの [作成] ボタンをクリックします

 

yureshino_4-1731239844105.png

5.データベースユーザの作成ダイアログで以下を入力し、[作成] ボタンをクリックします

  • データベースユーザ名の接尾辞: 任意のユーザ名(この例では URESHINO)
  • スペーススキーマの読み込みアクセスを有効化 (SQL): チェックする
  • その他の設定: (任意)

yureshino_5-1731240033253.png

6.[保存] ボタンをクリックして設定を保存し、[デプロイ] ボタンをクリックしてデプロイします

yureshino_7-1731240250477.png

7.ステータスが”有効”になったことを確認し、[情報ダイアログを開く] ボタン(iのマーク)をクリックします

yureshino_8-1731240264579.png

8.データベースユーザ詳細画面で [新しいパスワードを申請] ボタンをクリックして、データベースユーザのパスワードを発行します

yureshino_9-1731240372516.png

9.発行されたパスワードをメモ帳などにコピーしておきます
※ JDBC 接続を作成する際に、データベースユーザ名とホスト名、パスワードが必要になります

yureshino_10-1731240454555.png

手順2. Integration Suite でのJDBCデータソースの作成

SAP Integration Suite から SAP Datasphere に JDBC 接続するための JDBC データソースを作成します

1.SAP Integration Suite にログインします

2.Monitor > Integrations and APIs をクリックします

2024-11-10_17-16-59.png

3.JDBC Material のタイルをクリックします

2024-11-10_17-18-04.png

4.JDBC Data Source タブを開き、[Add] ボタンをクリックします

2024-11-10_17-18-53.png

5.Add JDBC Data Source ダイアログで以下の情報を入力し、[Deploy] ボタンをクリックします

  • Name: 任意の JDBC データソース名(この例では Datasphere_JP)
  • Description: 任意
  • Database Type: SAP HANA Cloud
  • User: SAP Datasphere のデータベースユーザ
  • Password: SAP Datasphere データベースユーザのパスワード
  • JDBC URL: jdbc:sap://{手順1-9 SAP Datasphere ホスト名}:443/?encrypt=true

2024-11-10_17-22-35.png

6.JDBC Data Source の一覧画面で Status が Deployed になっていることを確認します

2024-11-10_17-23-27.png

手順3. Integration SuiteでIntegration Flowの作成

1.SAP Integration Suite のホームページから Design > Integrations and APIs をクリックします

2024-11-10_17-24-08.png

2.[Create] ボタンをクリックしてコンテンツパッケージを作成します

2024-11-10_17-24-45.png

3.以下の情報を入力して [Save] ボタンをクリックします

  • Name: 任意のパッケージ名(この例では Datasphere_JDBC_Integration_Flow)
  • Technical Name: Name の内容から自動設定
  • Short Description: 任意の概要説明

2024-11-10_17-26-10.png

4.Artifacts タブに移動します

5.Add をクリックして表示されるコンテキストメニューから [Integration Flow] を選択します

2024-11-10_17-27-05.png

6.Add Integration Flow ダイアログで以下の情報を入力し、[Add] ボタンをクリックします

  • Create を選択
  • Name: 任意の Integration Flow 名(この例では Datasphere_JDBC_Integration_Flow)
  • ID: Name から自動入力
  • Runtime Profile: Cloud Integration
  • Description: 任意の説明
  • Sender: 空白
  • Receiver: 空白

2024-11-10_17-28-45.png

​デプロイ時に一回だけ起動し、SAP Datasphere からデータを取得する Integration Flow を作成します

7.Artifacts から追加した Integration Flow を選択します

2024-11-10_17-29-29.png

8.右のような Integration Flow を作成します

  • Request Reply から Receiver への接続では、[JDBC] を選択します

2024-11-10_17-33-34.png

9.Content Modifier の Message Body タブをクリックし、以下の情報を入力します

  • Type: Expression
  • Body: 実行する SQL 文(この例では SELECT * FROM “{スペース名}”.”V_CutomerOrders”)

2024-11-10_17-37-11.png

10.JDBC の Connection タブをクリックし、以下の情報を入力します

  • JDBC Data Source Alias: JDBC データソースの作成の手順で作成した JDBC データソース名(この例では Datasphere_JDBC)

2024-11-10_17-40-22.png

手順4. Integration SuiteでIntegration Flowのデプロイ

作成した Integration Flow をデプロイします

1.[Save] ボタンをクリックします 

2.[Deploy] ボタンをクリックします

2024-11-10_17-41-50.png

3.Confirmation ダイアログで Runtime Profile を選択して、[Yes] ボタンをクリックします

2024-11-10_17-41-00.png

4.Deployment ダイアログで [OK] ボタンをクリックします

2024-11-10_17-41-13.png

5.Deployment Status タブをクリックし、Deployment Status と Runtime Status を確認します

2024-11-10_17-42-38.png

6.Navigate to Manage Integration Content リンクをクリックします

7.Manage Integration Content 画面で実行状態を確認します

2024-11-10_17-43-59.png

8.Integration Flow の実行をトレースするためにLog Configuration の Log Level を Trace に変更します

2024-11-10_17-44-50.png

2024-11-10_17-44-40.png

9.Integration Flow の Edit 画面で再度 [Deploy] ボタンをクリックし、Integration Flow をデプロイします

2024-11-10_17-46-00.png

手順5. Integration SuiteでIntegration Flowの実行結果の確認

1.Monitor > Integrations and APIs をクリックします

2.Monitor Message Processing の All Artifacts タイルをクリックします

yureshino_0-1731247542206.png

3.作成・デプロイした Integration Flow を選択します

4.Logs タブをクリックし、Log Level の Trace リンクをクリックします

2024-11-10_18-07-50.png

5.Run Steps の End をクリックします

6.Message Content をクリックします

7.Payload タブをクリックして、データが取得できていることを確認します(XML形式)

2024-11-10_18-10-08.png

以上ですべての手順が完了しました。最後までお読みいただきありがとうございました。

Special thanks to Ikeguchi Daisuke-san!