📜  DynamoDB-概述

📅  最后修改于: 2020-11-28 13:54:01             🧑  作者: Mango


DynamoDB允许用户创建能够存储和检索任何数量的数据并提供任何流量的数据库。它自动在服务器上分发数据和流量,以动态管理每个客户的请求,并保持快速的性能。

DynamoDB与RDBMS

DynamoDB使用NoSQL模型,这意味着它使用了非关系系统。下表重点介绍了DynamoDB和RDBMS之间的区别-

Common Tasks RDBMS DynamoDB
Connect to the Source It uses a persistent connection and SQL commands. It uses HTTP requests and API operations
Create a Table Its fundamental structures are tables, and must be defined. It only uses primary keys, and no schema on creation. It uses various data sources.
Get Table Info All table info remains accessible Only primary keys are revealed.
Load Table Data It uses rows made of columns. In tables, it uses items made of attributes
Read Table Data It uses SELECT statements and filtering statements. It uses GetItem, Query, and Scan.
Manage Indexes It uses standard indexes created through SQL statements. Modifications to it occur automatically on table changes. It uses a secondary index to achieve the same function. It requires specifications (partition key and sort key).
Modify Table Data It uses an UPDATE statement. It uses an UpdateItem operation.
Delete Table Data It uses a DELETE statement. It uses a DeleteItem operation.
Delete a Table It uses a DROP TABLE statement. It uses a DeleteTable operation.

好处

DynamoDB的两个主要优点是可伸缩性和灵活性。它不会强制使用特定的数据源和结构,而是允许用户以统一的方式使用几乎所有内容。

它的设计还支持从轻量级任务和操作到苛刻的企业功能的广泛使用。它还允许简单地使用多种语言:Ruby,Java, Python,C#,Erlang,PHP和Perl。

局限性

DynamoDB确实受到某些限制,但是,这些限制并不一定会带来巨大的问题或阻碍可靠的开发。

您可以从以下几点进行审查-

  • 容量单位大小-对于不大于4KB的项目,读取容量单位是每秒单次一致读取。对于不大于1KB的项目,写入容量单位是每秒单次写入。

  • 预配置的吞吐量最小值/最大值-所有表和全局二级索引的最小单位为一个读取和一个写入容量单位。最大值取决于区域。在美国,每张表的上限为40K(每个帐户80K),其他地区的每张表的上限为10K,帐户上限为20000。

  • 预配置的吞吐量增加和减少-您可以根据需要增加频率,但是减少的幅度限制为每天每桌不超过四次。

  • 表大小和每个帐户的数量-表大小没有限制,但是帐户有256个表限制,除非您请求更高的上限。

  • 每表的二级索引-允许五个局部索引和五个全局索引

  • 每个表的预计二级索引属性-DynamoDB允许20个属性。

  • 分区键长度和值-它们的最小长度为1个字节,最大长度为2048个字节,但是,DynamoDB对值没有限制。

  • 排序键长度和值-其最小长度为1个字节,最大长度为1024个字节,对值没有限制,除非其表使用本地二级索引。

  • 表和二级索引名称-名称必须符合至少3个字符的长度,最多255个。它们使用以下字符:AZ,az,0-9,“ _”,“-”和“。” 。

  • 属性名称-除键和某些属性外,最少保留一个字符,最多保留64KB。

  • 保留字-DynamoDB不会阻止将保留字用作名称。

  • 表达式长度-表达式字符串的限制为4KB。属性表达式的上限为255个字节。表达式的替代变量限制为2MB。