Bカートの受注データを Google BigQuery へ定期的に連携する:CData Sync

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

本記事では 分析基盤向けデータ統合の自動化ツールである CDataSync を使って、Bカートの受注データを Google BigQuery に連携し、分析する方法を紹介したいと思います。

Bカート とは?

BカートはBtoB EC・Web受発注システムです。BtoBの受発注業務をEC化し、FAX・電話受注で起こりやすい聞き間違いや誤入力などの人為的ミスを防いだり、属人化の解消、作業時間の短縮に繋げることができるクラウドサービスです。

https://bcart.jp/

そのBカート では商品情報や受注情報にアクセスするためのHTTPベースの REST APIを提供しており、本記事ではこのAPIを活用して、BigQuery にデータを取り込んでみます。

https://api.bcart.jp/

実現イメージ

本記事ですすめるシナリオはBカートの受注データをBigQueryに移行する仕組みを構成することだけですが、少し背景をおさえておきたいと思います。

以下の記事でも紹介していますが、現在私達の周りには数多くの SaaS が溢れ、10数年前のようなRDBだけ連携していればいいという時代は過ぎ去っています。

https://www.cdata.com/jp/blog/2019-12-10-231629

f:id:sugimomoto:20200117110033p:plain

アメリカでは一つの企業で平均10~20程度の SaaS を使っているというレポートも存在し、多種多様なアプリケーションを活用しながら企業のビジネスプロセスが動いていることがわかります。

f:id:sugimomoto:20200117110040p:plain

そのような状況では、たとえ「受注データを切り口として分析したい」といった要望があったとしても、ディメンション(BIによる分析でよく用いられるようなスタースキーマ文脈における)が各種アプリケーション・SaaSに分散され、「受注データはこのサービスにあるけれど、ディメンションとして使いたい顧客属性は違うサービスに存在する」ということが頻発してしまいます。

https://docs.microsoft.com/ja-jp/power-bi/guidance/star-schema

f:id:sugimomoto:20200117110046p:plain

そのようなビジネス環境で今求められているのが、ELTの考え方です。多種多様なデータソースから、一度DWHにデータをロードし、DWHで分析や変換処理を回していきます。

f:id:sugimomoto:20200117110125p:plain

引用元:https://docs.microsoft.com/ja-jp/power-bi/guidance/star-schema

CData Syncでは、そのような分析基盤向けデータ統合の自動化をノンコーディングで実現することができるようになっています。

f:id:sugimomoto:20200117110132p:plain

そういった背景を踏まえ、本記事ではデータ分析基盤・DWHとして現在多く使われている Google BigQuery にBカートの受注データを連携する方法を紹介します。

f:id:sugimomoto:20200117110205p:plain

必要なもの

  • Google BigQuery・Data Portalが利用可能な GCPアカウント
  • Bカート アカウント
  • CData Sync

Bカート API のアクセストークンの取得

Bカート APIに接続するためには、予めアクセストークンを取得する必要があります。

以下の記事で取得方法を解説しています。

www.cdatablog.jp

CData Syncのインストール

それでは、取得した情報を元にCData Sync の設定を行っていきましょう。

CDataSyncはインストール型のソフトウェアなので、以下のURLからダウンロードして、任意のPCでセットアップを行います。

https://www.cdata.com/jp/sync/

セットアップ後、CData Syncの画面がブラウザで立ち上がるので、セットアップ時に入力したパスワードとユーザー名「admin」を入力して、ログインします。

ログイン後「情報」タブに移動し、「30日間の評価版をアクティベート」を行えば、CDataSyncの初期設定は完了です。

Bcart データソースの設定

まずはデータのSync を行うためのデータソースの設定を行っていきましょう。

CData Sync では任意のデータソースを自由に追加して、連携することが可能です。

デフォルトでは Bcart データソースが含まれていないため、「接続」に移動し「+ Add More」をクリックし、追加を行います。

一覧の中から「REST」を検索し、追加します。

追加後、CData Sync が再起動します。再起動後、データソースの一覧から「Bcart」が選択できるようになるので、これを選択し接続設定を行います。

接続設定では、「接続文字列」を選択して、以下の項目をセットし、保存します。

  • Personal Access Token:XXXXX

BigQuery への同期先設定

続いて、同期先となるBigQueryへの接続を構成します。

「接続」→「同期先」から「Google BigQuery」を選択し

あらかじめ作成しておいた、「ProjectId」と「Dataset Id」を入力し、「接続」をクリックします。

クリックすると、OAuthの認証プロセスが開始されますので、対象アカウントでログインし、アクセス許可を承認してください。承認後、設定を保存すれば準備完了です。

ジョブの作成

それでは実際にジョブを作成し、データをBigQueryに連携してみましょう。

ジョブのタブから「ジョブを作成」をクリックし

事前に構成した「Bcart」と「BigQuery」を、ソースと同期先としてそれぞれ構成します。

次に連携するデータを決定するために、「タスクを追加」をクリックし

任意のテーブルを選択します。

追加したタスクをクリックすることで、レプリケーション対象のデータのプレビューなども行えます。

最後にスケジュールタブから定期的に処理にするためにスケジューラーを設定します。以下の設定ですと1日1回、BigQueryへ最新のデータが同期されます。

後は設定を保存すれば、完了です。

テスト実行

テスト実行はタスクタブから対象となるタスクを選択し、「実行」ボタンをクリックすることで実施可能です。

正常に同期されると、以下のようにBigQuery上でデータが閲覧できるようになります。あとはLooker Studio などを通じてデータの分析・可視化に繋げることが可能です。

さいごに

本記事では、Bカート のデータを BigQueryに連携しましたが、CData Sync ではBigQuery 以外にも Amazon RedShift やAzure SQL Server といった多様な連携先をサポートしています。

是非普段皆さんの会社でお使いのDWH・データベースに同期してみてください。

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

関連コンテンツ