Google Analytics 原始数据连接器概念

重要

Google Analytics 原始数据连接器处于公共预览阶段

借助 Google Analytics 原始数据连接器,可以使用 Databricks Lakeflow Connect 和 Google BigQuery 从 Google Analytics 4(GA4)引入原始事件级数据。

GA4 引入的工作原理是什么?

首先,必须使用 Google 提供的 API 或 UI 将 GA4 数据导出到 BigQuery。 然后,Databricks 使用以下 API 使用 BigQuery 中的数据:

  • 用于元数据操作的 BigQuery API(例如列出表和模式)
  • 用于数据引入的 BigQuery 存储 API
  • 用于架构探索的云资源管理器 API

连接器数据模型

GA4 连接器可以从给定的 GA4 属性引入下表:

  • events
  • events_intraday
  • users
  • pseudonymous_users

对于数据到达 GA4 的每一天,都会在 BigQuery 中自动创建日期分区表。 BigQuery 表名称具有格式 <table_name>_YYYYMMDD (例如 events_20241024)。

在每个 Lakeflow Connect 管道更新期间,连接器会自动引入自上次更新以来的任何新表。 它还会在 72 小时内引入现有表中的任何新行。

连接器基础知识

  • 在管道的初始运行中,连接器会为所选表引入所有导出到 BigQuery 的数据。

  • 在后续管道运行时,连接器会引入新插入的行,本文中概述了注意事项。

  • 不会引入更新和删除。

  • 初始负载提取 GA4/BigQuery 项目中存在的所有日期的数据。

  • 连接器假定每行是唯一的。 如果出现意外重复项,Databricks 无法保证正确的行为。

更新窗口和计划

GA4 在创建表后最多可以更新 72 小时。 因此,Databricks 会在 72 小时内跟踪和引入这些表的更新。 在 72 小时更新窗口后,连接器不会自动引入表更新(例如,如果 GA4 重新处理历史数据)。

应至少每 72 小时运行 Lakeflow Connect 管道,但 Databricks 建议每天运行管道。 同步频率较低会增加连接器需要重新生成数据的风险。

Databricks 还建议保持 BigQuery 的默认时间旅行时段为 7 天。 这有助于提高摄入效率。

表级数据模型和其他关键信息

events 和 events_intraday 表

events表和events_intraday表中的一行在Databricks中对应于BigQuery中的一行。

对于 events_intraday 表,不能保证在 events 表中提供特定日期的数据之后,同一日期的数据将存在。 这是因为 events_intraday 表仅用于临时使用,直到当天的 events 表准备好。

users 表

若要从 users 表引入,连接器依赖于 user_id 主键和 last_updated_date 游标键。 因此,它只从每个 users 表中的每个用户 ID 引入一行:last_updated_date 最大的项。

若要在目标表中保留每个用户 ID 多行,请将 SCD 模式 设置为表配置中的类型 2。

pseudonymous_users 表

为了从 pseudonymous_users 表中摄取数据,连接器依赖 pseudo_user_idstream_id 作为主键。 它使用 last_updated_date 游标键。 因此,它只从每个 pseudonymous_users 表中的每个伪用户 ID 引入一行:last_updated_date 最大的项。

若要在目标表中保留每个用户 ID 多行,请将 SCD 模式 设置为表配置中的类型 2。