DynamoDB 概述学习手册

收录于 2023-04-20 00:10:05 · English · بالعربية · Español · हिंदीName · 日本語 · Русский язык · 中文繁體

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

DynamoDB 与 RDBMS

DynamoDB 使用 NoSQL 模型,这意味着它使用非关系系统。下表突出显示了 DynamoDB 和 RDBMS 之间的差异-
常见任务 关系型数据库 DynamoDB
连接到源 它使用持久连接和 SQL 命令。 它使用 HTTP 请求和 API 操作
创建表格 它的基本结构是表格,必须定义。 它只使用主键,在创建时没有模式。它使用各种数据源。
获取表格信息 所有表格信息仍可访问 只显示主键。
加载表数据 它使用由列组成的行。 在表格中,它使用由属性组成的项目
读取表格数据 它使用 SELECT 语句和过滤语句。 它使用 GetItem、Query 和 Scan。
管理索引 它使用通过 SQL 语句创建的标准索引。表更改时会自动对其进行修改。 它使用二级索引来实现相同的功能。它需要规范(分区键和排序键)。
修改表格数据 它使用 UPDATE 语句。 它使用 UpdateItem 操作。
删除表格数据 它使用 DELETE 语句。 它使用 DeleteItem 操作。
删除表格 它使用 DROP TABLE 语句。 它使用 DeleteTable 操作。

优势

DynamoDB 的两个主要优势是可扩展性和灵活性。它不强制使用特定的数据源和结构,允许用户以统一的方式处理几乎任何事情。
它的设计还支持从较轻的任务和操作到要求苛刻的企业功能的广泛使用。它还允许简单地使用多种语言:Ruby、Java、Python、C#、Erlang、PHP 和 Perl。

限制

DynamoDB 确实存在某些限制,但是,这些限制并不一定会造成巨大的问题或阻碍稳固的开发。
您可以从以下几点来回顾它们-
容量单位大小-读取容量单位是每秒对不超过 4KB 的项目进行的单一一致读取。对于不大于 1KB 的项目,写入容量单位是每秒一次写入。 预配置吞吐量最小值/最大值-所有表和全局二级索引至少有一个读取和一个写入容量单位。最大值取决于地区。在美国,40K 读写仍然是每表的上限(每个账户 80K),其他地区的上限是每表 10K,账户上限为 20K。 预配置吞吐量增加和减少-您可以根据需要经常增加它,但减少仍然限制在每桌每天不超过四次。 每个账户的表大小和数量-表大小没有限制,但除非您要求更高的上限,否则账户有 256 个表的限制。 每个表的二级索引-允许五个本地索引和五个全局索引。 每个表的投影二级索引属性-DynamoDB 允许 20 个属性。 分区键长度和值-它们的最小长度为 1 个字节,最大为 2048 个字节,但是,DynamoDB 对值没有限制。 Sort Key Length and Values-其最小长度为 1 个字节,最大为 1024 个字节,除非其表使用本地二级索引,否则对值没有限制。 表和二级索引名称-名称的长度必须至少为 3 个字符,最多为 255 个。它们使用以下字符:AZ、az、0-9、"_ "、"-"和"."。 属性名称-最少一个字符,最多 64KB,键和某些属性除外。 保留字-DynamoDB 不会阻止使用保留字作为名称。 表达式长度-表达式字符串有 4KB 的限制。属性表达式有 255 字节的限制。表达式的替换变量有 2MB 的限制。