Google スプレッドシートとBigQueryを直接連携させることで、データをほぼリアルタイム(※数時間ごとの更新)で反映することができ、インポートプロセスを省略して分析ワークフローをスムーズにします。これにより、即時のビジネスインサイト獲得とデータ整合性の保持が可能となり、同時に分析に関わるストレージコストや管理リソースも削減でき、チームの協業効率も向上します。

本記事では、Google スプレッドシートとBigQueryを連携させ、Google スプレッドシートのデータをBigQueryの外部テーブルとして連携する方法を説明します。Google スプレッドシートのデータを効率的に分析に活用したいという方はぜひご一読ください。

Google スプレッドシートとBigQueryの連携のゴール

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

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

Google スプレッドシートのデータをBigQueryで参照する手順

使用したいGoogle スプレッドシートを用意する

BigQueryへ連携させるスプレッドシートを用意します。アドレスバーに表示されるURLはテーブルを作成する際に必要となるため、あらかじめ控えておきます。

ただし、複数のシートが存在する状態でBigQueryに連携すると、1つ目のシートのデータしか反映されません。そのため、すべてのシートのデータを連携したい場合は、別々のファイル(スプレッドシート)に分割する必要があります。

BigQuery側で設定する

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

テーブルの情報を以下の順に設定していきます。

  1. 「テーブルの作成元」は、「ドライブ」を選択します。
  2. 「ドライブのURLを選択」には、先ほど控えておいたスプレッドシートのURLを入力します。
  3. 「ファイル形式」は、「Googleスプレッドシート」を選択します。
  4. 「テーブル」には、任意のテーブル名を入力します。
  5. スキーマの「自動検出」に✓を入れます。

以上の設定が完了したら、「テーブルを作成」を選択します。

クエリを実行する

「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®について詳しく知りたいという方は、以下より資料をご請求ください。

trocco® ライター

trocco®ブログの記事ライター データマネジメント関連、trocco®の活用記事などを広めていきます!