製品をチェック

製品の詳細・30日間の無償トライアルはこちら

CData Sync

Oracle Sales データ をHeroku Postgres にレプリケーションして、Salesforce Connect から利用する方法

データパイプラインツールのCData Sync を使って、Oracle Sales データのHeroku Postgres へのETL パイプラインをノーコードで作成してデータを統合する方法を解説します。

宮本航太
プロダクトスペシャリスト

最終更新日:2024-01-01
oraclesalescloud ロゴ

CData

sync ロゴ画像
Salesforce ロゴ

こんにちは!プロダクトスペシャリストの宮本です。

CData Sync は、いろいろなシナリオのデータレプリケーション(同期)を行うことができるスタンドアロンのアプリケーションです。例えば、sandbox および本番インスタンスのデータをデータベースに同期することができます。Oracle Sales データ をHeroku 上のPostgreSQL に同期することで、Salesforce の通常オブジェクトに加えて、Salesforce 外部オブジェクト(Salesforce Connect)としてOracle Sales データへのアクセスが可能になります。

要件

本レプリケーション例では、次が必要です:

  1. CData Sync (試用版もしくは商用版)、およびOracle Sales のレプリケーションに必要なライセンス。
  2. Heroku Postgress を含むHeroku app および、Heroku Connect アドオン許可。
  3. Salesforce アカウント。

レプリケーション同期先の設定

CData Sync を使って、Oracle Sales データ をHeroku 上のPostgreSQL データベースにレプリケーションできます。本記事では、Heroku 上の既存のPostgreSQL を使用します。PostgreSQL データベースをレプリケーション先に指定するには、[接続]タブから進みます。

  1. [同期先]タブをクリックします。
  2. PostgreSQL を同期先として選択します。

    PostgreSQL への接続には、Port(デフォルトでは5432)、およびデータベース接続プロパティを設定し、サーバーに認証するuser およびpassword を設定します。データベースプロパティが指定されていない場合には、ユーザーのデフォルトデータベースに接続します。

  3. 接続のテスト]をクリックして、正しく接続できているかをテストします。 PostgreSQL データベースの接続設定。
  4. [変更を保存]をクリックします。

Oracle Sales 接続の設定

データソース側にOracle Sales を設定します。[接続]タブをクリックします。

  1. [接続の追加]セクションで[データソース]タブを選択します。
  2. Oracle Sales アイコンをデータソースとして選択します。プリインストールされたソースにOracle Sales がない場合には、追加データソースとしてダウンロードします。
  3. 接続プロパティに入力をします。

    Oracle Sales はSSL 経由でBasic 認証を使用します。次の接続プロパティを設定して、接続してください。

    • Username:Oracle Cloud service へのログインに使用するユーザー名に設定。
    • Password:パスワードに設定。
    • HostURL:Oracle Cloud service のWeb アドレス(URL)に設定。

    データソースの接続設定(NetSuite の例)。
  4. [接続のテスト]をクリックして、正しく接続できているかをテストします。
  5. [変更を保存]をクリックします。

Oracle Sales インスタンス毎のクエリの設定

Data Sync はレプリケーションをコントロールするSQL クエリを簡単なGUI 操作で設定できます。 レプリケーションジョブ設定には、[ジョブ]タブに進み、[ジョブを追加]ボタンをクリックします。 次にデータソースおよび同期先をそれぞれドロップダウンから選択します。 レプリケーションジョブのソースおよび同期先を選択。

テーブル全体をレプリケーションする

テーブル全体をレプリケーションするには、[テーブル]セクションで[テーブルを追加]をクリックします。表示されたテーブルリストからレプリケーションするテーブルをチェックします。

テーブル全体をレプリケーション(NetSuite の例)。

テーブルをカスタマイズしてレプリケーションする

