Shopifyとは
Shopifyは、2004年にカナダで創業された世界No.1のシェアを誇るECプラットフォームです。2017年には日本法人を設立し、国内向けにローカライズされたことを背景に日本の企業からも多数の導入実績を獲得しています。
またShopifyは、世界各国に展開できるECサイトの構築が容易にできます。さらに、「初期費用がかからない」ことも評価されており、現在スタートアップ企業から大企業まで幅広く使われています。
概要
Shopifyにはトラフィック、販売、注文、お客様などの情報をリアルタイムで追跡し、分析する機能が備わっています。
しかし、 何千、何万という単位のデータをリアルタイムで分析したい場合や、Shopify以外のサービスで集積しているデータと絡めた高度な分析を行いたい場合は別途DWH(データウェアハウス)へデータを統合するのが有効ではないでしょうか。またデータの統合後は、必要に応じてLooker・TableauといったBIツールでデータの可視化・分析を行うことも可能です。
今回はtrocco®(トロッコ)というデータ分析基盤構築サービスを使い、ShopifyのデータをGoogle BigQueryというDWHに統合します。
なお今回データの転送手段として使用するtrocco®は、Shopifyの他にも、様々な広告・CRM・DBなどのデータソースに対応しています。

ゴール
今回はShopifyに登録されたサンプルの顧客データ(2 records)をGoogle BigQueryに転送することを目標にします。(下画像)
また今回の分析では、データベースやデータエンジニアリングに関する専門的な知識がない方でもデータ分析が行えるよう、ほとんどコーディング作業をせずに分析基盤を構築します。さらに、データの更新についても自動化を目指します。

こんな方におすすめ
- Shopifyのデータを分析基盤・DWHに取り込みたい方
- Shopifyのデータ分析機能に不満を感じている
- Shopifyに登録したデータ件数が多すぎて分析できない
1.trocco®でShopify → Google BigQueryの転送自動化
1-0.事前準備
今回のデータ転送に使用するtrocco®のアカウントが必要になります。
trocco®は現在クレジットカード不要のフリープランを実施しています。事前に申し込みをしてアカウントを作成しておきましょう。
https://trocco.io/lp/index.html
またデータ元となるShopifyのアカウントや、データの転送先となるGoogle BigQueryのアカウントも事前にご準備ください。
1-1. 転送元・転送先の決定
trocco®にアクセスして、ダッシュボードから「転送設定を作成」ボタンを押します。

転送元と転送先となるツールを選択する画面になります。

今回は転送元に「Shopify」、転送先には「Google BigQuery」をそれぞれ選択し、「この内容で作成」ボタンを押します。

1-2.Shopifyとの連携設定
trocco®には社内のユーザー間でチームを作成し、チームで転送設定を共有するチーム機能があります。チームの他メンバーにも転送設定の内容が分かるように名前とメモを入力します。

次にShopifyとの連携に関する設定をするために「転送元の設定」内の「接続情報を追加」ボタンを押します。

別のタブで接続情報の新規作成画面が開きますので、名前、ドメイン、アプリ種別、アクセストークンなどの必要事項を記入して保存ボタンを押します。


再度転送設定画面に戻り、接続情報の「再読込」ボタンを押すと、先ほど作成した接続情報が選択できるようになります。

これでShopifyとの連携は完了です。
1-3.Shopifyからのデータ抽出
続いて、どのようなデータを抽出するかを設定していきます。
ターゲットの対象としては以下のものを設定できます。

今回はターゲットの対象を「order」にしてデータを取得します。
また、必須の設定ではないですが、作成日、更新日、注文日の設定によりデータを取得したい期間を絞り込むことができます。

1-4.Shopifyのその他ステータスの設定
また、今回は注文ステータス、財務ステータス、フルフィルメントステータスを以下のように設定します。

1-5.転送先Google BigQueryの設定
転送元Twitter広告と同じ要領で設定していきます。
データセットとテーブルにはBigQuery上であらかじめ作成したサンプルの名前を入力していきます。
また、カスタム変数を使うことにより、ジョブ実行時に指定の値に置き換えることができます。

Google BigQueryデータセットのロケーションを指定することができます。

また、あらかじめデータセットとテーブルをあらかじめ作成していなくても、自動生成オプションを有効にすれば、自動作成が可能です。
今回は、転送モードを「全件洗い替え(REPLACE)」に設定します。

これで入力は完了です。「次のステップへ」をクリックして次に進みましょう。
1-6.データのプレビュー
転送設定に従ってShopifyから転送するデータのプレビューが作成されます。

問題が無ければ確認画面に移り、「保存して適用」を押しましょう。

1-7. スケジュール・通知設定
「スケジュール・トリガー設定」タブを開き、スケジュールを追加します。

以下のように実行スケジュールを設定することで、転送を定期的に実行し自動化することが出来ます。

また必須の設定ではないですが、ジョブの実行ステータスに応じてE-mailやSlackに通知を行うことができます。

1-8. データ転送ジョブの実行
設定は以上です。最後に、手動で転送ジョブを実行してSnowflakeにデータを転送します。
今回は手動で実行するので、ジョブ詳細画面右上の「実行」ボタンを押します。

これで転送は完了です。
2.Google BigQueryの設定
Google BigQueryで必要な操作はありません。SQLの記述をしなくともデータのETLを実行することができました。
念の為Google BigQueryのコンソール画面から確認してみると、たしかにデータが転送されていることが確認できます。

まとめ
ほぼ画面上の設定のみでShopifyのデータをGoogle BigQueryへと統合してみました。
trocco®の「スケジュール・トリガー機能」の設定を行ったため、以後はShopifyに新しく追加されたデータはそのスケジュール設定に従って自動的にGoogle BigQueryへ転送されます。
また、Google BigQueryに統合したデータはBIツールによって分析、可視化することが可能です。
今回は2 recordsというごく簡単なサンプルのデータを用いた転送を行いましたが、trocco®の活用により何千、何万件、何億という件数のデータをGoogle BigQueryへと統合することが可能になり、Google BigQueryの強みであるデータの高速処理を活かせます。
trocco®では、クレジットカード不要のフリープランをご案内しています。データ統合にご興味がある方はぜひこの機会に一度お試しください。
