向 BigQuery 中的 CrUX 报告添加排名幅度

2021 年 2 月的数据集开始,我们将在 BigQuery 中的 CrUX 报告中添加一项实验性指标,该指标会按照数量级数量来区分来源的热门程度:排名前 1,000、前 1 万、前 10 万、前 100 万...

我们来看看实际用例:

SELECT
  experimental.popularity.rank AS rank_magnitude,
  COUNT(DISTINCT origin) AS num_origins
FROM
  `chrome-ux-report.all.202102`
GROUP BY
  rank_magnitude
ORDER BY
  rank_magnitude
rank_magnitude num_origins
1 1000 1000
2 10000 9000
3 100000 90,000
4 1,000,000 900000
15 1000 万 7,264,371,000

对于 2021 年 2 月的全球数据集,我们有 5 个分桶。符合预期,在第 1 行中 我们可以看到排名为 1000 的源有 1000 个,即 1000 个 热门来源。第 2 行可能看起来出乎意料, 在前 1 万个集合中,只有 9,000 个源;这是因为第 1 行中的来源 也属于前 1 万名集合。要选择前 1 万个源,您需要 在查询时指定 Experimental.popularity.rank <= 10000。

该数据集还包含国家/地区特定排名规模。例如, 查询列出了德国最受欢迎的 1 万个源。

SELECT DISTINCT origin
FROM `chrome-ux-report.country_de.202102`
WHERE experimental.popularity.rank <= 10000

要了解我们新推出的热门程度指标的潜力,我们先来看看热门程度 网页细分在首次内容渲染指标 (FCP) 方面有所不同。在本查询中 我们将 1 秒视为一种快的用户体验

SELECT
  SUM(fcp.density)/count(distinct origin)
FROM
  `chrome-ux-report.all.202102`,
  UNNEST(first_contentful_paint.histogram.bin) AS fcp
WHERE
  fcp.start < 1000 AND experimental.popularity.rank <= 1000

对于 experimental.popularity.rank <= 1000 的来源,查询会对所有 小于 1000 毫秒的 FCP 指标值的直方图分区密度并除以 按原点数量计算,也就是说,它会计算 快速 FCP 加载,适用于 1000 个最热门来源。在此查询中,所有源都有 权重相等,因此可以说这并不完美。下面我们看看 通过将 where 子句更改为 指定 experiment.popularity.rank <= 10000。我们针对 10K、100K 日期:

源站量级 FCP 占比 <1 秒,取整个源站的平均值
1000 次 53.6%
10000 49.6%
100000 45.9%
1000000 43.2%
1000 万 39.9%

这表明,更快的 Web 用户体验与更受欢迎有关。

2022 年 10 月的数据集中,结果按半排名步骤进一步拆分。重新运行此数据集的第一个查询会显示半步以及每个排名级别中的源站数量:

SELECT
  experimental.popularity.rank AS rank_magnitude,
  COUNT(DISTINCT origin) AS num_origins
FROM
  `chrome-ux-report.all.202210`
GROUP BY
  rank_magnitude
ORDER BY
  rank_magnitude
rank_magnitude num_origins
1 1000 1000
2 5000 4000
3 10000 5000
4 5 万 40000
5 100000 5 万
6 50 万 400000
7 1,000,000 50 万
8 5000000 400 万
9 1000 万 5000000
10 5000 万 7,637,195,000

详细了解如何在 BigQuery 上使用 CrUX,并浏览 CrUX 实战宝典,查看更多示例查询。如果您愿意,欢迎分享您的查询,并告诉我们您找到的信息。