QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Canva 选择 Amazon KDS 而非 SNS+SQS,每天处理 250 亿个事件,节省了 85% 的成本

作者:Rafal Gancarz

  • 2024-09-05
    北京
  • 本文字数:1274 字

    阅读完需:约 4 分钟

Canva 选择 Amazon KDS 而非 SNS+SQS,每天处理 250 亿个事件,节省了 85%的成本

Canva 对其产品分析平台评估了多种不同的数据处理解决方案,包括 AWS SNS 和 SQS 的组合、MKS 以及 Amazon KDS,最终选择了后者,主要是因为其成本要低得多。该公司比较了这些解决方案的许多方面,比如性能、维护工作量以及成本等。


Canva 每天处理约 250 亿个产品分析事件,以支持许多面向用户的功能,如个性化及推荐、使用统计及见解。所捕获的数据也是支持任意新产品特性 A/B 测试的关键。


收集和分发产品分析事件的数据管道不仅需要支持非常高的吞吐量,还需要支持高可用性(99.999% 的正常运行时间),并且还要具有成本效益、可靠性和用户友好性。负责为产品分析提供事件驱动架构(EDA)的团队在 MVP 的早期阶段使用了 AWS SQS 和 SNS 的组合。这些服务易于设置,并提供了出色的弹性和可扩展性,但它们的成本占了运行架构的 80%。



使用 Amazon KDS 的产品分析数据管道(来源:Canva 工程博客)


基于最初的 MVP 经验,该团队决定寻找能够以较低成本满足性能要求的替代方案,并考虑了另外两种 AWS 服务:Amazon Managed Streaming for Apache Kafka (MSK) 和 Amazon Kinesis Data Stream(KDS)。工程师们比较了这些服务的成本、性能和可维护性,最终选择了 KDS,因为它本身的成本低(比 SQS+SNS 便宜 85%),而且维护的成本也极低,尽管与 MSK 相比延迟更高(高 10-20 毫秒,但可以接受)。


为了提高基于 KDS 的解决方案的成本效益,该团队使用了事件批处理和 zstd 压缩,压缩比为 10 倍,每批压缩延迟为 100 毫秒。工程师估算,使用压缩技术每年可节省 60 万美元。


使用 KDS 时需要特别注意的一个方面是尾部延迟高(超过 500 毫秒),并且当吞吐量峰值超过每个分片 1MB/s 的硬限制阈值时会进行限流。工程师们实现了一种利用 SQS 队列的回退逻辑,结果实现了低于 20 毫秒的 p99 延迟,同时每月为 SQS 支付的费用不到 100 美元。回退选项还兼作了故障转移机制,以防 KDS 遇到严重的服务降级或中断。



在 KDS 限流情况下,回退到 SQS(来源:Canva 工程博客)


该团队使用 Protocol Buffers 来确保架构的可描述性以及随着时间推移来演进事件定义。Canva 已经在使用 Protocol Buffers 来定义微服务之间的契约,但对于事件定义,它还需要完全的向后和向前兼容性。工程师们还在 protoc 之上创建了一个自主研发的代码生成工具。


Datumgen 用于验证兼容性要求并生成多种语言的代码。此外,该工具从事件定义中提取元数据,以增强事件目录数据,其中包含有关技术和业务所有者的详细信息以及字段描述。文档完备且最新的事件模式有助于 Canva 保持数据质量,避免运行时因模式不兼容而导致的代价高昂的问题,并使工程师能够发现可用的产品分析事件。


作者介绍


Rafal Gancarz 是一位经验丰富的技术领导者和专家。他目前正在帮助星巴克打造可扩展、弹性和成本效益高的商务平台。此前,Rafal 曾为思科、埃森哲、凯德、ICE、Callsign 等公司设计和构建大规模、分布式和基于云的系统。他的兴趣涵盖了架构与设计、持续交付、可观测性和可维护性,以及软件交付的社会技术和组织方面。


原文链接:

https://www.infoq.com/news/2024/08/canva-amazon-kinesis-data-stream/


2024-09-05 08:008546

评论

发布
暂无评论
发现更多内容

职场<火焰杯>测试开发大赛决赛成绩及获奖名单公布!

霍格沃兹测试开发学社

如何从自建开源 Prometheus 迁移到阿里云托管 Prometheus 服务

阿里巴巴云原生

阿里云 云原生 Prometheus

天翼云TeleDB数据库获得中国信通院两项测试证书

极客天地

EdgeOne安全专项实践:上传文件漏洞攻击详解与防范措施

我再BUG界嘎嘎乱杀

网络安全 安全 漏洞 文件上传 EdgeOne

又一成就,Pencils Protocol单链 TVL 突破 3 亿美元

股市老人

聚焦于 Melos 数据生命网络,用户如何参与到生态的建设中?

石头财经

【活动预告】Easysearch 结合大模型实现 RAG

极限实验室

大模型 easysearch 极限科技 rag 搜索客社区

Gartner《IT服务管理平台市场指南》报告解读

嘉为蓝鲸

ITSM Gartner gartner中国 IT服务管理

ETL vs. ELT:数据集成的最佳实践是什么?

tapdata

etlelt区别 什么是ETL 什么是ELT 数据集成最佳实践

SLS 数据加工全面升级,集成 SPL 语法

阿里巴巴云原生

阿里云 云原生 服务日志

你在找提升效率的解决方案还是追求效果的解决方案

客户在哪儿AI

内容营销 ToB营销 大客户营销

TapData 信创数据源 | 国产信创数据库达梦(Dameng)数据迁移指南,加速国产化进程,推进自主创新建设

tapdata

达梦数据库 达梦数据迁移 达梦增量同步

全新征程,Pencils Protocol 成首个单链 TVL 突破 3 亿美元的项目

加密眼界

又一成就,Pencils Protocol单链 TVL 突破 3 亿美元

西柚子

又一成就,Pencils Protocol单链 TVL 突破 3 亿美元

BlockChain先知

从消息流平台Serverless之路,看Serverless标准演进

华为云PaaS服务小智

Serverless 华为云

喜报!钛铂数据 TapDB 通过中国信通院文档数据库产品测试

tapdata

国产数据库 TapDB 国产分布式文档数据库 钛铂分布式文档数据库 中国信通院测试

面对AI,我们如何给自己的工作留条“后路”?

脑极体

AI

多重认可!嘉为科技入选《Gartner 2024中国基础设施战略成熟度曲线》

嘉为蓝鲸

AIOPS Gartner 可观测 OpenTelemetry

「漏洞原理」SQL 注入漏洞之理论讲解

我再BUG界嘎嘎乱杀

网络安全 安全 漏洞 SQL注入

不断发展的AI监管如何影响网络安全

我再BUG界嘎嘎乱杀

人工智能 AI 网络安全 安全 网安

聚焦于 Melos 数据生命网络,用户如何参与到生态的建设中?

BlockChain先知

全新征程,Pencils Protocol 成首个单链 TVL 突破 3 亿美元的项目

石头财经

Canva 选择 Amazon KDS 而非 SNS+SQS,每天处理 250 亿个事件,节省了 85%的成本_云计算_InfoQ精选文章