#BigQueryとは?
Google Cloud Platformのサービスのひとつで、ビッグデータ解析のプラットフォームです。
PB(ペタバイト)レベルの膨大なデータを極めて高速なスピードで集計・分析できるとのことです。
今回はPBには遠く及ばないデータですが、オープンデータをBiqQueryに入れて集計してみます。
#使用するオープンデータ
今回は東京都がオープンデータとして開示している、
「明治33年~平成28年 東京都全体 出生数・死亡・死産・婚姻・離婚・合計特殊出生率・平均初婚年齢」のデータを利用します。
http://opendata-catalogue.metro.tokyo.jp/dataset/t000010d0000000009/resource/72db0f68-ee68-4819-876d-7a55de0dabb4
ダウンロードしたデータを確認するとこのような感じになっています。
#BigQueryにデータを入れる
ダウンロードしたCSVデータを、BigQueryに入れていきます。
###Datasetの作成
あらかじめTokyo_populationというプロジェクトを作成しています。
「Create new table」を選択し、次に進みます。
###Create Tableの設定
初学者のため、ここで何度が躓きました。以下、躓いたポイント含めて記載します。
ここで注意です。ダウンロードしてきたCSVデータの文字コードはShift-jisのため、
そのまま読み込むと文字化けが起きます。必ず文字コードはUTF-8に変換してからアップロードしましょう。
(BigQueryはUTF-8しか対応してないらしいです。)
データの列名にはかなり適当な名前をつけています。
自分がエラーを何度も吐いたのはデータ型の指定の箇所で、
小数部分を含むデータを読み込んでいるにも関わらずINTEGER型で指定してしまっていました。
また、モードはデフォルトにしています。(NULL型を許可)
読み込んだデータの一行目には、「年次」「人口」「出生総数」などの文言が記載されているため、
その読み込みをスキップします。これで設定は完了です。データを読み込みましょう。
###Datasetを確認する
suii_dataというデータセットが作成されています。
Previewを見ると、問題なく読み込まれていることが確認できます。
※参考(文字コードをShift-jisのまま読み込んだ場合、和暦の箇所が文字化けします。)
#データにクエリを実行する
では、試しにクエリを実行してみます。
以下は、平成で人口が多かった順に、婚姻数と共に数値を抽出するクエリです。
SELECT
japanese_year,
population,
marriage
From
Tokyo_population.suii_data
Where
japanese_year like '%平成%'
Order by
population desc;
結果はこんな感じです。
近年、東京都の人口は増加し続けているようですが、
婚姻数は平成22年を境に減少傾向に転じていることがわかります。
#Next
今回はBigQueryでのデータの読み込みと、簡単なクエリの実行まで行いました。
次回はもう少し高度な集計分析や集計結果の可視化にチャレンジしていこうと思います。
↓
次回のやつも投稿しました。
Google Data Studioでオープンデータを可視化してみた