使用 Amazon DynamoDB 构建高弹性应用程序

关键字: [Amazon Web Services re:Invent 2023, DynamoDB, Resilient Applications, Amazon Dynamodb, High Availability, Disaster Recovery, Global Tables]

本文字数: 1900, 阅读完需: 10 分钟

视频

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

导读

参加本讲座,了解 Amazon DynamoDB 的弹性功能如何帮助您构建可扩展且可靠的应用程序。了解如何利用 DynamoDB 功能(例如冗余存储、自动吞吐量扩展和多活动、多区域数据复制)为意外情况做好准备,从而大规模实现业务连续性目标。此外,Amazon Advertising 还分享了他们为何选择将其最关键的工作负载迁移到 DynamoDB,并讨论了他们实现最高级别弹性的技术和架构方法。

演讲精华

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

  1. 备份与恢复: 这提供了一种通常仅为数小时的恢复点目标和恢复时间目标(RPO/RTO)解决方案,即通过定期创建备份快照并根据需要进行数据恢复。这是一种成本最低的弹性方法。

  2. 通过利用DynamoDB的全球表在亚马逊云科技的多个区域中同步应用数据,可以实现对RPO(恢复点目标)和RTO(恢复时间目标)至分钟级别的优化。基础设施仅在一个主要区域进行部署,并可依据需要进行故障切换。

  3. 在两个区域中部署核心基础设施(一个用于主要流量,另一个用于故障切换),这将进一步提升RPO和RTO至个位数分钟。与此同时,DynamoDB仍会在不同区域间同步数据。

  4. 主动-主动模式旨在实现近乎零的RPO和RTO,即在生产基础设施的多个活跃区域中进行同步部署并复制写入操作。虽然这会带来更高的成本,但却提供了最大的冗余。

杜菲强调,亚马逊云科技对弹性有着共同的职责。亚马逊云科技负责其全球云基础设施以及像DynamoDB这样的服务的底层弹性。然而,客户有责任通过遵循亚马逊云科技的最佳实践和指导,审慎地将弹性理念融入他们自己基于云的应用程序中。

他还介绍了DynamoDB作为一个全托管的NoSQL数据库服务是如何默认提供基本弹性的:

  • 作为无服务器平台,DynamoDB会根据应用流量水平自动调整容量大小,无需客户配置基础设施。

  • DynamoDB在所有至少三个可用性区域(AZ)内存储数据的多份副本,以确保高持久性和冗余。

  • DynamoDB支持服务软件的无停机更新和升级,从而避免客户受到干扰或需要维护窗口。

针对工作负载的容量管理,DynamoDB提供两种模式:

  • 按需模式根据实时流量需求自动调整配置的读/写容量。

  • 预配置模式允许手动配置读和写容量单位,并根据定义的指标和阈值自动调整以适应容量。

此外,DynamoDB还具备一些专门为弹性设计的附加功能,例如:

  • 时间点恢复功能可以持续记录表中的更改,以便在任何之前的35天内恢复到任何时间点。这使得客户能够从由于应用程序错误导致的数据覆盖中恢复。

  • 备份和恢复功能允许安排表备份并在需要时进行恢复。客户可以将DynamoDB与亚马逊云科技的备份功能相结合,以实现在不同区域的备份复制。

重新设计了归属数据管道,引入了一个可以写入多个底层数据存储的抽象服务层;实施了双写,将结果同时写入HBase和DynamoDB,以比较结果并验证准确性。

全局次要索引(GSI)提供了数据的一致性副本;DynamoDB全球型表将其复制到亚马逊云科技的各个区域。在生产环境中,每个分区键的平均最终一致性读取容量可达144 MB/秒,足以应对峰值查询负载,每秒超过9000万次。

存储利用率效率提高了80%。

  • 在峰值查询量达到每秒90百万请求的情况下,阻塞率仅为0.008%。

  • 能够自动从故障和中断中恢复,无需人工干预。

总的来说,爱德华兹强调了一些适用于任何关键任务系统的关键架构要点:

  • 有弹性的应用程序需要一个弹性的数据库。

  • DynamoDB提供了全面的原生弹性功能。

  • 亚马逊云科技基础设施是支持DynamoDB弹性的基础。

客户的体验和技术细节的分享为我们提供了一个关于如何利用DynamoDB的功能(如全局表、按需扩展和时间点恢复)来构建高度可扩展和弹性的广告工作负载的令人信服的概述。实际的迁移项目和最佳实践展示了DynamoDB作为托管云数据库服务的优势。

通过利用DynamoDB的弹性功能(如全局表、按需扩展和时间点恢复),Amazon Ads能够提高可用性,减少运营开销,并加快业务关键工作负载的创新速度。数据库迁移在性能、成本和工程生产力方面带来了显著的收益。

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

领导者回忆道,由于需要对数据库进行停机维修,他曾不得不向一位客户表示歉意。

亚马逊的广告平台致力于帮助广告商通过跨设备的互动式广告体验来打造品牌和业务。

归属算法管道对于评估营销活动效果和投资回报率至关重要。

亚马逊云计算科技推出了一套管理解决方案,旨在消除数据迁移过程中的延迟、可用性风险以及管理HBase服务器的运营负担。

领导者描述了亚马逊云计算科技团队如何在一个月内成功将HBase迁移至DynamoDB,从而提升了性能并支持诸如A/B测试和回滚等新功能。

领导者强调,依赖于指标数据的客户在做出决策时,高可用性和无数据丢失的重要性不容忽视。

亚马逊云计算科技将继续在多个应用程序中采用观点和镜头设计模式,以减轻运营负担并更有效地利用DynamoDB。

总结

演讲探讨了如何运用Amazon DynamoDB构建高度灵活的应用程序。弹性被定义为满足基础设施故障或需求波动等方面变化的能力。衡量弹性的标准包括恢复时间和数据丢失。

DynamoDB具备自动扩展能力、高持久性以及零停机时间更新。它还具有全球表功能,支持多区域复制。时间点恢复技术有助于防止数据丢失。

在DynamoDB中实施备份与恢复、引导光、热备用和主动-主动等策略。例如,全局表支持引导光和热备用等功能。

演讲中分享了一个案例研究,展示了亚马逊广告如何将关键的HBase工作负载迁移至DynamoDB。此举使可用性达到了99.999%,同时运营负担减轻了40%。DynamoDB的弹性特性还有助于降低成本。

总的来说,DynamoDB为构建高度灵活的应用程序提供了丰富的功能。正确的架构设计是关键,以便避免瓶颈并充分利用DynamoDB的功能。

演讲原文

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

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

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

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

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

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

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

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

亚马逊云科技是谁?

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值