Cloudflare Analytics Engine
从 Workers 写分析事件并用 SQL 查询 — 无需管理基础设施的时序存储。
为什么
Analytics Engine 从 Workers 摄取百万事件/秒并支持 SQL 查询 — 无需运行 Clickhouse/Kafka。免费:1000 万写/天,按查询付费。
适合产品分析和 API 指标。
何时使用
用于 API 请求指标、功能采用追踪和按用户分析。避免高基数数据(唯一用户 ID 作索引膨胀存储)。
如何做
示例
常见问题
- ⚠高基数索引 — 用户 ID 作索引膨胀存储,改用 blobs
- ⚠写速率限制 — 每 Worker 1000 写/秒,用数组批量 writeDataPoint
- ⚠大数据集查询延迟 — 用 WHERE timestamp 限时,避免全表扫描
最佳实践
- ✓低基数过滤用 indexes — API 版本、env、区域;非用户 ID
- ✓批量写 — 数组收集事件,每请求通过 ctx.waitUntil 写一次
- ✓Worker 中预聚合 — 写汇总(count、sum)非原始事件,存储减 100 倍
常见问题解答
什么是Cloudflare Analytics Engine?它解决什么问题?
从 Workers 写分析事件并用 SQL 查询 — 无需管理基础设施的时序存储。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。
如何在 5 分钟内上手Cloudflare Analytics Engine?
两步即可跑通:① 创建数据集 — wrangler analytics-engine create my-dataset;② 绑定 — [[analytics_engine_datasets]] binding="ANALYTICS" dataset="my-dataset"。建议先用免费套餐验证流程,再接入生产环境。
Cloudflare Analytics Engine 最容易踩的坑是什么?
最高频的问题是:高基数索引 — 用户 ID 作索引膨胀存储,改用 blobs。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。
Cloudflare Analytics Engine 的最佳实践有哪些?
Cloudflare Analytics Engine 的最佳实践包括:低基数过滤用 indexes — API 版本、env、区域;非用户 ID;批量写 — 数组收集事件,每请求通过 ctx.waitUntil 写一次;Worker 中预聚合 — 写汇总(count、sum)非原始事件,存储减 100 倍。其中首条「低基数过滤用 indexes — API 版本、env、区域;非用户 ID」应作为团队默认规范写入 IaC 模板。
Cloudflare Analytics Engine 如何控制成本与避免账单意外?
三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。Cloudflare Analytics Engine 多数提供免费套餐,先在免费额度内验证再放量。