Amazon DynamoDB简介

Amazon DynamoDB简介一 DynamoDB 的数据是存储在 SSD 固态硬盘 固态硬盘 这样可以在预测的低延迟响应时间之内 存储和访问任何规模的数据 另外 SSD 还具有很高的 I O 性能 能够处理大规模请求工作负载我们来看看 DynamoDB 的不适合的使用场景 如果需要存储大量数据 但这些数据的访问频率很低 但 DynamoDB 可能不太适合 DynamoDb 的数据模型是无模式的 可认为是简单的键值模式不过特殊的处理在它的主键

一、DynamoDB的数据是存储在SSD(固态硬盘,固态硬盘),这样可以在预测的低延迟响应时间之内,存储和访问任何规模的数据,另外SSD还具有很高的I / O性能,能够处理大规模请求工作负载我们来看看DynamoDB的不适合的使用场景:如果需要存储大量数据,但这些数据的访问频率很低,但DynamoDB可能不太适合。


DynamoDb的数据模型是无模式的,可认为是简单的键值模式不过特殊的处理在它的主键可以是单属性的哈希键或复合的哈希 – 。范围键例如,单属性的哈希主键可以是“用户ID”,这使您能够快速读取和写入与特定用户ID相关联的项目的数据。

复合的哈希 – 。范围键作为一个哈希键元素和一个范围键元素来索引这个多部分键可保持第一个元素值和第二个元素值之间的层次结构例如,复合的哈希 – 范围键可能是“UserID”(哈希)和“时间戳”(范围)的组合。通过保持哈希键元素的恒定,您可以在范围键元素中进行搜索以检索项目。这样您就使用Query API在一系列时间戳中检索单个用户ID的所有项目等等,这也是DynamoDB作为NoSQL的来讲又非常像SQL的原因,可以同时达到SQL和NoSQL的两个人的优点,就看你怎么设计你的数据库了。


现在DynamoDB已经替换了的SimpleDB中的位置如果你了解的SimpleDB中的话,可以看下边关于两者的对比:

1.因为Amazon SimpleDB自动索引所有项目属性,因而支持灵活查询,想SQL一样,但会影响性能和可扩展性。

2. SImpleDB是限制表的大小为10G,DynamoDB是限制项目的总大小(包括属性名称和属性值)不得超过64KB,但不限制表的大小。

3. Amazon DynamoDB支持三种标准数据类型:数字,字符串和二进制.SimpleDB只支持字符串。

4. DynamoDB的属性值不支持NULL或者空的字符串。


二,在DynamoDB中,数据库是表的集合,表是项目的集合,项目是属性的集合属性约是名称 – 值对。价值可以是单值属性也可以是多值属性(集合)。一个项目的大小不能超过64KB。理解了这个你就入门了。 


另外,DynamoDB为了支持更为丰富的查询,提出了二级索引的思想,可以在表中创建一个或多个二级索引,并对这些索引发出Query请求。有两种类型的二级索引:


本地二级索引(本地二级索引) – 与表拥有相同的哈希键,但范围键却不同的索引。本地二级索引之所以称为“本地”,这是因为它的每个分区的范围都限制在哈希键相同的表分区内。
全局二级索引(Global Secondary Indexes) – 哈希键或哈希 – 范围键可与表中的这些键不同的索引。全局二级索引之所以称为“全局”,这是因为该索引上的查询可跨过所有分区,涵盖表中的所有项目。 



由于具有相同主键哈希值的项目在DynamoDB中共享同一分区,所以“本地”二级索引只包含存储在同一位置(相同分区)的项目。因此,LSI可用于查询具有相同的主键哈希值,但范围键不同的项目。

这里需要指出的是,与表相关的所有GSI都必须在表创建时指定.GSI索引不要求索引属性具有唯一性.GSI支持最终一致性。在表中插入或更新项目时,GSI不会同步更新。


有一些限制需要注意,亚马逊DynamoDB中所有项目集合的大小不得超过10 GB。对任何非重复哈希键值,表中项目大小总和加上该表中本地二级索引所有项目大小总和不得超过10 GB 。



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226281.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午11:55
下一篇 2026年3月16日 下午11:55


相关推荐

  • mysql创建视图sql语句_MySQL 视图

    mysql创建视图sql语句_MySQL 视图视图是指计算机数据库中的视图,是一个虚拟表,其内容由查询定义。视图不直接存储数据,不知真正的表。关系型数据库中的数据是由一张一张的二维关系表所组成,简单的单表查询只需要遍历一个表,而复杂的多表查询需要将多个表连接起来进行查询任务。对于复杂的查询事件,每次查询需要输入SQL命令,重复且低效,视图可以大大降低查询的重复性。

    2025年8月1日
    4
  • java8中的Collectors.groupingBy用法「建议收藏」

    java8中的Collectors.groupingBy用法「建议收藏」Collectors.groupingBy根据一个或多个属性对集合中的项目进行分组数据准备:publicProduct(Longid,Integernum,BigDecimalprice,Stringname,Stringcategory){ this.id=id; this.num=num; this.price=price; this.name=…

    2022年4月19日
    62
  • 交互神器 Facebook Origami

    交互神器 Facebook Origami

    2022年3月3日
    43
  • 检测死链的工具[通俗易懂]

    检测死链的工具[通俗易懂]
    XenuLinkSleuth:一种很小很强大的检查网站死链接的工具
    在测试网站的过程中,常常需要检查网站里的所有链接是否正常,如果一个个去点击各个页面来测试,不仅让测试人员感到非常枯燥,也浪费时间。举例来说,如果一个门户网站,首页有100个链接,每个二级页面又有50个链接,那么这样简单一算就是5000次点击,一个测试人员每2秒检查一个页面,要花10000秒,约2.8个小时,还不能100%保证所有的页面都check到位,多少会有点担心:是不是有漏掉的。
    这里借用xenul

    2022年7月23日
    9
  • pmp-DIKW模型

    pmp-DIKW模型项目管理数据与信息 DIKW 模型在 PMP 中 有一块内容是 项目管理数据与信息 工作绩效数据 WorkPerforma 工作绩效信息 WorkPerforma 工作绩效报告 WorkPerforma 这三个概念一直很容易混淆 要想清楚地理解三者的含义和联系 在这里需要借助一项知识管理模型 DIKW 模型 通过 DIKW 模型更好地理解什么是项目管理数据与信息 DIKW 模型是由美国诗人 ThomasS Eliot 提出的 该

    2026年3月16日
    3
  • html左右循环滚动代码,不间断循环滚动效果的实例代码(必看篇)

    html左右循环滚动代码,不间断循环滚动效果的实例代码(必看篇)滚动测试/***@paraobj目标对象如:demo,deml1,demo2中的”demo”可任意,只要不重复**@paraspeed滚动速度越大越慢**@paradirection滚动方向包括:left,right,down,up**@paraobjWidth总可见区域宽度**@paraobjHeight总可见区域高度**@parafilePath存…

    2022年7月18日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号