AWS DynamoDB 改变了 Serverless 中的数据库游戏并继续这样做,因为其设计反复证明了其巨大的价值。那么什么是 AWS DynamoDB数据库?下文将将带您了解有关 DynamoDB 的所有信息,因此您可以放心,您正在以最佳方式使用该服务并获得所有好处。DynamoDB 是一个键值和文档数据库,在任何规模下都具有个位数毫秒的响应时间。这是一个完全托管的持久数据库,具有内置的安全性,备份和还原功能。您在 DynamoDB 中经常听到的一个关键词是它是一个 NoSQL 数据库,这只是意味着它不使用关系数据库中使用的传统 SQL 查询语言。
NoSQL 数据库的设计是通过将对象合并到一个公共集合或 NoSQL 数据库中的“无模式”表来降低表之间的复杂性。这些对象然后根据共同主题分组在一起,这将满足您设置的应用程序的共同查询条件。
DynamoDB 如何存储数据?
尽管该服务存在一定的刚性,但 DynamoDB 支持两种数据模型,允许略有不同的需求和一定的灵活性。
首先是键值存储,一个放大的分布式哈希表。表中的项目由键值对属性唯一标识,用于 GET、 SET、 UPDATE 和 DELETE。有两种类型的属性:主键(与项目 ID 的工作方式类似)和排序键(允许对项目进行排序)。
众所周知,无论大小如何,哈希表都是可靠、一致且快速的。但是,它们的缺点是一次只能检索一条记录。
为了解决这个问题,DynamoDB 还可以用作宽列存储,这意味着每一行在任何时候都可以有任意数量的列。这种 B 树数据结构和二级索引提供了查找项目的选项,同时还允许范围查询。它们可用于通过不同的主键和排序键引用和排序项目。同样重要的是要记住,DynamoDB是一个无模式的数据库,其中的项目可以具有不同的属性集。
什么是 DynamoDB 自动缩放以及它是如何工作的?
无服务器计算的最大好处之一是开发人员在涉及时间和预算消耗方面可以采取的不干涉方法,其中之一是确保容量永远不会受到限制或未充分利用。DynamoDB 会自动扩展以管理需求激增,而不会限制问题或响应缓慢,然后反过来减少,因此不会浪费资源。
该服务使用 AWS Application Auto Scaling 执行此操作,允许表使用您自己的扩展策略根据需要增加读取和写入容量。此策略指定您是否要扩展这些容量,以及最小和最大预置容量单位设置。它还包括目标利用率(消耗的预配置吞吐量的百分比),它与目标跟踪算法一起确保吞吐量与设置的目标匹配,无论工作负载如何。
DynamoDB 用于什么,何时使用?
DynamoDB 每天可以处理超过 10tr 个请求,并且可以支持每秒超过 2000 万个请求的峰值,使其成为 AWS 的顶级服务之一,适用于需要任何规模的低延迟数据访问的应用程序。
在黑色星期五销售开始后,该服务诞生于亚马逊自己对更高级数据库的需求。RDBMS功能(例如联接)在规模上很慢,并且他们发现其他功能(即严格的一致性功能)并非总是必需的,因此可以放宽。在这两种情况下,RDBMS 功能都增加了成本,而使用 NoSQL,CPU 和内存可以大大减少。
由于速度至关重要,从技术角度来看,我们需要更短的初始化步骤,同时仍然保持高安全性,DynamoDB 是完美的,因为访问是通过 HTTP 进行的,并且该服务使用 AWS IAM。这两个元素意味着您的数据库始终受到保护,并且无需复杂的网络配置即可快速验证和验证请求。
上述就是关于您需要了解的有关 AWS DynamoDB 的一切的全部内容,想了解更多关于数据库的信息,请继续关注中培伟业。