DynamoDB的数据是存储在SSD(Solid State Drive,固态硬盘),这样可在预测的低延迟响应时间之内,存储和访问任何规模的数据,另外SSD 还具有很高的 I/O 性能,能够处理大规模请求工作负载。我们来看看DynamoDB的不适合的使用场景:如果需要存储大量数据,但这些数据的访问频率很低,则 DynamoDB 可能不太适合。
DynamoDb的数据模型是无模式的,可认为是简单的key-value模式。不过特殊之处在于它的主键可以是单属性的哈希键或复合的哈希-范围键。例如,单属性的哈希主键可以是“UserID”,这使您能够快速读取和写入与特定用户 ID 相关联的项目的数据。
复合的哈希-范围键作为一个哈希键元素和一个范围键元素来索引。这个多部分键可保持第一个元素值和第二个元素值之间的层次结构。例如,复合的哈希-范围键可能是“UserID”(哈希)和“时间戳”(范围)的组合。通过保持哈希键元素的恒定,您可以在范围键元素中进行搜索以检索项目。这样您就使用 Query API 在一系列时间戳中检索单个 UserID 的所有项目等等,这也是DynamoDB作为NoSQL来讲又非常像SQL的原因,可以同时达到SQL和NoSQL两者的优点,就看你怎么设计你的数据库了。
现在DynamoDB已经替换了SimpleDB的位置。如果你了解SImpleDB的话,可以看下边关于两者的对比:
1. 因为Amazon SimpleDB 自动索引所有项目属性,因而支持灵活查询,想SQL一样,但会影响性能和可扩展性。
2. SImpleDB是限制表的大小为10G,DynamoDB是限制项目的总大小(包括属性名称和属性值)不得超过 64KB,但不限制表的大小。
3. Amazon DynamoDB 支持三种标量数据类型:数字、字符串和二进制。SimpleDB只支持字符串。
4. DynamoDB的属性值不支持NULL或者空的字符串。
原文:http://blog.csdn.net/hongchangfirst/article/details/25715029
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
Amazon DynamoDB简介(一)