Amazon DynamoDB

Amazon DynamoDB 是一项快速灵活的 NoSQL 数据库服务,适合所有需要一致性且延迟低于 10 毫秒的任意规模的应用程序。它是完全托管的云数据库,支持文档和键值存储模型。灵活的数据模型和可靠的性能使其成为移动、Web、游戏、广告技术、物联网和众多其他应用的不二之选

很多互联网应用业务模型比较简单,但是并发量和数据量巨大,应对这种情况,Amazon 开发了 DynamoDB,并于 2012 年初发布 DynamoDB 的云服务。其实 Dynamo 的论文早在 2007 年就在 SOSP 发表,这篇有历史意义的论文直接引爆了 NoSQL 运动,让大家觉得原来数据库还能这么搞。

Dynamo 对外主打的特点是水平扩展能力和通过多副本实现(3副本)的高可用,另外在 API 的设计上可以支持最终一致性读取和强一致性读取,最终一致性读取能提升读的吞吐量。

但是请注意,DynamoDB 虽然有强一致读,但是这里的强一致性并不是传统我们在数据库里说的 ACID 的 C,而且由于没有时序的概念(只有 vector clock),对于冲突的处理只能交给客户端,Dynamo 并不支持事务。不过对于一些特定的业务场景来说,扩展能力和可用性是最重要的,不仅仅是容量,还有集群的吞吐。

链接