LINE広告のレポートをBigQueryに自動同期し、データポータル(旧Data Studio)で可視化する

## 概要
LINE広告を出稿した際に、クリック、インプレッション、コンバージョンといった数字の分析は、広告効果を測る上で非常に重要になってきます。しかし、そのような分析を行うには、多くのデータを分析基盤に統合するという手間のかかる作業が待っています。
そこで、今回はLINE広告のレポートデータをBigQueryに[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)を使ってデータを統合し、可視化するまでを行ってみます。

その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
[troccoの使い方まとめ（CRM・広告・データベース他）]
(https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)

![line_trocco_bq.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/3d7a7375-a8da-caa7-41d1-9ab809cb9271.png)

## ゴール
このようなLINE広告のレポートデータから
![LINE_Ad_Managerスタート.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/af53d61d-79a7-529b-0d15-6abc2237eaf8.png)
こんなのを30分くらいで作り上げます（当然、作ったあとは自動で最新値が更新されるようにします）
![ダッシュボード.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/0584d62e-8b51-b877-0483-09a21991d220.png)

## こんな人におすすめ
- LINE広告のレポートデータを分析基盤・DWHに取り込みたい方
- 分析基盤・DWHにLINE広告のレポートデータを毎回CSVエクスポートし取り込んでおり、時間の浪費に悩んでいる方
- 様々なデータ取得の作業に疲れている方

## 1. DHWと同期する手段の選定

### 1-1. DHWの選定
まずはデータをどこに集約するか、DHW（データウェアハウス）を選定します。

- `Google BigQuery`
- `Amazon Redshift`
- `MySQL`
- `PostgreSQL` など

今回は`Google BigQuery`を利用することにします。

### 1-2.LINE広告のレポートデータをBigQueryに転送する4つの方法
BigQueryにデータを集約することが決まったので、次は転送するための手段を検討していきます。

**1.** LINE広告のレポートデータをCSV形式でエクスポートし、手動でBigQueryにアップロードする。
**2.** LINE広告とBigQueryの各APIを、プログラムを書いて連携する。
**3.** Embulkを利用し、自分で環境を構築する
**4.** [trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)を利用し、画面上で設定する。

**1.** は単発の実行であればよいのですが、定期的な取り込み用途だと毎回同じ作業を繰り返すことになり、非効率な作業になりがちです。
**2.** はAPIのキャッチアップ工数+プログラムを書く工数+環境構築工数が発生する他、エラー対応などの運用工数も継続的に発生します。
**3.** も2と同じくEmbulkはある程度の専門知識が必要になり、自前で環境構築・運用を行う手間が発生します。加えてエラーの内容が少し専門的です。

そこで今回はEmbulkの課題も解決してくれて、プログラムを書かずに画面上の設定で作業が完結する、**4.**の**trocco**というSaaSを利用します。

