Garoonにある様々なデータをBigQueryに同期してみる:CDataSync

こんにちは、エンジニアの宮本です。

今回は、ノーコードでETL/ELT のジョブを実行することができる CData Sync を使って、Garoon にある予定や申請データを BigQuery に連携していく内容をご紹介していきます。

構成

f:id:sennanvolar44:20200421153046p:plain CData Sync をローカルマシンにインストールし、Garoon → CData Sync(オンプレ) → BigQuery でデータをBigQueryにデータ同期する構成にしています。 CData Sync はオンプレでも、クラウドでもどこでも動きますので、わざわざローカルマシンを通したくないときは、EC2などのVMや、Amazon AMI でのCData Sync を動かすことができます。

CData Sync とは?

f:id:sennanvolar44:20200420213536p:plain Salesforce や Marketo、kintone などのクラウド(SaaS)データ を DB およびデータウェアハウスに同期するレプリケーションツールです。複雑な設定等は特になく、高度な同期ジョブを作成、運用することができます。また SQL を設定することができるので、柔軟にデータを抽出してデータベースへ連携することができます。

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

必要なもの

CDataSync のみ!(30日間無料です)
※Garoon と BigQuery にアクセスできるアカウントを用意していること

実施手順

では、ここから実際に CData Sync をインストールし、ジョブの作成~実行を行っていきます。

CData Sync のインストール

まずはCDataSync のインストールから行いますが、非常に簡単です。windows 版、Java 版と用意していますが、どちらもインストーラーを実行していただければすぐに使うことが出来ます。今回は Windows 版を使用して進めていきます。

詳しいインストール手順は、以下の記事をご参考ください。

https://www.cdata.com/jp/blog/2019-12-02-160226

Garoon コネクタのインストール

デフォルトでは Garoon のコネクタは CData Sync には入っていませんので、ユーザ自身でダウンロードを行い追加していきます。

接続画面下部にある以下のAdd More をクリックします。
f:id:sennanvolar44:20200421161254p:plain

「garoon」と入力しても、下の赤枠エリアに何もアイコンが表示されなければ、別の方法でコネクタを追加します。表示されていれば、アイコンをクリックしてそのままインストールすることができます。
※ 2020/04/22 時点ではまだ表示されませんので、以下のリンクよりCDataサポートデスクにお問い合わせください。すぐに Garoon コネクタをお渡しいたします。
https://www.cdata.com/jp/support/

f:id:sennanvolar44:20200421162021p:plain

Garoon への接続設定

それぞれ必要な情報を入力し、「接続のテスト」でOKであれば「変更を保存」をクリックして接続情報を保存します。
f:id:sennanvolar44:20200421163707p:plain

もしBasic 認証をしている場合は、「Advanced」タブから以下の入力項目がありますので、設定後保存します。必要であれば、再度接続テストを行ってください。
f:id:sennanvolar44:20200421163937p:plain

BigQuery への接続設定

BigQuery はデフォルトでコネクタが用意されています。「同期先」タブから BigQuery アイコンをクリックします。
f:id:sennanvolar44:20200421164734p:plain

プロジェクトIDとデータセットIDを入力し、右下の「Reset Connection」をクリックします。そうすると、CData Sync からBigQuery へのアクセス許可を求められます。接続ができると接続完了メッセージが画面上部に表示されますので、「変更を保存」で接続情報を保存します。
※事前にBigQuery のデータセットは用意しておいてください。

f:id:sennanvolar44:20200421165053p:plain

ジョブを作成

まずは、TOP画面から「ジョブを追加」をクリックし、DataSource に Garoon、Destination に BigQuery を選択します。
次に「赤枠のテーブルを追加」をクリックし、連携させたいテーブルを選択します。ここでは、Garoon のエンドポイントがテーブル一覧として表示されています。今回は「Events」と「Requests」を選択してみます。
f:id:sennanvolar44:20200421170612p:plain

もし、「条件を指定して Garoon からデータを抽出したい」、「他のテーブルと結合して連携したい」などがある場合、クエリと書いてある下の赤枠部分をクリックしてください。オリジナルのクエリを入力することができるようになります。
また、スケジュールタブをクリックすると、作成したジョブのスケジューリングを行うことができます。
f:id:sennanvolar44:20200421171320p:plain

ジョブを実行

実行したいクエリにチェックを入れ、実行ボタンをクリックします。BigQuery へのレプリケートが終わると、更新日時と何件レプリケートしたかが表示されます。
f:id:sennanvolar44:20200421172128p:plain

差分更新

デフォルト設定で差分更新されるようになっていますので、再度実行しますとレプリケート件数は0件となります。
f:id:sennanvolar44:20200421172529p:plain

BigQuery

対象のデータセットに「Events」と「Requests」テーブルが作成され、「Requests」テーブルに select * を実行すると Garoon にあったレコードが全件表示されました。 f:id:sennanvolar44:20200421173047p:plain

最後に

いかがでしたでしょうか。
CDataSync の設定だけで、Garoon → BigQuery 連携が完了することができました。BigQuery に連携できたことから、データポータルでレポートを作成したり、BigQuery ML で使用したりと、Garoon データをさまざまなケースで使えるようになりました。
CData Sync は30日間無料でご利用できますので、ぜひお試しください!

www.cdata.com

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

関連コンテンツ