レプリケーションはテーブル全体ではなく、カスタマイズが可能です。[変更]機能を使えば、レプリケーションするカラムの指定、同期先でのカラム名を変更しての保存、ソースデータの各種加工が可能です。レプリケーションのカスタマイズには、ジョブの[変更]ボタンをクリックしてカスタマイズウィンドウを開いて操作を行います:

  • チェックボックスでフィールドを追加もしくは削除 Choose which fields to replicate.
  • カラムリストの下に新しく計算されたフィールドを追加する Add a computed field.
  • フィルタセクションを利用してフィルタを追加する Add a replication filter.

インターフェースを使って変更を行うと、レプリケーションのSQL クエリは以下のようなシンプルなものから:

REPLICATE [Opportunities]

次のような複雑なものになります:

REPLICATE [Opportunities] SELECT [OptyId], [Name] FROM [Opportunities] WHERE [CreatedBy] = Jack

レプリケーションのスケジュール起動設定

[スケジュール]セクションでは、レプリケーションジョブの自動起動スケジュール設定が可能です。反復同期間隔は、15分おきから毎月1回までの間で設定が可能です。

スケジュール起動設定。

レプリケーションジョブを設定したら、[変更を保存]ボタンを押して保存します。複数のOracle Sales データ のジョブを作成して、Salesforce の外部オブジェクトとして利用可能です。

外部オブジェクトとしてOracle Sales データ レプリケーションにアクセス

Oracle Sales データ がHeroku 上のPostgreSQL データベースとしてレプリケーションされたので、Heroku のOData インターフェースを設定し、Salesforce Connect から外部オブジェクトとしてデータ連携できるようにします。

Heroku のOData Service を設定します

まずは、Heroku 上のPostgreSQL データベースに複製されたOracle Sales データ への接続のために、データベースに対しHeroku External Object を設定します。

  1. Heroku ダッシュボードで、[Connect Add-on] をクリックします。
  2. [External Objects]を指定します。はじめてHeroku External Object を使用する場合には、OData Server のログインクレデンシャルを作成するようにナビゲートされます。
  3. OData service URL およびクレデンシャルを確認します。このクレデンシャルをSalesforce Connect 接続時に利用します。
  4. [Data Sources]において、前のプロセスで作成したレプリケーション済みデータベースを設定します。
Heroku Connect でのOData サービスの設定。

詳しくは、こちらのHeroku documentation を参照してください。

Salesforce の外部データソースの設定

Heroku のOData サービスの設定が終わったら、Salesforce Connect を使って、複製されたOracle Sales データ のデータに外部データソースとして連携します。

  1. Salesforce で設定をクリックします。
  2. Administration (管理)セクションで、[データ]→[外部データソース]をクリック。
  3. データソースパラメータプロパティを設定します:
    • External Data Source: Salesforce UI に表示される名前
    • Name: API の一位の識別子
    • Type: Salesforce Connect: OData 4.0
    • URL: Heroku Connect のOData エンドポイント
    • Format: JSON
  4. 認証の設定:
    • Identity Type: Named Principal
    • Authentication Protocol: Password Authentication
    • Username: Heroku Connect username
    • Password: Heroku Connect password
  5. [保存]をクリック。
Salesforce 外部オブジェクトの設定。

Oracle Sales オブジェクトの同期

Salesforce の外部データソース登録が終わったら、次の方法でOracle Sales 外部データソースに変更を反映させます。Oracle Sales テーブルの定義とOracle Sales 外部オブジェクトの定義を同期します。

  1. 作成した外部データソースのリンクをクリック。
  2. [Validate and Sync]をクリック
  3. Oracle Sales テーブルを選択して、[同期]をクリックします。
外部データソースの同期。

Salesforce オブジェクトとしてOracle Sales データ にアクセス

これで、レプリケーションされたOracle Sales エンティティに対して、Salesforce の通常オブジェクトと同じように外部オブジェクトとしてアクセスが可能になりました。

是非、CData Sync の30日の無償評価版 をダウンロードして、Salesforce との連携をお試しください!

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。