2日目:GA4×BQの接続やデータの構造

目次

はじめに

今回はGA4とBigQueryの連携方法と、BigQueryの見方という初歩をみていく。ただし、これらの情報は多くの記事で既に紹介されている部分も多いため、それら記事の紹介をしながら、ポイントや経験談を中心に紹介する。

GA4とBigQueryの連携

GA4とBigQueryの連携について

連携方法に関してはいろいろなサイトで紹介されているため、割愛する。
特に下記ページの「GA4データのBigQueryへの連携(BigQueryへのExport)方法」の説明がわかりやすそうであった。

<参考ページ>
Googleアナリティクス4(GA4)とBigQuery連携まとめ!Exportの方法からデータの確認、可視化までを詳しく解説
https://www.data-be.at/magazine/ga4-bigquery/#outline_1__3

GA4とBigQueryのポイント

ポイント1:無料枠のデータの有効期間

BigQueryには月当たりの無料枠があるが、無料枠内であっても、課金を有効にしていないと、データが60日で消える。
※BigQueryの料金体系については3日目の記事で案内する。

ポイント2:課金の有効化

課金の有効化には「①請求先アカウントの登録」と「②プロジェクト単位での請求先アカウントとのリンク」の2ステップが必要となる。 慣れないうちは、①の請求先を登録できれば、設定完了したと勘違いしやすいので、②を忘れやすい。
※これはGCPが(柔軟な設定を実現するため、)複雑な階層構造となっていることに起因する。詳しくは紹介している参考ページと3日目の記事を参照いただきたい。

<参考ページ>
Google Cloudの請求の仕組みを分かりやすく解説してみた
https://blog.g-gen.co.jp/entry/billing-account-explained

ポイント3:プロジェクトの組織間の移管

クライアントの予算承認待ちのため、一時的に自分の組織でBQ用のプロジェクトを作成し、後からクライアントの組織に移管する機会があったが、割と大変だった。(操作というより)互いのIT部門との許可取り・調整が大変。

同様の作業を行う機会があれば、操作や必要な権限に関しては次のページが参考になった。

<参考ページ>
GCPプロジェクトを組織間で移行した時の話
https://lab.mo-t.com/blog/gcp-project-migration-between-organizations
Google Cloud:プロジェクトの組織間移行について解説
https://dev.classmethod.jp/articles/google-cloud-org-transfer/

BigQueryの見方

画面構成

BigQueryのUI
BigQueryのUI
上記はBigQueryのキャプチャである。(マーケター向けの説明になるが、)GAにはさまざまなレポートが標準で用意されているが、基本的によく見るレポートは限られるのではないだろうか。 BigQueryに関してもさまざまな項目がサイドナビに表示されるが、基本的に集計作業で使うのは「BigQuery Studio」だけである。
※「データ転送」「スケジュールされたクエリ」はデータ基盤の構築に活用できる。簡単に紹介すると、「データ転送」別DB間からの転送やプロジェクト間のデータの転送に利用できる。「スケジュールされたクエリ」は定期的なテーブル更新に利用可能。

そのため、ここからは「BigQuery Studio」を中心に見ていく。「BigQuery Studio」をクリックすると、エクスプローラが表示される。エクスプローラーではデータ(データセット・テーブルなど)や処理方法(クエリ・関数)がまとめて管理されている。BigQueryではデータと処理をまとめてリソースと呼ばれる。
キャプチャはBigQuery内でさまざまなリソースが管理できることを伝えるため、あえて色々な種類のリソースを載せたキャプチャを使っている。リソースの種別でアイコンが変わるため、識別の参考になる。
最初は主に赤枠のデータセットとテーブルを見ると思うが、クエリや関数も同じ場所で管理されることを留意いただきたい。テーブルは(名前の通り)表形式のデータで、それらを集めたものがデータセットである。そのため、データはプロジェクト>データセット>テーブルの順で階層構造といえる。ここもマーケター向けに例えるならば、UA時代のGAのアカウント>プロパティ>ビューのような関係である。

GA4データのテーブルの特徴

テーブルの特徴を見る前に、GA4のデータ計測単位を確認しておく。GA4の計測はイベント単位で行われ、補足情報をパラメータという形で収集する。この計測単位を抑えることが、BigQueryのデータを見る上では重要である。下記ページでイベントの詳細が説明されている。

<参考ページ>
GA4のイベントの基本的な考え方
https://ayudante.jp/column/2022-07-07/11-00/

前述のテーブルをクリック後に、「プレビュー」をクリックすると、下記のようにデータが確認できる。

テーブルのプレビュー
テーブルのプレビュー
GA4のデータは1つの行(レコード)がGA4における1イベントで構成される。またパラメータ情報はevent_paramsに集約される。キャプチャ3行目がpageview(ページ閲覧)のイベントである。そのパラメータとして、見られたページのタイトル(page_title)やページのURL(page_location)が計測されているのを確認できる。このように、GA4のレポートとは異なり、一つ一つのイベントごとの細かいデータが記録されていることがBigQueryのデータの特徴といえる。

シャーディング
シャーディング
BQ接続後、赤枠のように日ごとにテーブルの数が増えていく。これはシャーディングと呼ばれる技術で、日別にデータを分ける機能である。これにより、期間を指定してデータを呼び出す際、1行ごとに確認せず、該当の日付のテーブルのみを確認するため、処理量を抑えることができる。データの呼び出し時には、このシャーディングを意識した記述を書く必要があるが、それは4日目に説明する。

おわりに

BigQueryに関わる料金は3日目に、GA4の具体的な操作は4日目に紹介する。X(旧:Twitter)もよろしくお願いします。