时间在这里很快经过,直到最近,在一年以来,我们已经开始了一年以来一年以来DynamoDB.。当我和DynamoDB团队坐下来回顾过去一年的进展时,我意识到DynamoDB甚至已经超过了我自己对应用程序使用DynamoDB可以轻松实现大规模和高可用性的预期。我们的许多客户只需单击一个按钮,就可以在几分钟内创建DynamoDB部署,每年能够处理数万亿个数据库请求。我以前写过关于它的文章,但我仍然对它印象深刻沙札姆的使用DynamoDB,这是一个极端的例子,说明如何将DynamoDB的快速和简单的可伸缩性快速应用于构建大规模应用程序。Shazam的手机应用程序是与超级碗广告集成,允许广告商在活动期间运行高度交互式广告活动。Shazam需要处理超级碗的持续时间和使用DynamoDB作为其架构的一部分的巨大增加。在使用DynamoDB仅三天后,他们已经设法从设计阶段到了一个完全生产的部署,可以处理今年最大的广告活动。

自DynamoDB推出的一年中,我们看到广泛的通过客户从电子商务平台,实时广告交流,移动应用程序,超级碗广告活动,Facebook应用程序和在线游戏中的所有客户都采用。这种快速采用使我们能够从我们建筑中固有的规模经济中受益。我们还通过我们工程团队的重要技术创新来降低潜在的成本。我很激动,我们能够以明显降低价格的形式对我们的客户节省这些成本 - 高于以前的85%。

我们降价的细节如下:

吞吐量成本:我们正在为读取请求和写入请求丢弃我们提供的吞吐量成本35%。我们还推出了一个保留的容量模型,如果保留一到三年的阅读和写入能力,请为客户提供折扣定价。对于客户保留三年的客户,吞吐量的价格将从今天的价格下降85%。对于客户保留一年的客户,吞吐量的价格将从今天的价格下降70%。有关保留容量的更多详细信息,请阅读DynamoDB常见问题解答。

索引存储成本我们将索引存储器的价格降低75%。例如,在我们的美国东部(弗吉尼亚北部)地区,数据存储的价格将从每月每GB 1美元降至0.25美元。所有数据项继续存储在固态驱动器(ssd)上,并自动跨多个不同的可用性区域复制,以提供非常高的持久性和可用性。

我们如何做到这一点?

DynamoDB运行在一个由ssd支持的存储服务器组成的舰队上,这些服务器是专门设计来支持DynamoDB的。这使我们能够调优我们的硬件和软件,以确保端到端服务的成本效益和高性能。在过去的一年里,我们一直在努力提高存储密度,降低底层硬件平台的成本。我们还通过优化存储引擎、复制系统和各种其他内部组件,对软件进行了重大改进。DynamoDB团队的任务是不断寻找降低成本的方法,我很高兴看到他们在一个大的方式交付。DynamoDB也从它的快速增长中受益,这使我们能够利用规模经济。就像我们的其他服务一样,由于我们已经取得了进步,从而降低了成本,我们很高兴将节省下来的成本转嫁给您。

何时适合使用DynamoDB?

经常有人问我:什么时候使用合适DynamoDB.而不是关系数据库?

我们多年前在设计Amazon.com电子商务平台时使用了关系数据库。由于亚马逊的业务从20世纪90年代中期的初创企业增长到全球多亿美元的业务,我们来实现关系数据库的缩放限制。在2004年假日购物季节的高度的许多高度超级中断可以追溯到扩展的关系数据库技术,超出其功能。作为回应,我们开始开发一系列存储和数据库技术,以解必威体育精装版app官网决Amazon.com电子商务平台的苛刻可扩展性和可靠性要求。这是NoSQL数据库的成因如发电机在亚马逊。从我们自己的设计和操作高度可用,高度可扩展的电子商务平台的经验,我们已经实现了关系数据库只应在应用程序真实需要复杂的查询,表加入和完整的关系数据库的事务功能时使用。在所有其他情况下,当不需要这种关系特征时,DynamoDB等NoSQL数据库服务提供更简单,更可用,更可扩展,最终的成本解决方案。

我们现在认为,在选择数据库时,没有单一数据库技术 - 甚至没有像Oracle,Microsoft SQL Server或MySQL等关系数据库一样广泛使用和流行 - 将满足所有数据库需求。NoSQL和关系数据库的组合可以更好地服务复杂应用程序的需求。如今,DynamoDB已经在亚马逊中广泛使用,并且使用了我们不需要oracle或mysql等关系数据库的权力和灵活性的每个地方。因此,我们已经看到了巨大的成本节省,大约为50%到90%,同时实现更高的可用性和可扩展性,因为我们的内部团队已将其许多工作负载移动到DynamoDB中。

那么,在构建新的应用程序并寻找正确的数据库选项时,应该做什么呢?我的建议如下:首先看DynamoDB.看看是否能满足你的需求。如果是这样,您将受益于它的可伸缩性、可用性、弹性、低成本和最小的操作开销。如果数据库工作负载的一个子集需要特定于关系数据库的特性,那么我建议将该部分工作负载转移到类似于Amazon RDS支持的关系数据库引擎中。最后,您可能会混合使用多种数据库选项,但是您将为应用程序中的正确任务使用正确的工具。

评论