身近なデータをスプレッドシート×BigQueryで手軽に扱う

BigQueryで扱うデータは、どこかのシステムからBigQueryに連携することが多いと思います。
この記事では、システム構築をするまでもないけれど、もっと身近で更新も自在なデータをスプレッドシートで扱い、BigQueryのデータソースの一つとするケースについて書きます。

※スプレッドシートでデータを扱ううえで「共有」設定も重要です。情報漏洩等のリスクも検討したうえで活用してください。

スプレッドシートでデータを管理するメリット

1ファイルでデータを管理でき、編集も自在
スプレッドシート1ファイルで、複数のシートを使い様々なデータを持たせることができます。また、修正や追加も手軽なため、大変便利です。

シート上部ならコメントを残すことができる
BigQueryでテーブル設定をする際に「スキップするヘッダー行」という設定があります。“シートの上部〇行はデータソースとして扱わない”という設定ができるため、例えばカラムの意味等を持たせることもできます。

1行目にメモとしてBigQueryのカラム名、2行目にデータの意味を入力することも可。

1.スプレッドシートでデータソースを作成する

各カラムのデータは、データ型に気を付けよう!
例えば「数値」が入るカラムには「数値」のみを入力するように気を付けましょう。BigQueryのスキーマ定義と合わないデータが入るとクエリできなくなります。
スプレッドシート上では入力が自在な故、数値カラムの特例なデータに対し、コメントを入れてしまったり「ー」や「なし」等、文字列を入れてしまうケースはあるあるです。

数値が入るべきセルに文字列はNG


2.BigQueryのテーブル設定

このようなスプレッドシートの「サンプル配布_202206」シートのデータをBigQueryに取り込むケースで、3行目以降からデータソースとして扱う場合の設定です。

スプレッドシートの設定で固有の設定項目
・スプレッドシートのURL
・取り込むシート名を「シート範囲」に設定する

BigQuery側のテーブル設定
・スキーマ設定 ※「テキストとして編集」でJSONテキストで設定することも可
・スキップするヘッダー行:2

以上で設定完了です。BigQuery上にテーブルが作成され、他のテーブルと同様にクエリが可能になります。
ただし…テーブルといっても、通常のテーブルのように「プレビュー」タブはありません。データの内容を確認したい場合は、以下の操作になります。
 ・「詳細」タブのソースURLからスプレッドシートに飛ぶ
 ・クエリで「select * from テーブルID」を実行する

おわり

実は分析に使えそうなデータ、手元にありませんか?
システム構築しなくとも、データソースとして扱えることもあります。
色んなデータを活用してみてください!

この記事が気に入ったらサポートをしてみませんか?