今天,我们增加了两个重要的选择运行在云中的高性能应用客户:支持复述,亚马逊ElastiCache并再创新高的内存数据库实例(db.cr1.8xlarge)为亚马逊RDS

当我们准备推出这些特性时,我不仅被我们提供的一系列服务所震惊,这些服务使客户能够运行完全管理的、可伸缩的、高性能的数据库工作负载,包括亚马逊RDS亚马逊DynamoDB亚马逊红移亚马逊ElastiCache,而且还通过这些服务的不断发展和完善的步伐。因为现在有很多的选择,以满足您的高性能数据库的需求,我决定写这个博客来帮助你用教训我已经通过缩放为Amazon.com基础设施学会选择适合您的工作负载最合适的服务。

选择数据库架构可能你会做最重要的决定,有一个不成比例的影响性能、可伸缩性和可用性应用程序,使它正确,您的应用程序无缝地从数百上千万的用户规模没有困难,同时保持性能和可用。如果做错了,你就会看到不眠之夜,在重写代码的关键部分的同时,挣扎着跟上增长,努力保持应用的可用性。自数据库是复杂的,有很多影响我们客户的应用程序,从第一天起我们相信提供管理服务,承担的负担供应、配置、安全、备份和恢复数据库,使客户专注于他们所做的最好的,这是开发的应用程序的用户。必威体育精装版app官网

没有一个单一的数据库架构或解决方案能够满足所有Amazon.com的或我们的客户的需求的。例如,即使在关系数据库中,一些第三方的应用程式,我们在使用亚马逊只认证使用Oracle数据库,而其他人使用MySQL数据库运行。我们的建筑的某些部分用于在关系数据库上运行,但我们只是不能缩放它们足够快,以满足我们快速增长的网上零售业务的需求,特别是在假日购物季节。我们忍受显著破坏了我们在21世纪初的零售基础设施和不得不发明数据库这样的一个新的类别发电机这就是众所周知的NoSQL。因为我们将架构的这些部分移动到DynamoDB我们无法想象在做任何其他的方式,因为我们不知道其他的解决方案,可以无缝地扩展到我们的交易速度,同时保持我们严格的100%的可用性需求。虽然我们使用DynamoDB广泛的,我们也有我们的堆栈的其他部分的关系数据库,他们是同样重要的。

AWS为其客户提供一个选择的不同的数据库服务,对于每一个不同的工作负载进行了优化。DynamoDB是谁想要高可用性,可预测的性能和可扩展性,我们限制某些关系的功能来实现这些关键要求的客户。亚马逊RDS,进行MySQL,SQL Server和Oracle数据库的支持,是为客户提供应用程序,其中关系型数据库的功能和支持特定品牌的数据库是至关重要的。我们提供所谓的高可用性选项亚马逊RDS多AZ并承诺99.95%的可用性SLA。通过使用Amazon RDS和已供应的IOPS,我们允许客户提供他们需要的输入和输出操作(IOPS)数量。亚马逊ElastiCache是一个全面管理,在内存中缓存服务,为客户优化他们的阅读工作负载的延迟,性能和成本。对于我们的客户谁需要可扩展的数据仓库,我们的报价亚马逊红移,快速,全面管理,PB级数据仓库服务,使得它简单和成本有效的使用现有的商业智能工具有效地分析所有的数据。

今天,我们正在进一步扩大可用于设计和开发高度可扩展和高性能的应用程序的选择。必威体育精装版app官网在关系数据库中,内存工作集大小对于数据库性能的关键。随着不断增加存储的数据的量,所需的存储器的量也上升。为了解决这个问题,我们添加了一个新的内存优化实例亚马逊RDS支持。该db.cr1.8xlarge拥有88周的ECU的存储器中,高带宽网络,并提供高达20,000 IOPS为MySQL 5.6,相对于现有12500 IOPS限制为MySQL增加了60%的能力244GB。这是高性能的关系的工作负载的理想实例。

类似于我们如何在亚马逊RDS提供多种引擎,从今天开始,我们支持复述,作为亚马逊ElastiCache的一个新的引擎选择,除了Memcached。我看到Redis在过去几年里发展迅速,虽然一些客户使用它作为主要的数据存储,它的主要好处是扩充你的数据库层,利用数据结构,如排序集和列表,这在传统数据库中是不容易得到的。客户告诉我们,他们喜欢Redis的易用性和功能,但一直要求我们帮助简化其管理。Amazon ElastiCache for Redis提供了Redis的全部功能,旨在使您现有的库,应用程序和工具,Redis只是工作。Amazon ElastiCache支持创建Redis读取副本跨可用性区域,并自动检测和替换失败的读取副本。集成亚马逊监测为客户提供关键性能指标的可见性,进一步简化了系统管理。

许多开发人必威体育精装版app官网员告诉我们,他们希望依靠AWS来管理数据库,这样他们就可以把精力花在构建应用程序上。例如,Scopely将DynamoDB作为主要数据存储来构建他们的游戏平台,同时在需要复杂查询支持的地方使用Amazon RDS。对于需要数据结构的功能,如排序集(如排行榜),他们一直使用Redis。随着Redis在ElastiCache的推出,Scopely正计划将其自管理Redis转移到Amazon ElastiCache,以获得监控和管理的额外好处,而无需改变其现有Redis工具链。同样的,龟尾在他们的平台上,除了使用RDS Multi 必威体育精装版app官网AZ和DynamoDB之外,Redis还广泛用于实时排行榜跟踪。gumi曾经管理一个大型Redis舰队,并兴奋地开始远离无区别的沉重的自我管理Redis采用弹性疼痛Redis。

有许多像Scopely和gumi这样的客户相信他们应该“为特定的用例使用最好的工具”,但是选择正确的数据库架构是具有挑战性的。为了简化选择过程,我推荐一个简单的经验法则:对于在任何规模上都需要高可用性的关键工作负载,我通常推荐DynamoDB,因为它以低成本提供无缝的可伸缩性、可预测的性能和高可用性,并且没有任何操作开销。对于需要复杂查询、事务或特定关系特性的工作负载,我建议使用Amazon RDS。它为客户提供了熟悉的MySQL、Microsoft SQL Server或Oracle数据库引擎,同时简化了复杂rdbms的监控和管理。你可以增加你的数据库层与缓存层使用Amazon ElastiCache来降低读取成本和读取延迟使用Memcached和现在的Redis,特别是如果你需要那些高级数据结构,而不是通常由你的数据库层提供。您可以使用Amazon Redshift分析存储在DynamoDB或RDS中的所有数据,这是一种完全托管的pb级数据仓库服务,在分析几乎任何大小的数据集时,可以提高查询性能,而成本仅为大多数传统数据仓库解决方案的十分之一。

我们相信为客户提供构建模块,允许他们构建他们需要的应用程序,我很高兴看到他们将如何处理我们今天宣布的新选项。

要了解有关Amazon RDS和新的实例类型的更多信息,请访问http://aws.amazon.com/rds

要了解更多关于弹性疼痛,请参考杰夫·巴尔的博客和访问http://aws.amazon.com/elasticache

评论

博客评论Disqus