本页列出了拉取报告时的一些推荐做法。
保存和重复使用报告
建议您为定期运行的查询创建并保存报表,因为多次插入和删除同一个报表会浪费资源。
使用相对日期范围(例如 YESTERDAY
或 LAST_7_DAYS
)可以使报告更便于重复使用。
定期生成报告
临时报表(即一次性报表)会浪费资源,因为它们 可以对不完整的数据集执行。定期生成的报告 充分利用报表资源,因为它们是批量生成的 保证在前一天的数据完成之前不会执行 处理。如需了解详情,请参阅在安排定期生成报表时可供使用的字段。
在轮询报告状态时使用指数退避算法
生成一个报表需要多长时间是无法预测的。生成报表所花费的时间可能从几秒到几小时不等,具体取决于许多因素,包括日期范围、要处理的数据量,等等。另外,生成报表所用的时间与报表中返回的行数之间也没有关联。因此,您需要定期检查正在生成的报表的状态 确定该任务的完成时间此过程称为“轮询”。
虽然轮询很有必要,但在遇到需要很长时间才能生成的报表时,如果编写的实现代码效率低下,可能很快就会耗尽您的配额。因此建议 可以使用指数退避算法来限制重试次数并节省配额。
分成多部分进行下载
报告文件的大小可能高达数 GB。下载此类报告 就可能会导致连接问题。此外,如果通过单个请求进行的下载操作发生中断,则完全无法恢复下载;而且这种下载操作在失败后也无法从中断处恢复下载。因此,建议您 分为多部分下载,将较大的下载内容拆分成多个较小的部分。如果 有单个数据块失败,则可以从该处继续下载。
虽然分成多部分进行下载有很多好处,但每个部分都会生成一个单独的请求。 因此,我们建议每个块的大小不小于 10 MB,以免浪费 配额。不过,如果您的报表平均大小非常大,建议您在网络连接速度允许的条件下,尽量增加每个部分的大小。
考虑报告配额
强制以负责任的方式使用 Campaign Manager 360 报告功能 通过以下三种产品级用量配额:
临时报表执行配额(每天)
旨在限制 CM 账号或 CM 用户个人资料可在 24 小时内生成的临时报表的数量。为避免超出配额,请执行以下操作:
- 减少重复的报告。
- 安排定期生成报告。
- 停用不必要的 API 脚本。
主动生成的定期报表的配额
旨在限制 CM 账号或 CM 用户个人资料可主动安排在给定时间生成的报表的数量。为避免超出配额,请采取以下措施:
- 减少重复的报告。
- 停用不必要的定期报表。
- 停用不必要的 API 脚本。
同步生成的报告的配额
限制 CM 账号或 CM 用户个人资料可同步生成的报告的数量。为避免超出配额,请采取以下措施:
- 安排定期生成报告。
- 停用不必要的 API 脚本。
- 实现退避逻辑。
如果您已优化了报告实施方式 但仍可以发现 请联系 Campaign Manager 360 支持团队,请使用 联系表单。