SAP Business Data Cloud のDatasphere にSalesforce のデータをレプリケーション:CData Sync

sapdatapshere

こんにちは。CData Software Japan マーケティング・パートナーサクセス マネージャーの杉本です。

SAP Business Data Cloud のSAP Datasphere にデータパイプラインツール「CData Sync」を利用して、データをレプリケーションする方法を紹介したいと思います。

目次

SAP Datasphere とは?

SAP Datasphere はSAP Business Data Cloud  の中の中核サービスの一つであるデータ統合基盤です。

SAP を含めた企業が持つ各種データを業務部門が扱いやすくするための、データ収集、メタデータ整備、データモデリングなど、データマネジメント・データファブリックの各機能を網羅したプラットフォームになっています。

https://www.sap.com/japan/products/data-cloud/datasphere.html

外部からデータを取り込む機能も充実しており、SAP ERP はもちろんのことながら、Azure Data Lake Storage や Google Cloud Storage といったデータレイクやBigQuery などのDWH からもデータと取り込み、リモートテーブル(仮想テーブル)などとして利用することが可能になっています。

しかしながら、Salesforce やDynamics 365 といったCRM・SFA のサービスやkintone などの国産クラウドサービスからのデータ取り込みには現状対応していません。

そこで、今回の記事ではデータパイプラインツールのCData Sync を利用して、Salesforce など様々なクラウドサービスやRDB のデータをSAP Datasphere に取り込み、活用する方法を紹介します。

https://www.cdata.com/jp/sync/

連携ポイント

SAP Datasphere ではデータの管理領域として、「スペース」「OpenSQL スキーマ」の2種類が存在します。

CData Sync のような外部のETL ツールと連携する場合は、「OpenSQL スキーマ」のスペースに一度データを登録してから、実際にユーザーがモデリングなどで利用する「スペース」でデータを取り扱います。

https://help.sap.com/docs/SAP_DATASPHERE/be5967d099974c69b77f4549425ca4c0/3de55a78a4614deda589633baea28645.html

OpenSQL スキーマにはSAP HANA のプロトコルベースで接続することができるので、このインターフェースを通じてCData Sync からデータの書き込みを実現します。

スペースの作成

それではまず事前準備として、今回のデータを取り込む先のスペースを作成しましょう。すでに連携したいスペースがある場合は、この手順は不要です。

SAP Datasphere の画面にログインし、「スペース管理」に移動し、「作成をクリックします。」

スペースは任意の名前で作成しましょう。今回は「CDATASYNCSPACE」としました。

データベースユーザの作成

スペースを作成したら、OpenSQL スキーマに接続するための「データベースユーザ」を作成します。

「データベースアクセス」タブにある「データベースユーザ」の一覧から「作成」をクリックします。

任意の「データベースユーザ名の接尾辞」を設定し、権限としてユーザのOpen SQL スキーマに対する書き込みアクセスにある「書き込みアクセスを有効化(SQL、DDL、およびDML)」を付与します。

作成後、「保存」「デプロイ」を実行して、データベースユーザを有効化します。

デプロイが完了したら接続情報を確認しましょう。作成したデータベースユーザのインフォメーションボタンをクリックし

CData Sync から接続するために、以下の情報を控えておきます。パスワードは「新しいパスワードを申請」をクリックして、取得しておきましょう。

IP 許可リストにCData Sync の接続元IP アドレスを追加

他のサービスからデータベースユーザを利用するためには、接続元のサービスのIP アドレスを事前に登録しておく必要があります。

SAP Datasphere 管理画面の「システム」→「設定」に移動し

「IP 許可リスト」から「追加」をクリックします。

ここでCData Sync をホスティングしているIP アドレスを追加しましょう。今回はローカルマシンから接続するので、私の利用しているIP アドレスを登録しました。

CData Sync のセットアップ

それではCData Sync の準備を進めていきましょう。

以下のURL からトライアル環境を入手します。今回は私のデスクトップマシンにセルフホストして利用しました。

https://www.cdata.com/jp/sync/trial/

接続の追加

CData Sync のインストールが完了したらブラウザから管理画面にログインします。

まずは、SAP Datasphere への接続を追加しましょう。「接続」→「+接続を追加」をクリックし

「同期先」から「SAP HANA」を選択します。

ここで事前に作成しておいたデータベースユーザの接続情報を使って、接続します。

プロパティ名

入力例

備考

Server

XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX.hana.prod-jp10.hanacloud.ondemand.com

ホスト名を入力します。

Port

443

ポート番号の443を入力します。

Auth Scheme

Password

 

User

CDATASYNCSPACE#SYNCUSER

データベースユーザ名を入力します。

Password

PASSWORD

申請したパスワードを入力します。

Schema

CDATASYNCSPACE#SYNCUSER

Open SQL スキーマ名を入力します。

Use SSL

True

SSL を利用するのでTrue を設定します。

これで接続が保存でき、接続テストが成功すればOKです。

合わせてデータソースとして、Salesforce への接続も追加しておきましょう。

今回は詳しい手順は割愛します。他のデータソースを利用しても大丈夫です。

ジョブの作成

接続の作成が完了したら、ジョブを追加します。

「ジョブ」→「+ジョブを追加」→「新しいジョブを追加」をクリックします。

ここで任意のジョブの名前と、先ほど作成したデータソースと、同期先にSAP Datasphere の接続を選択し、ジョブを追加します。

ジョブを作成したら、どのテーブルをレプリケーションするのか? を指定するために「タスク」を追加します。

「タスク」から「+タスクを追加」をクリックします。

以下のようにデータソースで利用可能なテーブルおよびビューが表示されるので、レプリケーションしたいデータを選択します。

手動でジョブを実行

タスクの登録が完了したら、ジョブを実行してみましょう。

今回は手動でジョブを実行しますが、通常はスケジュールを設定して実行します。

タスクの一覧からレプリケーションしたいタスクを選択し、「実行」をクリックします。

しばらく待つと、以下のように結果が表示されます。うまくレプリケーションが完了したようです。

データベースエクスプローラーで参照

それでは実際にOpen SQL スキーマにデータが登録されているのか確認してみましょう。

SAP Datasphere のデータベースユーザの画面から先程作成したユーザを選択し「データベースエクスプローラを開く」をクリックします。

最初に新しいインスタンスへの接続設定画面が表示されるので、作成したデータベースユーザのUser・Password を指定して、コネクションを確立します。

作成したインスタンスのコネクションを開いて、「Tables」を選択すると、先程レプリケーションした対象のデータを格納するためのテーブルが作成されていることがわかります。

「Open Data」をクリックするとデータが参照できます。うまくレプリケーションできましたね!

あとは、データビルダでソースとして、先程のOpen SQL スキーマからデータを参照して、モデリングで利用できるようになります。

おわりに

このようにCData Sync を利用することで、SAP Datasphere へ手軽に外部の様々なデータを取り込むことができます。

今回はSalesforce を例として説明しましたが、他にも様々なSaaS やRDB などに対応しているので、ぜひ自社のデータの種類に合わせて試してみてください。

不明な点や使い方で気になることがあれば、お問い合わせまでお気軽にご連絡ください。

お問い合わせ | CData Software Japan

関連コンテンツ