使用 Amazon MemoryDB for Redis 支持高速工作负载

演讲讲述了AmazonMemoryDBforRedis如何通过内存性能、高可用性和分布式事务日志提供高速、耐用的数据库服务,适用于支付卡分析、IoT事件处理等场景。演讲详细介绍了MemoryDB的特点、应用实例和性能优化技术。

关键字: [Amazon Web Services re:Invent 2023, Amazon MemoryDB for Redis, Memorydb, Redis, Performance, Scaling, Durability]

本文字数: 1500, 阅读完需: 8 分钟

视频

如视频不能正常播放,请前往bilibili观看本视频。>> https://www.bilibili.com/video/BV1Ab4y1T7YX

导读

Amazon MemoryDB for Redis 可提供内存性能,同时使用高可用性的分布式事务日志来帮助确保数据跨多个可用区持久化。在本讲座中,您将了解客户如何将 MemoryDB 用于对性能有苛刻要求的关键任务工作负载,如支付卡分析、物联网事件处理和微服务消息流等用例。深入了解亚马逊云科技如何将分布式耐用性层集成到 Redis(全球最受欢迎的关键价值商店之一)中。

演讲精华

以下是小编为您整理的本次演讲的精华,共1200字,阅读时间大约是6分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。

亚马逊云科技的内存数据库部门负责人Itai和主导MemoryDB架构的主工程师Kevin共同带来了一场题为《利用Amazon MemoryDB for Redis驱动高速工作负载》的演讲。Itai首先指出,现代应用需要具备接近实时性能和高可扩展性,以满足每秒不断增长的数据和请求。许多现代应用采用了微服务架构,这加大了堆栈延迟,并需要具备极低延迟的数据库进行弥补。因此,开发者越来越倾向于选择如Redis般的开放式、灵活API,因其提供了丰富的数据结构和生态系统支持。然而,传统的关系型数据库往往无法胜任现代应用在性能、可扩展性、灵活性和成本等方面的需求。正因如此,亚马逊云科技提供了诸如MemoryDB在内的多种专为满足特定需求而设计的专用数据库。

接下来,Itai详细介绍了MemoryDB的主要特点。他将之形容为亚马逊云科技提供的最快、最耐用且具有微秒级读取延迟和单位数毫秒级超低写入延迟的数据库。MemoryDB与Redis兼容,支持列表、集合、有序集合、哈希以及其他丰富的数据结构。一项关键创新在于其通过使用多可用区事务日志设计实现了零数据丢失。此外,MemoryDB具备良好的可用性,SLA达99.99%,全面负责监控、故障切换等其他操作,使客户可以专注于自己的应用。在可扩展性方面,单个MemoryDB集群可以扩展至500个节点,拥有超过100TB的内存数据,或者在启用数据分层的情况下可达250TB。这使得MemoryDB有能力应对最高要求的负载,每秒处理数百万次请求。同时,MemoryDB也拥有强大的安全性,包括加密、IAM集成以及符合HIPAA、PCI和SOC等法规标准。

艾塔伊对MemoryDB的卓越性能进行了深入研究。对于写入操作,即使在多个可用性区域进行同步复制的情况下,它也仅需单位数毫秒延迟。单个分片每秒可处理100,000个写入请求或100MB/秒。对于读取操作,MemoryDB利用内存中的数据实现微秒级别的延迟。一个节点每秒可处理470,000个读取请求或1.3亿字节/秒。通过在集群中扩展至500个节点,MemoryDB能每秒处理数百万个请求,以满足大规模应用程序的需求。

接下来,艾塔伊列举了MemoryDB在不同行业中的应用实例。在微服务架构中,它可以用于不同服务之间的同步、为单个服务提供持久数据存储或作为共享数据库。对于Web和移动应用,MemoryDB适合存储内容、管理会话、启用聊天、实现消息队列以及利用其丰富的数据结构,如列表、哈希和地理空间命令。零售和游戏公司使用MemoryDB存储客户档案、库存、偏好、喜好等热数据。金融服务公司使用它进行交易和欺诈检测,得益于其高速度和一致性。媒体和娱乐公司将其用作数据存储和实时流应用。对于物联网(IoT)领域,MemoryDB可接收和分析流设备数据。

为了提供具体示例,艾塔伊重点介绍了三个成功的客户案例:

  1. Twilio Segment,一家领先的客户数据平台,使用MemoryDB进行GDPR删除协调。他们需要低延迟、高吞吐量、多AZ耐用性和高效的数据结构。在他们的架构中,删除请求作为JSON文档存储在MemoryDB中。他们还使用列表作为工作队列,将这些请求传达给下游服务进行处理。MemoryDB提供了与Redis相同的耐用主要数据库的性能。

HUD,全球最大的开放式元宇宙平台,利用MemoryDB进行游戏会话、用户资料、地图、喜好和评论等各种操作。该平台对低延迟、高吞吐量、多区域持久性和灵活的数据结构有很高的要求。得益于MemoryDB,他们能够在单一数据库中同时表示不同的数据类型,例如喜好计数器、评论哈希值和排行榜有序集合。由于MemoryDB的超快性能,其开发效率提升了四倍。

