新闻资讯

工具丨GA API抽样问题及最佳实践
2019-09-19 09:53:16来源:100唯尔

/唐至清,本文转载自公众号触脉咨询(ID:TrueMetrics)

上次内容分享介绍了如何启用GA API以及怎么访问GA API获取GA报表的数据。

GA API获取数据除了可以帮您实现自动化获取数据之外,还可以帮您尽可能地获取到非抽样的数据。本篇文章将为您介绍:GA API抽样级别设置、查看抽样比例、如何更好地处理大规模数据查询问题。

三、GA API的抽样和处理大规模数据问题

1.抽样

您可以通过设置GA API请求中的samplingLevel参数指定使用的抽样级别,具体的级别说明如下:


如果API 响应中包含抽样数据,containsSampledData 响应字段的值将为 true。另外,sampleSize 和 sampleSpace 这两个属性也会为查询提供与抽样级别相关的信息。利用这两个值,您可以计算查询所用会话数的百分比。例如,如果 sampleSize 为 201,000,sampleSpace 为 220,000,则报告基于 (201,000 / 220,000) * 100 = 91.36% 的会话。

2.处理大规模的数据结果

如果您需要查询大规模的GA数据集,那么可以从以下几个方面优化GA API的查询,从而避免错误和最大程度的减少超出配额的情况。

减少每个查询中的维度数量

如果查询维度过多,查询结果将非常复杂,GA处理起来会特别耗时。您可以限制查询中维度的数量,以减少GA处理的行数,从而提高性能。

(请注意:任何 GA API 请求最多只能使用 7 个维度和 10 个指标)

分页Analytics Reporting API v4 使用 pageToken 和 pageSize 字段对跨多个页面的响应结果进行分页。您可以从 reports.batchGet 请求的响应中的 nextPageToken 参数里获取 pageToken。

按日期范围拆分查询除了分页之外,您还可以缩短查询的日期范围,例如考虑仅针对一周甚至一天创建单独查询。

使用 gzip启用 gzip 压缩可以降低单个请求的带宽需求,这是一种既方便又简单的方法。虽然这种方法需要消耗一些额外的 CPU 时间解压缩返回结果,但考虑到它对节约网络费用的贡献,通常还是值得一用的。

要接收gzip 编码的响应,您必须执行以下两项操作:设置 Accept-Encoding 标头,并且修改您的用户代理以包含字符串 gzip。下面提供了一个用于启用 gzip 压缩的格式正确的 HTTP 标头示例:Accept-Encoding: gzipUser-Agent: my program (gzip)

结语

以上即为GA API抽样问题及最佳实践的内容,如果您想详细了解如何具体地使用GA API自动化地获取GA数据,可以参考唐至清公众号的另外一篇文章:如何使用GA API获取数据。

本文作者丨唐至清