BigQuery中Crux数据集查询Min/Avg/Max LCP、FID、CLS指标方案咨询
方案说明
- 关于
chrome-ux-report.materialized.metrics_summary表取值的问题:该表是官方预聚合的月度指标表,完全支持提取指定单月的LCP最小、平均、最大值,相比查询原始CrUX数据集,数据处理量可以降低99%以上,非常适合做Data Studio报表的数据源。 - 降低BigQuery数据处理量的核心原则:
- 不要直接查询
chrome-ux-report.all.*原始分区表,优先使用官方预聚合的物化表,单表数据量仅为原始表的千分之一不到 - 查询时必须指定明确的月份过滤条件,避免扫描不必要的历史分区
- 仅选取需要的字段,禁止使用
SELECT *拉取全字段 - 执行查询前先通过BigQuery控制台的验证功能查看预估处理量,确认符合预期再执行
可用查询示例
全量站点单月LCP统计(处理量约500MB)
SELECT MIN(p75_lcp) * 1000 AS min_lcp_ms, AVG(p75_lcp) * 1000 AS avg_lcp_ms, MAX(p75_lcp) * 1000 AS max_lcp_ms FROM `chrome-ux-report.materialized.metrics_summary` WHERE date = '2024-03' -- 替换为目标月份,格式为YYYY-MM
单个站点单月LCP统计(处理量约2-10MB)
如果仅需要查询特定站点的指标,使用origin_summary物化表成本更低:
SELECT MIN(lcp.min) * 1000 AS lcp_min_ms, lcp.average * 1000 AS lcp_avg_ms, MAX(lcp.max) * 1000 AS lcp_max_ms FROM `chrome-ux-report.materialized.origin_summary` WHERE yyyymm = 202403 -- 替换为目标月份,格式为YYYYMM数字 AND origin = 'https://example.com' -- 替换为目标站点地址 GROUP BY lcp.average
补充说明
如果需要按设备类型、地区等维度拆分数据,可在上述查询的WHERE子句中追加对应的过滤条件即可,不会额外增加过多数据处理量。
内容的提问来源于stack exchange,提问作者ZedBee
相关产品推荐
相关产品推荐

