kintoneの営業データをBigQueryに自動同期し、Tableauで可視化する

## 概要
Kintone(キントーン)で自社の事業に合わせたアプリを作成し、顧客や案件の管理などに役立てている企業も多いでしょう。Kintoneはノンプログラミングでアプリが作れる点が魅力的ですが、いくつもの自社アプリに散らばるデータを統合し、高度な分析を行うにはプログラミングとデータベースについての知識が必要となることがほとんどです。またデータベースを常に更新し続けるのはコストがかかります。
そこで今回は、[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)（トロッコ）という分析基盤向けデータ統合サービスを使い、Kintoneのデータの抽出自動化＋DWH（データウェアハウス）への統合＋簡単な可視化を試みます。
なおこちらの[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)は、Kintoneの他にも、様々な広告・CRM・DBなどのデータソースにも対応しています。
[trocco®︎の使い方まとめ（広告・CRM・データベース他）](https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)
![Kintone_BugQuery.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/8482c63f-d646-74e6-b959-d4d9f2e163f5.png)
## はじめに
今回はこのようなKintoneのデータを
![Kintoneデータ元画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/b276696e-cbf4-d511-c36a-552107e9810a.png)
以下のように簡単なグラフにします
![スクリーンショット 2022-02-24 9.59.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/70a1ed08-1952-e2e5-3727-15d804e9b781.png)
## こんな人におすすめ
- アプリだけでなくデータ分析もノンプログラミングで実現させたい
- KintoneのデータをGoogle BigQueryに自動的に蓄積させたい
- Kintoneに集めた営業・顧客データを自動的に分析できるようにしたい
## 1. trocco®︎でKintone→Google BigQueryの転送自動化
### 1-0. 事前準備
データの転送のためにはKintoneのアカウントはもちろん、[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)のアカウント、Google BigQueryを利用するGoogleアカウントが必要です。（Google BigQueryはデータセット、テーブルの作成も済ませておきましょう。）
[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)はフリープランがありますので、。申し込みを済ませておきましょう。
[https://trocco.io/lp/inquiry_free.html](hhttps://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)
（申込時に、こちらの記事を見たという旨を記載して頂ければスムーズにご案内できます）
### 1-1. 転送元・転送先を決定
[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)にアクセスします。ダッシュボードから「転送設定を作成」のボタンを押しましょう。
![転送設定新規作成.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/27aa7dc2-e901-9f3e-d131-aef0be7f4713.jpeg)
[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)では多くのサービスをデータ元としてサポートしています。今回は転送元に「Kintone」を選択します
![Kintone選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/3e2a85d5-9929-74f5-81af-b1ddbe8c4acd.png)
転送先には「Google BigQuery」を選択し、転送設定を作成します。
![BigQuery選択.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/3f05a05f-db04-0aef-0df5-8864245de5e8.png)
![この内容で作成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/f2729a38-f598-766a-1b43-e66948328911.png)
続いて設定画面になるので、必要な情報を入力していきます。
### 1-2. Kintoneとの連携設定
後で見返したときに内容がわかるよう転送設定の名前とメモを入力します。
![概要設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/8edc0098-b904-fbdf-fd54-098565f35650.png)
「Kintone接続情報」内の「接続情報を追加」ボタンを押します。
![Kintone接続情報.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/46f6b801-d5f3-b9d3-d6cf-c5cf6697cbb0.png)
別のタブでKintone接続情報の新規作成画面が開きます。
Kintoneとの接続にはユーザーネームやパスワード、サブドメイン名といった情報が必要になります。
問題がなければ保存して設定画面に戻ります。
![Kintone接続情報作成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/9923c72e-2fe8-2075-2a6b-fc537b8b4232.png)
設定画面に戻り、接続情報の「接続情報を読み込む」ボタンを押すと、先ほど作成した接続情報が選択できるようになります。
![スクリーンショット 2022-02-21 17.19.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/e3a0bec8-c367-cd81-1dc8-b50b1ae7d323.png)
### 1-3. Kintoneからのデータ抽出設定
Kintoneとの接続ができたらどのようなデータを取得するかを設定していきます。
今回はあるアプリからクリック数のデータを取得しますので、必要なカラムの設定を行っていきます。
![スクリーンショット 2022-02-21 17.25.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/db9bd259-0116-fd5e-cb23-9d99d7e46c0a.png)
### 1-4. 転送先Google BigQueryの設定
転送元のKintoneと同様に「接続情報を追加」のボタンから接続情報の設定をしていきます。
![スクリーンショット 2022-02-21 17.45.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/9b0ab488-f389-b370-ca33-5047c4e0c3f9.png)
別のタブで設定画面が開きます。Google BigQueryに関してはGoogleアカウントとの連携が必要となるほか、事前に転送先となるデータセットとテーブルを作成しておく必要があります。
![スクリーンショット 2022-02-21 17.47.59.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/6963976c-26d8-6adb-5b74-8b54fdc28c95.png)
Google BigQueryを利用するアカウント名や、プロジェクトIDなど接続に必要な情報を入力したら、保存して設定画面に戻ります。
![スクリーンショット 2022-02-21 17.52.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/7621f7e3-326a-9bdf-7551-5c5b9b28be19.png)
設定画面に戻り、「接続情報を読み込む」ボタンを押すと、先ほど作成した接続情報が選択できるようになります。
![スクリーンショット 2022-02-21 18.09.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/7f277d3f-1651-cf85-dd19-1f3a6b39ed56.png)
転送先となるデータセット、テーブルを設定します
接続情報が正しく設定されていれば、データセット名、テーブル名はtrocco®︎の方で読み込んで一覧で表示してくれます。
![スクリーンショット 2022-02-21 18.29.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/91e4c5d6-256a-bfeb-f329-4d002996d48d.png)
その他必要な設定を行い、「次のSTEPへ」を押します。
[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)ではいくつかの転送モードを選択することが可能です。必ずしも毎回の転送で全てのデータを転送する必要はなく、また万が一転送に失敗してしまった際も不要なデータがテーブルに残らないように設定することができます。詳しくは[こちらのヘルプページ](https://documents.trocco.io/docs/data-destination-bigquery)をご覧ください。
![スクリーンショット 2022-02-24 0.46.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/880503ef-bab2-ea19-83d8-c4b89deda125.png)
なお、今回は転送設定を作成しながら接続情報の作成も行いましたが、ダッシュボードの「接続情報」から事前に設定を済ませておくことも可能です。
![スクリーンショット 2022-02-24 10.10.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/6ebf238e-66fe-2c50-4b82-001110eefb36.png)
### 1-5. データのプレビュー
設定に従って転送のプレビューが作成されます。
![スクリーンショット 2022-02-24 1.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/1ba307af-e322-1dc1-4c56-1609e7bbf5cd.png)
しばらく待つとプレビューが作成されました。
![スクリーンショット 2022-02-24 1.27.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/48c547e3-dc70-742a-07d7-d199ff25b1b6.png)
プレビューが作成されましたが、BigQueryではカラム名に日本語は使用できません。このまま転送を行うと失敗してしまう可能性があるのでプレビュー下部の詳細設定からカラム名の修正を行います。
![スクリーンショット 2022-02-24 1.29.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/f06b6ca7-3bd3-ea58-cd70-9ce72167fa07.png)
設定を変更し、再度プレビューを作成します。カラム名も変更され、問題なさそうなので次の確認画面へ進みます。
![スクリーンショット 2022-02-24 1.34.33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/35d72f79-874d-8192-7a2b-3834a45fc57c.png)
### 1-6.確認画面
確認画面では設定内容が確認できます。
また既存の設定を編集した場合はこの画面で編集した内容が差分としてハイライト表示されます。
ページ下部の「保存して適用」を押しましょう。
![スクリーンショット 2022-02-24 1.37.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/65214ab8-ca5a-94c0-ce9b-a8fd6b3a2184.png)
[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)は設定の変更を履歴として保存することで必要に応じて過去の設定を復元する機能があります。今回は新規の設定なので初版とでもしておきます。
![スクリーンショット 2022-02-24 1.41.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/59e2c4ed-146a-8deb-7078-3ddd207eb787.png)
### 2-1.転送設定の詳細確認 
転送設定の詳細設定の画面に移動します。
「転送設定概要」タブでは大まかな内容が確認できます。
![スクリーンショット 2022-02-24 1.49.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/c4b5ad0b-248a-c77e-27ef-5a1a98285fee.png)
「スケジュール・トリガー設定」タブから「スケジュールを追加」を押します。
![スクリーンショット 2022-02-24 1.55.51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/6ceed7da-1fa5-5fea-3800-ff6754e13b14.png)
スケジュール設定のモーダルが出ます。ここで設定を行うことで定期的に転送が実行されるようになります。今回は毎週月曜日の０時に転送を行うよう設定をします。
![スクリーンショット 2022-02-24 1.57.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/042becae-1a6d-2edb-df3b-6b7a5ecf74e8.png)
![スクリーンショット 2022-02-24 1.57.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/5f8b0c88-82da-861a-127f-fb8127f13dcb.png)
### 2-2. データ転送ジョブの実行
設定はこれで終わりです。先程転送スケジュールを設定しましたが、今回は手動で転送を行ってみましょう。右上の「実行」を押します。
![スクリーンショット 2022-02-24 2.04.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/f1f12f38-1270-8ee9-6c66-2d75321b310a.png)
実行メモの作成や、設定した場合はカスタム変数の展開方法を設定できます。特になにもないのでそのまま「実行」を押します。
![スクリーンショット 2022-02-24 2.06.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/8ba14e3f-0311-334c-b8e8-6b7fa5808959.png)
![スクリーンショット 2022-02-24 2.09.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/5b0d2e91-63ca-250a-fc4e-41fbb4d2db26.png)
転送が成功したようです。
![スクリーンショット 2022-02-24 2.14.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/9a488fb1-8354-7ba9-070d-583193fd19e3.png)
## 2. Google BigQueryの設定
特に設定することはありません。プレビュー画面から確認して見るとデータがきちんと転送されていることが確認できます。
![スクリーンショット 2022-02-24 2.19.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/b2ef1117-c389-064e-9c4c-a0e8e5042b5e.png)
## 3. Tableauの設定
Tableauのコンソール画面から新規のワークブックを作成します。
![スクリーンショット 2022-02-24 9.42.29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/051a69e8-36f9-8ac5-b021-8def3d092829.png)
コネクタの一覧からGoogle BigQueryを選択します。Googleアカウントの認証を求められるので、先程転送先に使用したGoogle BigQueryを利用するアカウントで認証を行います。
![スクリーンショット 2022-02-24 9.45.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/3309df1b-0c92-49f7-94f5-c348a03caf21.png)
転送先のテーブルを選択するとデータが読み込めているのが確認できます。
![スクリーンショット 2022-02-24 9.49.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/89861383-fb63-aafa-b723-2052ec8224e4.png)
分析に必要なフィールドを選択、配置することで自動的にグラフが作成されます。
![スクリーンショット 2022-02-24 9.54.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/5ef0a9ca-cbb8-7ebc-96fe-ffe842953c23.png)
他にもいくつか作成し、ダッシュボードに配置して完成です。
![スクリーンショット 2022-02-24 9.59.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1071783/4cf93dd1-7b02-6098-2e2b-5973b64e03f9.png)
## まとめ
Kintoneのデータをノンコード、ノンプログラミングで可視化してみました。今回は簡単なテストデータを使用しましたが、[trocco®︎](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)を利用することでKintoneアプリで集積した大量の顧客データ、案件データも自動でDWHへ格納、BIツールで可視化という流れを作ることが可能です。
Kintoneをさらに活用してみたい方はぜひいかがでしょうか。
[https://trocco.io/lp/index.html](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)
[フリープラン](https://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=kintone_to_bigquery_tableau)も実施しています。この機会にぜひ一度お試しください。(申込時に、この記事を見た旨を記載して頂ければスムーズにご案内できます)
その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
[trocco®︎の使い方まとめ（CRM・広告・データベース他）](https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)