意大利流媒体服务平台Mediaset Infinity也采用了MemoryDB来支持其实际电视投票系统。他们同样需要低延迟、高吞吐量、易于扩展和一致性,以满足数百万观众同时进行投票的需求。他们的系统使用MemoryDB内的原子Lua脚本进行字符串和计数器的验证,并在投票结果上进行聚合和广播。这使得他们的观众能够享受到流畅、快速的投票体验。

Itai注意到了这些不同应用场景对快速、持久且可大规模扩展的数据库的共同需求。MemoryDB通过开放的、灵活的Redis API实现了这一目标,使其成为强大的解决方案。

Kevin接着详细介绍了MemoryDB如何实现其独特的高效速度与完整数据持久性的完美结合。他解释道,每个分片都包含一个具有内存中真实数据的源主节点,以及具有数据副本的重拷贝节点。MemoryDB的独到之处在于它作为节点间复制的总线的事务性日志。每次写入必须在至少跨越两个可用性区域并在至少三个副本上同步写入到日志后才能被确认,从而确保数据持久性。

Kevin详细阐述了这种架构如何在发生故障时仍能保持数据一致性和防止数据丢失的原理。如果主节点在所有写入被复制到副本之前出现故障,MemoryDB将确保在将故障切换到新主节点之前,事务日志会被完全消费以重建最新状态。这确保了在发生故障的情况下不会发生数据丢失或不一致。

Itai再次强调了MemoryDB的弹性扩展能力。主要的扩展方法有三种:

  1. 读取扩展:根据需要添加或移除副本以提高读取吞吐量。

  2. 垂直扩展:当需要更高的内存或计算能力来处理特定的热点键或大值时,可以扩展到更大的实例类型。这种方法提供了更强大的容量,但不太精细。

  3. 水平扩展是通过添加或删除分片来实现的最灵活方法,从而能够调整读取、写入、处理能力和内存容量。例如,添加一个分片可以将能力提高10%,实现更精细的增长。Itai详细解释了MemoryDB如何能够在横向扩展时无缝地在新的节点上重新分配数据,同时在不中断或数据丢失的情况下原子地移动密钥。在缩小集群规模时,这个过程是相反的。这确保了在整个缩放操作中保持可用性。为了进一步优化性能,MemoryDB采用了Enhancer I/O库,将套接字通信和加密卸载到专门的线程上,而不是在主要的数据处理线程上竞争资源。这使得吞吐量和延迟分别提高了3倍和75%。此外,Enhancer Multiplexing将来自多个客户端连接的命令批量处理成较少的通道,以便更高效地利用批处理处理。这为具有许多并发客户端的工作负载提供了额外的46%的更高吞吐量和21%的低延迟。总之,Itai强调说,由于MemoryDB的微秒速度、巨大的可扩展性和Redis兼容性,使其成为今天亚马逊云科技上最快、最耐用的数据库,以支持巨大的规模和吞吐量。演讲涵盖了MemoryDB的功能、客户使用案例、架构、缩放和性能优化等方面。对于任何希望驱动高速工作负载的人来说,MemoryDB提供了一个有吸引力的数据库解决方案。

下面是一些演讲现场的精彩瞬间:

内存数据库(MemoryDB)是一种用于微服务架构的同步、消息传递和持久性数据存储的工具。

亚马逊云科技为其提供了低延迟、高吞吐量和多区域冗余以满足客户需求。

内存数据库采用多事务日志作为复制总线,连接跨不同可用区的节点,确保数据在确认写入之前被持久化保存。

关于如何垂直扩展亚马逊云科技的问题,领导者分享了通过使用更大规模的实例来处理大型数据集或热点数据的方法。

在实际应用中,内存数据库能够实现高达46%更好的吞吐量和21%更低延迟的性能提升,且无需支付额外的费用。

此外,领导者还宣布了一个免费的两个月试用期,让客户可以免费尝试内存数据库的功能。

总结

本次演讲主要介绍了Amazon MemoryDB for Redis这款全托管内存数据库。该款产品专为满足微秒级延迟需求而优化,同时提供与Redis兼容的API。MemoryDB通过在多个可用性区域中复制数据,确保了数据的耐用性。Twilio Segment、HUD和Mediaset Infinity等实际案例展示了MemoryDB如何支持高速工作负载。在Twilio Segment项目中,MemoryDB使用JSON进行请求和队列列表,以实现GDPR的协调。至于HUD的元宇宙项目,MemoryDB使用计数器、哈希和有序集合等数据结构存储游戏数据、用户配置文件和内容喜好。Mediaset Infinity则利用MemoryDB和Lua脚本实现实时投票系统。在内核层面,MemoryDB通过多AZ写入事务日志以及增强型I/O多路复用等技术优化,实现了速度和规模的平衡。凭借微秒级的读取速度、毫秒级的写入速度以及每秒数百万次操作的能力,MemoryDB非常适合应对对延迟有较高要求的工作负载。

演讲原文

https://blog.youkuaiyun.com/just2gooo/article/details/134833158

想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!

2023亚马逊云科技re:Invent全球大会 - 官方网站

点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!

点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!

即刻注册亚马逊云科技账户,开启云端之旅!

【免费】亚马逊云科技“100 余种核心云服务产品免费试用”

【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”

亚马逊云科技是谁?

亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值