更新时间:2024年12月31号
认识BigQuery
BigQuery 是 Google Cloud 提供的一项完全托管的 企业级大数据分析服务,它使用户能够在极其庞大的数据集上运行 SQL 查询,并进行快速、高效的数据分析。BigQuery 采用 无服务器 架构,能够自动扩展资源,帮助用户处理大规模的数据集,而无需关注基础设施的管理。
你可以将GA4中的所有原始数据导出到BigQuery,然后使用类似SQL的语法查询该数据。
关联导出数据前提是:
BigQuery的收费规则大致费分为存储空间和查询:
- 存储费用:根据数据存储量计费。对于长期存储的数据,费用较低。
- 查询费用:基于查询扫描的数据量计费,单位是 GB(Gigabyte)。BigQuery 对扫描的数据量进行计费,而不是查询的复杂度或执行时间。
有多种计费方式,详细请看:https://cloud.google.com/bigquery/pricing?hl=zh-cn#packagetable
关联设置
接下来看关联,先在 Google API 控制台创建项目,然后在到Google Analytics 4 关联BigQuery。
创建项目
在https://console.developers.google.com ,点击项目(在左上角),然后点击「创建项目」去创建一个项目。
开启BigQuery API
在https://console.developers.google.com 里的API 和服务,中搜索“BigQuery”,然后开启BigQuery API:
打开「IAM和管理」,将firebase-measurement@system.gserviceaccount.com添加为成员:
Google Analytics 4关联BigQuery关联
在Google Analytics 4 中点击「管理」——「BigQuery关联」——「关联」,进入设置界面:
就分为三步:
选择一个BigQuery项目
点击「选择一个BigQuery项目」,可以看到你的谷歌ID满足服务权限要求的所有项目ID:
选择一个项目,然后点击右上角的「确定」。
然后是设置数据存储位置:
需要注意,大陆是没有服务器,但香港和台湾有。
配置设置
配置设置主要是配置数据流和事件和设置频率。
配置数据流就是确定哪个数据流要导入到BigQuery,还可以设置排除某个事件,就是某个事件不导入:
GA4导出数据规模(事件数)的限制:
频率其实就是设置导方式,分为两种:
- 每日导出:按天导出,表格名为events_YYYYMMDD,表格数据最长 72 小时内还会更新,所以72小时内看到的数据可能会不同的
- 流式导出:实时导出,这是内部临时表,表格名为events_intraday_YYYYMMDD,需要项目开启结算功能才可以选择流式导出。如果要获取GA4实时数据,就需要选这种,延伸阅读:GA4中如何获取真正的实时数据?
你在BigQuery里看到的就是这样的:
event_(58)表示存储了的数据。
检查并提交
设置没问题,在Review一下,就可以提交。
如何用SQL查询所需数据
我是推荐两种方式获取基本的SQL,在此基础上做修改,效率比较快:
第三方工具GA4SQL
如GA4SQL,左侧选择所需维度,指标,过滤器,时间等,就会自动生成SQL:
AI
用ChatGPT可以对话式微调生成所需的SQL:
还有Claude等AI工具都可以。
常见问题
BigQuery的导入时间
每日导出一般是第二天的早上导入,有时候会延时,晚上才导入。
BigQuery数据只保留60天
免费版的BigQuery默认只保留60天,如要保留更长时间,请升级付费版。
GA4的数据与BigQuery不一致
这是因为使用Consent Mode v2,即时用户拒绝了跟踪,仍然会发送ping,GA4是基于ping的数据建模计算出来,而Bigquery是真实的ping数据计数计算,所以不同。延伸阅读:Consent Mode是如何影响GA4的数据收集
BigQuery的限制
BigQuery导入数据对每天导入的数据规模是有限制的,每天限额是100万事件数,也就是一个月最多3000万。
BigQuery里没有年龄、兴趣的数据
BigQuery里的数据是定位到个体,为保护用户的隐私,没有年龄和兴趣的数据。