技术开发 频道

揭秘Amazon DynamoDB:NoSQL融合云服务

        【IT168 评论】云计算服务提供商亚马逊于2012年1月18日正式推出一款NoSQL数据库——DynamoDB,吸引了很多关注的目光。DynamoDB的发布为互联网的大数据问题提供了一种快速、可靠且低成本的解决方案,扩展了亚马逊网络服务(Amazon Web Services)。那么,DynamoDB是什么?它有哪些特点呢?本文将会进行介绍。

  DynamoDB是一个专为互联网规模的应用设计的NoSQL数据库,它是亚马逊上一代NoSQL数据库Dynamo及其基础原理的延续,是NoSQL与云服务渐趋完美的结合。通过DynamoDB,开发者只需要花费较低成本租用一定量的空间,便可以开始推广自己的应用,随着推广的深入,可以根据具体规模无限量的扩展容量。DynamoDB则会在后台将特定数据表的数据和流量分布到各个服务器上,能够保证客户端平均延迟在10毫秒以内。Amazon DynamoDB将数据保存在固态硬盘(SSD),并且进行跨分区的同步复制,以保证其高可靠性和数据持久性。

  DynamoDB是亚马逊在NoSQL数据库和云服务领域15年的经验总结。在此之前,亚马逊曾有两款NoSQL数据库与云服务结合的产品,分别是Dynamo和SimpleDB。它们有各自的优缺点:Dynamo虽然能够满足可靠性、性能和扩展性的需求,但是它却没有降低运维大型数据库系统的复杂性;SimpleDB虽然易于管理,但是在可扩展性、性能的可预测性和最终一致性等方面存在局限。DynamoDB正是将这二者优点进行结合的解决方案,即同时具有Dynamo的高可扩展性和可预测的高性能,以及SimpleDB易于管理的服务性和比键值存储更丰富的基于表的数据模型。

  作为亚马逊网络服务(Amazon Web Services)最新的产品,DynamoDB具有以下特点值得关注:

  1.快速。DynamoDB的低延迟有以下几方面原因:首先,DynamoDB基于固态硬盘(SSD),加快数据存取速度。其次,DynamoDB不会为所有属性建立索引,使读写操作的延迟降低。平。最后,DynamoDB的延迟是可以预测的,是由数据存储的分布式特征和请求路由算法决定的。

  2.便利。DynamoDB是完全托管的数据库,开发者不必因为数据库分区、扩展等繁琐操作而头疼,可以完全从硬件和软件的配置中解脱出来,由亚马逊提供云服务解决数据库的从装配到扩展的一系列问题。

  3.低成本。根据DynamoDB的官方定价,存储数据的费用为每GB每月1美元。写请求每10个单位容量每小时0.01美元,读操作为每50个单位容量每小时0.01美元,一个读(或写)容量单位等于:每秒读(或写)一个不超过1KB的数据项。还可以从免费级别开始使用Amazon DynamoDB,每月可以免费提供40,000,000的请求。相对于制备一套软硬件系统,云服务的成本要低很多,对于创业者十分适用。

  4.灵活。DynamoDB没有特定的数据模型或一致性模型,因此客户可以选择任意的访问方式。在模型较为简单的情况下,开发者可以选择更强的一致性模型来访问数据库,但需要牺牲一定的性能和可用性。他们还可以利用DynamoDB提供的原子的递增/递减计数器的功能。

  除此之外,DynamoDB还具有持久性和高可用性、高性能及其可预测性等特点。亚马逊CTO Werner Vogels表示Amazon Dynamo是多年积累经验所造就的一个创新的数据库服务。当然,DynamoDB才刚刚推出,具体的功能和特性还待进一步的验证。

0
相关文章