Canva如何每天收集250亿个事件

Canva如何每天收集250亿个事件

💡 原文英文,约2100词,阅读约需8分钟。
📝

内容提要

Canva的产品分析在帮助团队衡量产品特性的影响并做出数据驱动的决策方面起着重要作用。他们通过A/B测试新功能,确保只发布提供更好用户体验的功能。他们的产品分析管道每天处理250亿个事件,可实现99.999%的正常运行时间。他们的团队将任务分为三个类别:结构、收集和分发。他们使用Protobuf定义分析事件模式,并使用Datumgen生成多种语言的代码。他们使用Kinesis Data Stream收集事件,并使用Snowpipe Streaming将事件传递给Snowflake。他们还使用SQS作为KDS的回退选项。他们的服务提供至少一次的保证,确保事件至少被传递一次。

🎯

关键要点

  • Canva的产品分析帮助团队衡量产品特性的影响并做出数据驱动的决策。
  • 新功能通过A/B测试确保只发布提供更好用户体验的功能。
  • 产品分析管道每天处理250亿个事件,正常运行时间达到99.999%。
  • 团队任务分为结构、收集和分发三个类别。
  • 使用Protobuf定义分析事件模式,确保事件模式具有良好的文档和机器可读性。
  • Datumgen生成多种语言的代码以支持事件的发送和消费。
  • 使用Kinesis Data Stream收集事件,并通过Snowpipe Streaming将事件传递给Snowflake。
  • SQS作为KDS的回退选项,确保事件至少被传递一次。
  • 通过压缩数据和批量发送事件,节省了AWS成本。
  • 将路由器与数据收集工作者解耦,以支持不同类型的消费者。
  • 提供至少一次的保证,消费者需自行处理事件去重。
➡️

继续阅读