CData Software Blog

クラウド連携のCData Software の技術ブログです。

Shopify データをDataSpider 経由でPostgreSQL に連携する

こんにちは。マーケティング担当の對馬です。本記事ではEC サイト構築プラットフォームである「Shopify」のデータをDataSpider で取得し、データベースに連携する方法をご紹介します。

Shopify は、EC サイト開発・運用のためのプラットフォームです。

www.shopify.com

これまでネットショッピングサイトに必要だったサーバーの構築や管理が不要であり、初期費用がかからないなど、すぐにサイトをオープンできます。また必要な機能はアプリで追加することができるため、自由度が高く構築可能です。

EC サイトでは顧客データや商品データなど、多くのデータが存在します。 他サイトや店舗とのデータを統合して分析や管理が必要で、データをデータベースにまとめたいといった声をよくいただきます。

DataSpider はデータ連携のためのミドルウェアで、アダプタを使ってシステムやサービスのデータを取得・出力することができます。

www.hulft.com

Shopify 専用のアダプタはありませんがJDBC のインターフェースがあるため、CData のコネクタと組み合わせて利用可能です。

CData ではShopify Driver を用意してありますので、すぐにShopify データに接続できます。

必要なもの

  • Shopify アカウント
  • DataSpider
  • CData JDBC Driver for Shopify

Shopify 事前準備

データ連携をするために、Shopify の管理画面上で準備をします。 Shopify のAPI を利用するため、カスタムアプリ開発を許可します。

権限を設定します。アクセスできるスコープを選択します。

アプリを利用できるようにインストールします。

アクセストークンを取得します。一度しか表示できないため、忘れないようにしてください。 アクセストークンは、後ほど接続の際に利用します。

Shopify Driver のインストール

CData 製品サイトより、Shopify コネクタのインストーラをダウンロードします。

https://www.cdata.com/jp/drivers/shopify/

今回はDataSpider と組み合わせて利用するため、JDBC Driver を取得します。

www.cdata.com

[ダウンロード 評価版]ボタンを押下し、インストーラを取得します。

exe ファイルがダウンロードされます。 取得したファイルを実行し、画面の内容を確認しながらインストールします。

ファイルの配置

インストールしたShopify JDBC Driver のjar ファイルとlic ファイルを、以下DataSpider インストールディレクトリに配置します。

配置元ディレクト

Driver インストールディレクトリ\CData\CData JDBC Driver for Shopify 2021J\lib

ファイル

  • cdata.jdbc.shopify.jar
  • cdata.jdbc.shopify.lic

配置先ディレクト

DataSpiderインストールディレクトリ\DataSpiderServista\server\plugin\data_processing\modules\jdbc_adapter

DataSpider での開発

DataSpider でデータ取得の処理を開発します。

接続設定

まずは接続の設定をします。 [コントロールパネル] > [グローバルリソースの設定]から、新しいグローバルリソースを追加します。

Shopify 接続設定

Shopify への接続を設定します。 「新しいグローバルリソースの作成」から[データベース] > [JDBC]を開き、アイコンをダブルクリックします。

接続の設定画面が開かれます。必要な情報を入力します。

DataSpider 設定名 設定内容
ドライバクラス名 cdata.jdbc.shopify.ShopifyDriver
URL jdbc:shopify:ShopURL="https://xxx.myshopify.com";OAuthAccessToken="shpat_xxx"

ShopURL にはデータを取得するストアURL、OAuthAccessToken には事前に取得したトークンを指定します。

[接続テスト]ボタンを押下し、接続を確認します。

PostgreSQL 接続設定

データを格納するPostgreSQL への接続を設定します。

[グローバルリソースの作成]より[データベース]タブ > [PostgreSQL]を開きます。 接続するバージョンのアイコンをクリックします。

接続の設定画面が開かれます。 必要な情報を入力します。

DataSpider設定名 設定内容
ホスト名 localhost
ポート番号 デフォルトで5432
データベース名 接続するデータベース名
ユーザ名 ユーザー名
パスワード パスワード

入力が終わりましたら、[接続テスト]ボタンで正常に接続できるか確認します。

[OK]ボタンで設定内容を保存します。

連携フロー作成

Shopify データを取得し、PostgreSQL に出力するフローを開発します。

新規プロジェクトとスクリプトを作成します。

Shopify データ取得処理

まずはShopify のデータを取得する処理を作成します。

ツールパレットから[データベース] > [JDBC] > [テーブル読み取り]アイコンをドラッグアンドドロップで配置します。

テーブル読み取り処理の設定画面が開かれます。 画面に沿って必要な情報をドロップダウンで設定します。今回はShopify の「Customers」を取得します。

DataSpider 設定名 設定内容
接続先 作成したShopify 接続設定名
テーブル名 取得するテーブル名(Customers)

テーブル名を指定するとスキーマ定義が表示されます。 読み取り対象を選択することが可能です。今回はこのままで全データを取得します。

[OK]ボタンを押下し、設定内容を保存します。

PostgreSQL 書き込み処理

PostgreSQL に書き込む処理を作成します。

[ツールパレット] > [データベース] > [PostgreSQL] > [テーブル書き込み]アイコンを中央画面にドラッグアンドドロップします。

テーブル書き込み処理設定画面が開かれます。 必要な情報をドロップダウンで指定します。

DataSpider設定名 設定内容
入力データ Shopify データ取得処理名
接続先 PostgreSQL接続設定名
テーブル名 接続テーブル名

[完了]ボタンで設定内容を保存します。

マッピングの追加のダイアログが表示されます。 今回はデータの出力スキーマを設定するため、[はい]を選択します。

マッピング

データの加工を行います。

「mapping」アイコンが追加されています。アイコンをダブルクリックで開きます。

新しいタブでマッピング画面が開かれます。 出力する項目をマッピングし直します。

フロー作成画面に戻り、フローをすべてつなげて完成です。

実行

実行してみます。

成功しましたので、PostgreSQL でデータを確認します。

Shopify のデータが格納されています。

おわりに

Shopify データをDataSpider から取得し、PostgreSQL へ出力する方法をご紹介しました。 DataSpider にアダプタがない場合でもJDBC Drivers と組み合わせることで、ドロップダウンでの設定でデータ取得処理を作成することが可能です。

ぜひトライアル版で体感してみてください。

www.cdata.com