Google スプレッドシートとBigQueryを直接連携させることで、データをほぼリアルタイム(※数時間ごとの更新)で反映することができ、インポートプロセスを省略して分析ワークフローをスムーズにします。これにより、即時のビジネスインサイト獲得とデータ整合性の保持が可能となり、同時に分析に関わるストレージコストや管理リソースも削減でき、チームの協業効率も向上します。
本記事では、Google スプレッドシートとBigQueryを連携させ、Google スプレッドシートのデータをBigQueryの外部テーブルとして連携する方法を説明します。Google スプレッドシートのデータを効率的に分析に活用したいという方はぜひご一読ください。
Google スプレッドシートとBigQueryの連携のゴール

スプレッドシートで管理している特定のデータを、BigQueryへ直接連携します。今回は例として、執筆したWeb記事のUU数やPV数(サンプル)を使用します。データは以下のようなイメージです。

このスプレッドシートのデータにBigQueryからアクセスし、クエリを実行することで、データ更新のリアルタイムに近い反映を実現させます。
Google スプレッドシートのデータをBigQueryで参照する手順

使用したいGoogle スプレッドシートを用意する
BigQueryへ連携させるスプレッドシートを用意します。アドレスバーに表示されるURLはテーブルを作成する際に必要となるため、あらかじめ控えておきます。
ただし、複数のシートが存在する状態でBigQueryに連携すると、1つ目のシートのデータしか反映されません。そのため、すべてのシートのデータを連携したい場合は、別々のファイル(スプレッドシート)に分割する必要があります。

BigQuery側で設定する
データセット作成画面で、「テーブルを作成」を選択します。

テーブルの情報を以下の順に設定していきます。
- 「テーブルの作成元」は、「ドライブ」を選択します。
- 「ドライブのURLを選択」には、先ほど控えておいたスプレッドシートのURLを入力します。
- 「ファイル形式」は、「Googleスプレッドシート」を選択します。
- 「テーブル」には、任意のテーブル名を入力します。
- スキーマの「自動検出」に✓を入れます。
以上の設定が完了したら、「テーブルを作成」を選択します。

クエリを実行する
「SELECT*FROM テーブル名;」の構文でクエリを実行します。s
今回の場合は「SELECT*FROM test_table;」です。

以下のように、出力結果としてSpreadsheetのデータが表示されていることが確認できます。

Spreadsheetのデータが更新された際には、上記のクエリを再度実行すれば最新のデータをBigQueryから参照できます。
Google スプレッドシートとBigQueryを連携するメリット

手動でのインポートや更新が不要になる
スプレッドシートとBigQueryを連携すると、手動でインポートしたり、定期的に更新したりする必要がなくなります。スプレッドシートのデータが変更されると、自動的にBigQueryへとほぼリアルタイムで反映されます。
データの整合性を確保できる
スプレッドシートのデータが、ほかのシステムに散在することなく、BigQueryのみで分析が可能であるため、データの整合性や一貫性が確保されます。また、最短経路でデータを連携できるため、移動やインポートに起因するエラーを最小限に抑えられます。
ワークフローの効率化ができる
データのエクスポートやインポート、フォーマットの変更など、多くのステップを省略できるため、ワークフローの効率化が図れます。また、外部テーブルを使えばBigQueryの画面 UI操作のみでデータを格納できるため、アドホック分析をしたい場合などに便利です。
まとめ

本記事では、スプレッドシートとBigQueryを連携させる手順や、そのメリットについてご紹介しました。
Google スプレッドシートとBigQueryを直接連携させることで、インポートや更新の省略、リアルタイムに近い反映が実現でき、分析ワークフローの効率化が期待できます。そのほかにも、ビジネスインサイトの迅速な獲得やデータ整合性の保持、ストレージコストや管理リソースの削減など、連携によって得られる恩恵はさまざまです。
データ分析基盤総合支援サービス「trocco®」は、データのETLを中心として、データ運用を手助けするさまざまな機能を提供しています。ノーコードでETLパイプラインを構築でき、容易にデータ連携の自動化を実現できます。
trocco®は、ETL/データ転送・データマート生成・ジョブ管理・データガバナンスなどのデータエンジニアリング領域をカバーした、分析基盤構築・運用の支援SaaSです。trocco®について詳しく知りたいという方は、以下より資料をご請求ください。
