ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

GA4 BigQuery 公共数据集使用指南:基于 knowledge-catalog 示例表的查询与分析实战

GA4 BigQuery 公共数据集使用指南:基于 knowledge-catalog 示例表的查询与分析实战 数据目录AI Agent人工智能知识管理示例工程【免费下载链接】knowledge-catalogGoogle Cloud Knowledge Catalog Tools and Samples项目地址https://gitcode.com/gh_mirrors/kn/knowledge-catalog点击查看免费下载本篇技术指南围绕 knowledge-catalog 仓库中 enrichment 示例项目samples/enrichment提供的kc_enrich_sample_data.ga_events表系统讲解 Google Analytics 4GA4BigQuery 公共数据集的使用方法。文章涵盖数据集来源与特性、环境准备、Schema 结构、三大核心应用场景Schema 熟悉、查询与数据模型测试、Dashboard 原型并结合仓库源码给出可直接复制的实战 SQL 示例。读完本文你将掌握如何在 BigQuery 中对 GA4 高度嵌套的事件级数据进行分区裁剪、UNNEST()展平、会话与电商分析等核心技能并能独立基于公共数据集搭建分析与可视化链路。数据集概述从公共数据集到示例表kc_enrich_sample_data.ga_events是 enrichment 示例脚本在你自己项目下创建的样本表其数据源自 Google Cloud BigQuery Public Datasets 计划中公开托管的 GA4 示例电商数据集。该数据集提供从 Google Analytics 4 直接导出的原始事件级数据供分析师、数据科学家和开发者在无需自建电商站点、无需自有 GA4 导出流的情况下学习如何在 BigQuery 中查询 GA4 数据。原始数据来自 Google Merchandise Store——一个真实的在线电商网站销售 Google 品牌服饰、配件及其他商品站点部署了标准的 GA4 Web 电商追踪方案并启用了增强型衡量事件。其关键特征详见 数据集概览文档属性值数据集名bigquery-public-data.ga4_obfuscated_sample_ecommerce表格式events_YYYYMMDD日分区表共 92 张时间范围2020 年 11 月 1 日至 2021 年 1 月 31 日三个月脱敏情况数据被刻意脱敏会出现Other、NULL、空字符串等占位值由于数据经过脱敏处理其内部一致性可能有限指标无法与 Google Merchandise Store 的线上 GA4 演示账户直接对比——这一点在使用该数据集验证指标口径时需特别注意。仓库中的 enrichment 示例通过 create_data.py 将公共数据集复制为自有的kc_enrich_sample_data.ga_events表脚本执行CREATE TABLE IF NOT EXISTS ... PARTITION BY event_date_dt AS SELECT *, PARSE_DATE(%Y%m%d, event_date) AS event_date_dt FROM bigquery-public-data...为原始字符串日期新增event_date_dt日期类型列并以其为分区键方便后续按时间谓词裁剪扫描量。快速开始环境与前置条件要开始与该数据集交互你需要满足以下条件Google Cloud 项目一个已启用 BigQuery API 的 Google Cloud 项目。BigQuery Sandbox推荐起步无需绑定信用卡即可使用每月提供高达 1 TB 的免费查询额度足够用于探索该数据集。按仓库 enrichment README 的指引标准的环境准备流程如下# 配置项目与凭据 export CLOUD_PROJECTcloud-project-id gcloud auth application-default login gcloud config set core/project $CLOUD_PROJECT gcloud auth application-default set-quota-project $CLOUD_PROJECT# 准备 Python 环境并安装依赖 cd src source env.sh --install# 创建样本数据集与表kc_enrich_sample_data.ga_events python3 ../sample/data/create_data.py脚本会通过gcloud config get-value project读取当前项目 ID创建数据集kc_enrich_sample_data与表ga_events将公共数据集的全部 92 张日分区表合并复制为一张按event_date_dt分区的单表便于在统一命名空间下练习查询。理解 SchemaGA4 事件数据的嵌套结构GA4 导出数据采用高度嵌套的格式使用数组和结构体array 与 struct承载event_params、user_properties和items等字段。仓库中已有一份完整的展平 Schema 描述见 GA4 Events Export 表文档核心字段如下字段类型模式说明event_dateSTRINGNULLABLE事件记录日期YYYYMMDD格式event_timestampINTEGERNULLABLE事件注册时的 POSIX 时间戳微秒event_nameSTRINGNULLABLE事件名称如page_view、purchase、session_startevent_paramsRECORDREPEATED事件关联的键值参数user_pseudo_idSTRINGNULLABLE伪匿名用户设备标识如 GA Client IDuser_propertiesRECORDREPEATED自定义用户属性deviceRECORDNULLABLE设备信息类别、品牌、操作系统、浏览器等geoRECORDNULLABLE由 IP 推导的地理信息大洲、国家、城市等traffic_sourceRECORDNULLABLE用户获取来源medium、source、campaignecommerceRECORDNULLABLE订单级交易明细金额、交易 ID 等itemsRECORDREPEATED事件涉及的商品级属性商品 ID、名称、品牌、价格、数量理解这一嵌套结构是使用该数据集的第一步event_params、items等 REPEATED 字段在查询时必须借助UNNEST()展平这正是本数据集最典型的练习场景。三大核心应用场景usage.md明确指出了该数据集的三个主要应用方向下面逐一展开并结合示例查询进行说明。1. Schema 熟悉练习 UNNEST() 展平嵌套数据GA4 将事件参数、用户属性、商品信息以嵌套数组形式存储这与传统的关系型宽表截然不同。使用该数据集你可以在真实数据上反复练习UNNEST()展平操作。会话分析是典型的嵌套参数提取案例在 GA4 中会话并不是独立的行记录而是每个事件内嵌一个名为ga_session_id的参数。要统计总会话数必须筛选出session_start事件并展平其参数以提取唯一的会话 ID见 example3.mdSELECT COUNT(DISTINCT value.int_value) AS total_sessions FROM kc_enrich_sample_data.ga_events, UNNEST(event_params) WHERE event_name session_start AND key ga_session_id提取指定参数同样依赖展平或子查询。例如从event_params中取出page_location用于页面分析来自 events_.md 的常见查询模式SELECT event_date, (SELECT value.string_value FROM UNNEST(event_params) WHERE key page_location) AS page_path, COUNT(1) AS page_views FROM bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_* WHERE event_name page_view AND _TABLE_SUFFIX BETWEEN 20210101 AND 20210115 GROUP BY 1, 2 ORDER BY page_views DESC;2. 测试查询与数据模型在真实数据上打磨分析逻辑在生产数据上迭代 SQL 模型成本高、风险大使用公共数据集则可以在真实规模的电商事件数据上构建并测试用户留存、漏斗分析、营销归因等高级数据模型再迁移到生产环境。了解数据规模是深度分析前的标准动作。以下查询统计事件总数、去重用户数基于设备 Cookie 的user_pseudo_id以及数据覆盖天数见 example1.mdSELECT COUNT(*) AS total_events, COUNT(DISTINCT user_pseudo_id) AS total_unique_users, COUNT(DISTINCT event_date) AS total_days FROM kc_enrich_sample_data.ga_events按事件维度统计活跃情况。例如统计每个事件类型的总次数与去重用户数来自 events_.mdSELECT event_name, COUNT(1) AS event_count, COUNT(DISTINCT user_pseudo_id) AS unique_users FROM bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_* WHERE _TABLE_SUFFIX BETWEEN 20201101 AND 20210131 GROUP BY 1 ORDER BY event_count DESC;该数据集还能支撑更丰富的受众与留存指标建模例如 Purchasers购买用户、N-Day Active UsersN 日活跃用户、Frequently Active UsersM 日中 N 日活跃用户等仓库在 GA4 指标目录 中提供了对应的口径定义文档可作为设计数据模型的参考基准。3. Dashboard 原型连接可视化工具快速验证你可以将该公共 BigQuery 数据集连接到 Looker Studio、Tableau 等可视化工具练习构建电商与 Web 性能仪表盘。相比直接在生产数据上搭建公共数据集允许你低成本地验证图表设计、维度粒度与指标口径待原型稳定后再切换数据源。构建电商主题仪表盘时商品维度的分析必不可少。电商商品兴趣分析展平items数组聚合add_to_cart事件中 Top 10 商品见 example4.mdSELECT items.item_name, COUNT(*) AS added_to_cart_count FROM kc_enrich_sample_data.ga_events, UNNEST(items) AS items WHERE event_name add_to_cart GROUP BY items.item_name ORDER BY added_to_cart_count DESC LIMIT 10;销量与收入排行则聚焦purchase事件按商品聚合计件数与收入来自 events_.mdSELECT item.item_id, item.item_name, SUM(item.quantity) AS units_sold, ROUND(SUM(item.item_revenue_in_usd), 2) AS total_revenue_usd FROM bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*, UNNEST(items) AS item WHERE event_name purchase AND _TABLE_SUFFIX BETWEEN 20201101 AND 20210131 GROUP BY 1, 2 ORDER BY total_revenue_usd DESC LIMIT 10;查询日期范围分区裁剪的两个要点该数据集按日分表/分区组织合理使用分区谓词能显著减少扫描数据量、降低查询成本。方式一对日分片表使用_TABLE_SUFFIX伪列。查询公共数据集events_*通配符表时可在 WHERE 子句中通过_TABLE_SUFFIX限定日期范围见 events.md-- 统计指定日期区间内所选事件page_view、session_start、purchase的每日唯一事件数 SELECT event_date, event_name, COUNT(*) AS event_count FROM bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_* WHERE event_name IN (page_view, session_start, purchase) AND _TABLE_SUFFIX BETWEEN 20201201 AND 20201202 GROUP BY 1, 2;方式二对示例表使用分区时间列event_date_dt。由于 GA4 导出为每天创建一个分区应尽量在分区时间戳列上加谓词以限制扫描范围从而提升性能并大幅降低成本见 example2.md。以下查询统计 2020 年 12 月的每日活跃用户数SELECT event_date, COUNT(DISTINCT user_pseudo_id) AS active_users FROM kc_enrich_sample_data.ga_events WHERE event_date_dt BETWEEN PARSE_DATE(%Y%m%d, 20201201) AND PARSE_DATE(%Y%m%d, 20201231) GROUP BY event_date ORDER BY event_date ASC;两种方式的共同原则是查询务必带上日期谓词避免全量扫描 92 个分片这既是性能优化也是成本控制的关键习惯。结合 Knowledge Catalog从示例表到元数据沉淀kc_enrich_sample_data.ga_events不仅是练习查询的数据源也是 knowledge-catalog 仓库中Enrichment Agent示例的载体。该示例演示了如何用智能体方式为数据资产补充外部信息Enrichment Agent 查找与数据资产相关的信息、生成文档并通过 Knowledge Catalog API 将文档发布为增强后的元数据。围绕这张ga_events表示例以 Markdown 文档如 usage.md、example1–example4.md、events.md 等作为本地知识库输入完整流程如下见 enrichment README# 1. 下载元数据快照 python3 -m enrichment.download \ --dir ../sample/metadata.initial \ --dataset ${KC_ENRICH_SAMPLE_PROJECT}.kc_enrich_sample_data # 2. 基于配置与本地知识库执行增强 python3 -m enrichment.enrich \ --dir ../sample/metadata.initial \ --output-dir ../sample/metadata.new \ --config-dir ../sample/config # 3. 审查元数据更新 git diff --no-index ../sample/metadata.initial ../sample/metadata.new # 4. 发布更新后的元数据 python3 -m enrichment.publish --dir ../sample/metadata.new其中指令配置位于 instructions.md要求 Agent 优先使用组织内部的使用信息尤其是本地 Markdown 文档知识库——本数据集配套的各类文档正是这类知识库的组成部分。这意味着你在本指南中掌握的查询技能与示例 SQL既可以直接用于日常数据分析也可以沉淀为文档知识通过 enrichment 工作流反哺 Knowledge Catalog 的元数据质量形成数据 → 分析 → 文档 → 元数据的完整闭环。使用注意事项脱敏数据原始公共数据经过刻意脱敏Other、NULL、空字符串内部一致性有限不应将其指标与线上 GA4 演示账户直接对比也不宜用于生产级口径验证。查询成本公共数据集查询按扫描字节计费务必使用_TABLE_SUFFIX或分区列谓词限定日期范围BigQuery Sandbox 每月 1 TB 免费额度足够支撑个人探索。表结构差异公共数据源为 92 张events_*日分片表示例表kc_enrich_sample_data.ga_events为合并后的单表并新增event_date_dt分区列两种结构的查询写法不同需按上文分别处理。嵌套展平event_params、items、user_properties均为 REPEATED 结构绝大多数分析需先UNNEST()注意区分int_value、string_value、float_value等按类型存放的取值子字段。掌握以上内容后你便可以基于 GA4 BigQuery 公共数据集独立完成从环境搭建、Schema 理解、嵌套数据查询到可视化原型验证的完整链路同时理解其在 knowledge-catalog enrichment 示例中所扮演的文档知识源 元数据载体双重角色。赞分享数据目录AI Agent人工智能知识管理示例工程【免费下载链接】knowledge-catalogGoogle Cloud Knowledge Catalog Tools and Samples项目地址https://gitcode.com/gh_mirrors/kn/knowledge-catalog点击查看免费下载相关推荐knowledge-catalog 中的 GA4 混淆示例电商数据集BigQuery 事件数据查询与受众分析实战指南knowledge catalog 中的 GA4 混淆示例电商数据集BigQuery 事件数据查询与受众分析实战指南 本文以 knowledge catalo数据目录AI Agent人工智能知识管理示例工程knowledge-catalog 中的 GA4 脱敏电商数据集实战指南在 BigQuery 上查询 ga4_obfuscated_sample_ecommerceknowledge catalog 中的 GA4 脱敏电商数据集实战指南在 BigQuery 上查询 ga4_obfuscated_sample_ecomme数据目录AI Agent人工智能知识管理示例工程Knowledge Catalog 样本数据指南GA4 电商公开数据集概览与查询实战Knowledge Catalog 样本数据指南GA4 电商公开数据集概览与查询实战 Google Analytics 4GA4BigQuery 公开数据数据目录AI Agent人工智能知识管理示例工程上一篇如何免费解锁Wand专业版功能3种简单方法实现完整游戏修改体验下一篇告别重复劳动25个Illustrator脚本让你的设计效率提升500%创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表