## 2. troccoでLINE広告→BigQueryの転送自動化
### 2-0. 事前準備
[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)のアカウントおよびLINE広告のアカウントが必要です。
[フリープラン](https://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)がありますので、事前に申し込み・登録しておいてください！

### 2-1. 転送元・転送先を決定

[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)にアクセスし、ダッシュボードから転送設定を作成ボタンを押します。
![スクリーンショット 2020-09-15 18.51.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/28dd4058-683c-3029-be81-8ef77b205d0c.png)
転送元にLINE広告、転送先にBigQueryを選択し、「この内容で作成」ボタンを押します。
![スクリーンショット 2020-09-15 18.55.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/c6b8eeef-d1b6-5c9a-beb2-601c305fbb48.png)
すると、設定画面になるので、設定画面から必要な情報を入力していきます。

### 2-2. LINE広告との連携設定

転送設定の名前とメモを入力します。
![転送設定概要.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/85059395-ff01-d85e-cb19-69f9ec1b5ba2.png)
転送設定の名前とメモを入力したら、「転送元の設定」内の「接続情報を追加」ボタンを押し、LINE広告の接続情報の設定を行います。
![接続情報を追加.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/bf38083f-7029-1a7b-8734-2c41af8707b0.png)
データを取得したいLINE広告アカウントの情報を入力し、接続情報を作成します。
![接続情報作成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/e175e81f-6a7a-d322-83c5-53c86a6b397f.png)

### 2-3.LINE広告からのデータ抽出設定
これでLINE広告との連携は完了です。
次に、取得したいLINE広告のIDやデータ取得期間を設定します。
![転送元情報入力.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/c856a397-9fcd-a945-97e0-931c7a87ae8d.png)
データ取得期間はカスタム変数を使うことにより、ジョブ実行時に指定の値に置き換えることもできます。

以上でLINE広告側の設定は完了です。
次は転送先のBigQueryの設定を行っていきましょう。

### 2-4. 転送先BigQueryの設定

転送元LINE広告と同じ要領で設定していきます。
データセットとテーブルは好きな名前を入力していきます。自動生成オプションを有効にすれば、データセット・テーブルが自動作成されます。

また、カスタム変数を使うことにより、ジョブ実行時に指定の値に置き換えることができます。

BigQueryデータセットのロケーションを指定することができます。デフォルトはUSリージョンです。
東京リージョンを指定する場合はasia-northeast1を入力して下さい。
![転送先情報入力.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/e3209e20-3a66-5730-bbec-c23521afe2c0.png)
これで入力は完了です。「保存して自動データ設定・プレビューへ」をクリックし、確認作業に進みましょう。

### 2-5. データのプレビュー

転送元のデータがプレビューされます。ここではLINE広告から取り込んだデータが表示されています。
問題なければ、「設定を完了する」を押下し、スケジュールや通知設定に進みます。
![プレビュー.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/efa97e76-03fe-80d3-ec42-bbf48603aac4.png)

### 2-6. スケジュール設定
データ転送の自動実行スケジュールを設定します。まずは「スケジュール・トリガー設定」タブを開きます。
![スケジュール設定へ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/e2eef101-5043-dfe4-a5e0-a533ba83301a.png)
以下のように実行タイミングを設定することが可能で、転送を自動化することが出来ます。
![スケジュール設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/3a39fb59-e394-a863-f8c3-0b032710ea40.png)

### 2-7. 通知設定
今回の自動同期には、必須の設定ではないですが、通知タイプ・通知条件・通知先を選択し設定を保存することで、EmailまたはSlackに通知を行うことも出来ます。
![通知設定.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/6077b1c0-20a7-a9d0-327c-bd0a81969f3a.png)
また、必要な時のみ実行したい場合は、手動で行うことも出来ます。
その場合は、転送設定詳細画面から「実行」ボタンを押下し進めていきます。
![手動実行はこちら.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/a0451ecd-7cbb-04ee-6b7a-f4b7249ec3b2.png)

## 3. BigQueryの設定

特に設定することありません。一度転送が実行されれば、BigQuery上にデータが溜まっているので、今すぐに分析・可視化を行うことが出来ます。
データをプレビューして確認してみます。
![BigQuery画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/f8886887-0f40-d363-5ae9-97e77448011f.png)

## 4. Googleデータポータル（旧データスタジオ）で可視化
BigQueryの画面から、「エクスポート > データポータル」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/459450/e3f5e64c-ac1d-016e-a0b2-b1e8caa014d2.png)
すると、以下のようなData Portalの画面に遷移します。
試しに、キャンペーン毎のクリック数の日次推移を可視化してみましょう。
![データポータルの始め.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/2e48c9ca-a123-6b7f-7b16-da76e5c1b192.png)
すると、以下のようなグラフが出来上がります。
この画面はデータポータルの「エクスプローラ」という機能になります。
「エクスプローラ」は定期的に閲覧するデータの変化の原因をアドホックに分析する際に使うイメージです。
![クリック数日次推移.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/b11f41a1-dd09-6281-837b-3d39db1be366.png)
データポータルのトップ画面から、「レポート」を作成し、
上述の通りに売上以外の案件数、成約数などのグラフ作成を行うと、今回のゴールの営業のKPIダッシュボードが出来上がります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/459450/1bcf4a09-a1c9-bedb-76ba-274cfa48cecd.png)
![ダッシュボード.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/442088/30be5b16-2fdb-3a27-7b55-7ff524cd1da2.png)

## まとめ
いかがでしたでしょうか。[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)を使うと管理画面を触ることなく、簡単にLINE広告のレポートデータを取得し、DWH(BigQuery)に貯めることが出来ました。
また、BigQueryにデータを貯めると、データポータルというGoogleの無料ダッシュボードですぐに可視化することが出来ます。
実際に弊社サービスの[trocco](https://trocco.io/lp/index.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)においても、セールスのデータやマーケティングKPI等をこのような流れで収集・分析しています。

試してみたい場合は、[フリープラン](https://trocco.io/lp/inquiry_free.html?utm_medium=social&utm_source=qiita&utm_campaign=line_ad_to_bigquery)がありますので、この機会にぜひ一度お試しください。

その他にも広告やデータベースなど、様々な分析データをETL・転送した事例をまとめました。
[troccoの使い方まとめ（CRM・広告・データベース他）]
(https://qiita.com/hiro_koba_jp/items/2b2caa040804e402bda7)