データプレパレーションサービス Zoho DataPrep のデータソースを CData Connect で拡張:Salesforce 編

by 杉本和也 | July 30, 2021

こんにちは。CData Software Japan リードエンジニアの杉本です。

今回はSaaS CRM で有名なZohoが提供するデータプレパレーションサービス、Zoho DataPrep と CData Connect を連携させる方法を紹介したいと思います。

Zoho DataPrep とは?

Zohoが提供するクラウドベースのデータプレパレーションサービスです。

https://www.zoho.com/dataprep/

ローコードで各種DBやサービスから取り込んだデータの統合、モデリング、クレンジングなどを実施し、より分析に適した形式へ出力することができます。

CData Connect とは?

CData Connect は、SaaS ベースで提供されるデータハブサービスです。Salesforce、NetSuite、Dynamics、Marketo、kintone など多様なSaaS にBI、アナリティクス、iPaaS、ノーコード開発プラットフォームからアクセスするための仮想エンドポイントです。連携方法が異なるSaaS をMySQL、SQL Server、OData の3種類のインターフェースに仮想化することで、データ連携をシンプルに実現します。

"SQL as a Service" といっていいかもしれません。

Zoho DataPrep へのSaaS データ連携

Zoho DataPrep は、各種クラウドDB、BigQuery、Redshift などのクラウドデータストレージ、CSVやExcel、XMLなどのテキストファイルおよびそれらがアップロードされたクラウドストレージをサポートしています。

しかしながら様々なクラウドサービスを各社で扱っている昨今では、デフォルトでサポートされていない Salesforce や Kintone などのSaaS データを扱いたいケースが多く存在すると思います。

その場合、一般的にはバッチプログラムなどのAPI連携を行うための仕組みを構築しなければいけませんが、CData Connect を使うことで、Zoho DataPrep に kintone や Salesforce をはじめとして多様なSaaS データをシームレスに連携することができます。

そこで今回は Zoho DataPrep から CData Connectを経由して、Salesforce のデータを取り込む方法を紹介したいと思います。

接続手順

CData Connect にSalesforce データを接続

まず CData Connect (旧CloudHub) のアカウントを取得します。CData Connect はSaaS ですので、アカウントを取得したらインストールやホスティングなどなく、ブラウザからログインすることですぐに使用開始です。

早速ブラウザからCData Connect にログインします。「DATABASE」タブから仮想データベースを設定していきます。まずは接続するデータソースであるSalesforce のアイコンをクリックします。

データソース接続画面が開くので、データソース毎の認証情報を入力します。Salesforce の場合はUser、Password、Security Token を入力することでデータにアクセスすることができます。

接続設定を行ったあとは、「Data Explorer」を使ってクエリを確認してみましょう。

また、Zoho DataPrepは特性上、対象のDBのテーブル・カラム構成を事前スキャンしてしまいます。その場合、不必要にSalesforceのスキーマをAPI経由でアクセスしてしまう可能性があるため、今回は事前に対象のクエリをビューとして登録しておきます。

以下のように「Create Derived View」をクリックし、Queryを登録しておきます。このQueryは「UserViews」というデータベース名でアクセスすることができるようになります。

次に「ENDPOINTS」タブで、このデータをどのインターフェースのエンドポイントして公開するかを選択します。デフォルトで、OData、MySQL wire protocol、TDS(SQL Server) wire Protocol がすべて有効になっています。

必要があればアクセスを許可する信頼されたIP アドレスを指定することも可能です。

最後に公開したデータにアクセスできるユーザーとトークンを作成します。「USERS」タブからユーザーを作成するとトークンが生成されます。ユーザーを作成した場合は、データソースの Privileges タブでアクセス権を付与することを忘れないようにしてください。

これでCData Connect でSalesforce データを扱う準備ができました。

Zoho DataPrep に CData Connect の接続を追加

続いて Zoho DataPrep側の手順です。

まずは Zoho DataPrep にログインして、「Create workspace」で新しいワークスペースを追加しましょう。

その後対象のデータソースを選択します。

CData Connect にはMySQLベースのインターフェースで接続するので、「Cloud database」を選択します。

接続設定画面で、CData Connect への接続情報を入力します。この時にインターフェースとしてMySQLを選ぶのがポイントです。

プロパティ名 備考
Select your database service name Other Cloud Services
Select your database type MySQL
Endpoint 例)cdatajapan.cdatacloud.net
Port 3306
Database Name UserViews UserViews もしくは任意のデータベース名を指定します。
Username 例)YOUR_USERNAME
Password 例)YOUR_PASSWORD
Connection name 例)CData Connect 任意のコネクションネームを指定します。
Use SSL true SSLで接続します。

接続が完了すると対象テーブルを選択する画面が表示されます。

先程登録しておいたビューを選択して「Import」をクリックしましょう。

以下のように「Import Complete!」と表示されればOKです。

あとは Zoho DataPrep の機能を用いて、データプレパレーション・クレンジングなどが実施できます。

おわりに

今回は Salesforce を接続先のリソースとしましたが、外にも様々なリソースをMySQLインターフェースとして扱うことができます。

www.cdata.com

Zoho DataPrep と併せて、是非色々と活用してみてください 。