CSVをBigQueryに投入〜Looker studioでの可視化まで

# はじめに
GoogleCloudの無料枠で、BigQueryを試してみることにしました。
ただデータを入れるだけだとつまらないので、BigQueryに入れたデータをLooker Studioで可視化してみます。

# デプロイ
さっそくデプロイします。

![スクリーンショット 2024-07-03 15.39.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/2376cfba-2946-37e4-b49a-5dca3a7df211.png)

適当なプロジェクトを作っておいて、
1. プロジェクトを選択
2. Deployment名を入力
3. リージョンを選択
4. デプロイ 

の流れです。

<img width="300" alt="deploy01" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/118c6274-c4a0-e4f3-4817-e6be4e21c6be.png">
<img width="400" alt="deploy02" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/9a009b09-ec73-41b4-eafa-225ae4f8edef.png">

リージョンはデフォルトでUSになっていました。
ここで、▼をクリックし一覧を表示すると、アジアはシンガポールしか選べませんでした。
どのリージョンを選べばよいのかわからずググってみると、東京もあるようなのですが、下記の記事をみると料金的にも機能的にもUSでよさそうなので、USを選択。

https://sem-technology.info/blog/posts/00196/

最後にデプロイをクリックすると、画面が遷移し自動でAPIとサービスが有効になります。

<img width="400" alt="deploy03" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/00fb5e51-81ae-5f26-007a-3a27ab1f9a02.png">


数分待つと完了しました。

<img width="600" alt="deploy04" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/c8deebcd-e503-79d7-02c1-093ff7b70e0e.png">


## データの投入

今回は気象庁のホームページからデータをダウンロードして使います。

https://www.data.jma.go.jp/gmd/risk/obsdl/

取得したい項目と期間を選択して、CSVでダウンロードします。
そのままだと不要な列も含んでいたので、ダウンロードしたCSVを少し加工してから投入します。


https://cloud.google.com/bigquery/docs/batch-loading-data?hl=ja#loading_data_from_local_files

上記を参考に、Googleコンソールからデータを取り込…もうと思ったのですが、ちょっと難しかったのでコンソール画面に従って試してみることにします。

コンソールのウェルカムページ(ホームアイコンのタブ)を開くと下記の様になっており、
下の方に **「独自データの追加」>「ローカルファイル」** があるので、**「このガイドを開始」** をクリックすると手順を教えてくれます。

![スクリーンショット 2024-07-10 16.31.36.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/801e0a91-4b1b-2e2b-eb35-7c4f6661fdc5.png)

このようにガイドが出てくるので、「試してみる」を押していくとステップが進んでいきます。
ドキュメントよりわかりやすいですね。
<img width="500" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/b0aec853-073b-d7f4-0c07-3d2900536f2a.png">

<img width="500" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/d3e9c1aa-318d-affc-2e90-2a30c1d725ef.png">

項目を上から埋めていきます。
最初作成時にスキーマがないよと怒られたので、自動検出にチェックをいれました。

<img width="600" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/03449309-a0c8-e922-7681-1e059db0e9cf.png">

途中でデータセットを選択するか、作成する必要があります。
今回はデータセットをまだ作成してなかったので、作りました。


<img width="400" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/ad1eefc2-1138-35fc-980c-0f803801a720.png">

項目名に含んでいた記号がマッピングできないと怒られたので、項目名を修正して再度アップロードしました。

![スクリーンショット 2024-07-10 16.51.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/e2e58082-d7a9-448d-6c97-63560055205d.png)
取り込みが完了しました。
![スクリーンショット 2024-07-10 16.53.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/c5bfbef4-bdcc-4e93-e1c4-ec3561ce528a.png)

## Looker Studioを使ってみる
### Bigqueryに接続
Looker studioを開き、レポートを作成し、BigQueryに接続します。
<img width="400" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/277c619e-d157-93bb-40e3-e0327e52b443.png">

接続します。。。
いきなりエラーになりました🫨
<img width="500" alt="ファイル名" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/a6183c23-f77e-3e5c-ec2e-63e1c7ff5078.png">

ここで、なんとLooker Studioでは日本語の項目名に対応していないことがわかりました。

https://qiita.com/zackey2/items/333456346014bb568dee

### 項目名を英語に変更
仕方ないのでBigQueryで項目名を変更します。


:::note warn
日本語の項目名を変更する際は項目名をバッククオートで囲みましょう。
:::

```sql:項目名を英語に変更変更
ALTER TABLE `dataset.tenki.temperature`  
RENAME COLUMN IF EXISTS `年月` TO year_month,
RENAME COLUMN IF EXISTS `平均気温` TO avg_temperature,
RENAME COLUMN IF EXISTS `最高気温` TO max_temperature,
RENAME COLUMN IF EXISTS `降水量の合計` TO sum_rainfall
```

https://cloud.google.com/bigquery/docs/managing-table-schemas?hl=ja#change_a_columns_name

### Looker studioで可視化

1970年から2024年までの東京の最高気温と平均気温を用いて、グラフを作成しました。
![スクリーンショット 2024-07-10 19.10.41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/96ae9623-eb79-99bc-6771-78350212ca09.png)
トレンドラインを追加してみると、いずれも右肩上がりになっていることがわかります。
もっと大きく変化するかと思ったのですが、思ったよりもゆるやかに上昇していました。
![スクリーンショット 2024-07-10 19.12.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/506559/4fe4a7a2-704b-5a32-c789-f2f5882f6a0e.png)


## 参考

https://dev.classmethod.jp/articles/gcp-start-bigquery/

https://www.topgate.co.jp/blog/google-service/4384

https://zenn.dev/na0k1/articles/6a2a30fc5d8cc5