Google Sheets • BigQuery とは
Google Sheetsは Excel のような表計算サービスのことを指します。Excel ファイルをそのまま Google ドライブにアップロードするだけで共同編集ができるようになるなど、様々なメリットがあります。
BigQuery (以下 BQ ) は Google Cloud Platform から提供されるデータウェアハウスサービスです。導入コストも安く、環境構築も必要としないサービスでありながら、高速のデータ処理が可能です。
Google Sheetsは 「Google アカウント」を取得すれば基本的な機能は無料で利用できますが、企業で使用する場合は、より多くの機能が使用可能で、データ容量、セキュリティ面で優れている有料プランへの加入を推奨します。
BQ の料金形態は公式サイトに詳しく書かれています。
背景

Google Sheetsをマスタにして業務を行う場合、BQ 上にデータをインポートすると洗い替えが必要になります。
Google Sheets を BQ 上に外部テーブルとしてアクセスすることで、Google Sheetsのデータを逐一インポートする手間が省けます。
ユースケース
- Excelでデータを扱っているケース
- 手入力しているデータ ••• 通常だと手入力のものをDWHに連携するのは難しいが、Google Sheets の BQ 連携なら可能に。
- Google Sheetsの拡張機能などで別システムからデータを取るケース
- 例1: JIRA ••• Google Sheets 上で Jira データをリアルタイムで連携利用して、表示、分析、共有、計算が可能になる。
- 例2: 会計freee ••• 取引や明細を Google Sheets に取り込むことでバックオフィスの業務効率化が可能になる。
設計
学園祭でカフェを開き売上データを Google Sheets で管理しているケースを仮定して行なっていきます。

連携を作ってみる
サンプルデータは以下のような感じです。

まず、Google Sheetsを参照する外部テーブルを BQ 上に作成する必要があります。右端にある3点をクリックしてデータセットを作成してください。データセットを作成したら、同様に3点をクリックしてテーブルを作成してください。


テーブルの作成元は「ドライブ」、 「ファイル形式」はスプレッドシートとしてください。「URI」には
https://docs.google.com/spreadsheets/d/1LsJtuHh_SsD32b_WGkkU32TWT1XdrLwbbZ4a_jZD7SM/edit#gid=0
↓
https://docs.google.com/spreadsheets/d/1LsJtuHh_SsD32b_WGkkU32TWT1XdrLwbbZ4a_jZD7SM
のようにfile_idまでを残して貼り付けてください。
「スキーマ」の「自動検出」チェックボックスをチェックします。ヘッダー行はスキップしたいので、「1」を入力してください。


この手順でテーブルを作成することができるようになります。

まとめ
専門的な技術を使わず幅広いデータを BQ に連携でき、スプレッドシートのデータに対して直接 SQL を実行できるため、データ集計などに便利です。
ただし、Google Sheets 自体の管理が煩雑になってしまうことがあるので注意が必要です。
コメント