CData Sync で Salesforce データを SAP Datasphere にレプリケーション

この記事では、SAP Business Data Cloud の中核コンポーネントである SAP Datasphere へのシームレスなデータレプリケーションを CData Sync でどのように実現できるかをご紹介します。
SAP Datasphere とは?
SAP Datasphere は、SAP Business Data Cloud におけるデータ統合基盤として重要な役割を担っています。データ収集、メタデータ管理、データモデリング機能を網羅する包括的なプラットフォームで、SAP データを含むさまざまなエンタープライズデータをビジネス部門が簡単にアクセス・活用できるように設計されています。データ管理とデータファブリック機能のすべてをカバーしています。
詳細については、SAP Datasphere の概要をご覧ください。

SAP Datasphere は外部データのインポートに優れており、SAP ERP だけでなく、Azure Data Lake Storage や Google Cloud Storage などのデータレイク、BigQuery などのデータウェアハウスからも情報を取り込むことができます。取り込んだデータは、Datasphere 内でリモートテーブル(仮想テーブル)として利用できます。

しかし、現時点では Salesforce、Dynamics 365、Kintone などの SaaS プラットフォーム向けのネイティブコネクタは提供されていません。
それでは、CData Sync を使って、Salesforce のような外部クラウドサービスのデータを SAP Datasphere にインポートして活用する方法を見ていきましょう。

連携のポイント
Datasphere へのデータ取り込みには、2つのコンセプトがあります:
- Space:モデリングとエンドユーザー向けのデータ利用
- OpenSQL スキーマ:外部 ETL ツールが SAP HANA プロトコル経由でデータをロードするための領域
CData Sync は OpenSQL スキーマにデータを書き込み、そのデータをユーザー向けの Space で利用する形になります。
これらのコンセプトの詳細については、SAP ヘルプドキュメントをご参照ください。
Space のセットアップ
SAP Datasphere の「Space」は、データ処理専用の環境です。レプリケーションタスクに必要な権限を持つ既存の Space がない場合は、新規作成が必要です。
SAP Datasphere で「Space Management」→「Create」を選択します。

任意の名前(例:「CDATASYNCSPACE」)で Space を作成します。

データベースユーザーの作成
Space を作成したら、OpenSQL スキーマに接続するためのデータベースユーザーを作成します。
「Database Access」タブの「Database Users」リストで「Create」をクリックします。

「Database User Name Suffix」を設定し、ユーザーの Open SQL スキーマへの書き込みアクセスを許可するために「Enable write access (SQL, DDL, & DML)」権限を付与します。

データベースユーザーを作成したら、「Save」と「Deploy」をクリックしてユーザーを有効化します。
デプロイが完了したら、接続情報を確認します。作成したデータベースユーザーの情報ボタンをクリックしてください。

CData Sync から接続するために、以下の情報をメモしておきます。「Request a new password」をクリックしてパスワードを取得してください。

CData Sync の接続元 IP アドレスを IP 許可リストに追加
セキュリティ上の理由から、SAP Datasphere にはホワイトリストに登録された IP アドレスのみが接続できます。SAP Datasphere の IP 許可リストに IP アドレスを追加する方法の詳細は、SAP Datasphere ヘルプドキュメントをご覧ください。CData Sync をホストしているマシンの IP アドレスを必ず追加してください。
CData Sync のセットアップ
それでは、CData Sync で SAP Datasphere とソースデータ(例:Salesforce)への接続を設定していきましょう。
CData Sync の30日間無料トライアル版はこちらからダウンロードできます。
接続の追加
まず、CData Sync 内で SAP Datasphere への接続を確立します。
- CData Sync を開き、「Connections」タブに移動します。
- 「Add Connection」をクリックし、「Destinations」タブで「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 に設定します。 |
4. 接続をテストして、正常に接続できることを確認します。
次に、ソースデータ(Salesforce など)の接続を追加します。
- 再度「Add Connection」をクリックし、「Sources」タブで「Salesforce」を選択します。

- Salesforce の接続プロパティを設定し、接続をテストします。

ジョブの作成
CData Sync の「ジョブ」は、ソースから同期先へのデータレプリケーションプロセスを定義します。
- CData Sync の「Jobs」タブに移動します。
- 「Add Job」をクリックします。

- ジョブに名前を付けます。
- 設定済みの Salesforce 接続を「Source」として、SAP Datasphere 接続を「Destination」として選択します。
- 「Add Job」をクリックして作成します。

ジョブを作成したら、レプリケートするテーブルを指定するために「タスク」を追加する必要があります。
- 「Tasks」タブから「Add Task」をクリックします。

- ソース(Salesforce)から利用可能なテーブルとビューが表示されます。レプリケートしたいデータを選択します。

ジョブの手動実行
タスクを登録したら、ジョブを実行できます。通常はスケジュールを設定して自動実行しますが、このデモでは手動で実行してみましょう。
- タスクリストからレプリケートしたいタスクを選択します。
- 「Run」をクリックします。

- しばらくすると結果が表示され、レプリケーションが成功したことを確認できます。

Database Explorer でデータを確認
SAP Datasphere の Open SQL スキーマにデータが正常に登録されたことを確認してみましょう。
- SAP Datasphere のデータベースユーザー画面から、先ほど作成したユーザーを選択し、「Open Database Explorer」をクリックします。

- 新しいインスタンス接続の設定を求められます。データベースユーザーの User と Password を入力して接続を確立します。

- 作成したインスタンスの接続を開き、「Tables」を選択します。レプリケートされたデータを格納するために作成されたテーブルが表示されます。

- 「Open Data」をクリックしてデータを表示します。正常にレプリケートされた情報が確認できます。

- ここから、Data Builder を使用してこの Open SQL スキーマをソースとして参照し、データモデルに組み込むことができます。
まとめ
ご覧いただいたように、CData Sync はさまざまな外部データを SAP Datasphere にインポートする簡単な方法を提供します。今回は Salesforce を例に使用しましたが、CData Sync は多種多様な SaaS アプリケーション、リレーショナルデータベースなどに対応しています。ぜひお使いのデータソースでお試しください。CData Sync のトライアルを今すぐ始めましょう!
ご質問やサポートが必要な場合は、お気軽にお問い合わせください。