DynamoDB允许用户创建能够存储和检索任何数量的数据的数据库,并且在处理任何数量的流量时会派上用场。它通过自动在服务器上分发数据和流量来动态管理每个客户的请求并提供高性能。它是一种完全托管的NoSQL数据库服务,具有快速,可预测的性能以及无缝扩展的能力。由于用户不必担心硬件配置,软件打补丁或集群扩展的麻烦,因此可以减轻用户操作和扩展分布式数据库的管理负担。通过在REST上提供加密,它还消除了保护敏感数据所涉及的操作负担和复杂性。
DynamoDB与RDBMS
下表为我们提供了常规关系数据库管理系统与AWS DynamoDB之间的核心区别:
Operations | DynamoDB | RDBMS |
---|---|---|
Source connection | It uses HTTP requests and API operations. | It uses a persistent connection and SQL commands. |
Create Table | It mainly requires the Primary key and no schema on creation and can have various data sources. | It requires a well defined table for it’s operations. |
Getting Table Information | Only Primary keys are revealed. | All data inside the table is acessiable. |
Loading Table Data | In tables, it uses items made of attributes. | It uses rows made of columns. |
Reading Table Data | It uses GetItem, Query, and Scan | It uses SELECT statements and filtering statements. |
Managing Indexes | It uses a secondary index to achieve the same function. It requires specifications (partition key and sort key). | Standard Indexes created by SQL is used. |
Modifing Table Data | It uses an UpdateItem operation. | It uses an UPDATE statement. |
Deleting Table Data | It uses a DeleteItem operation. | It uses a DELETE statement. |
Deleting Table | It uses a DeleteTable operation. | It uses a DROP TABLE statement. |
DynamoDB的优势–
选择Dynamodb的主要优点如下:
- 它具有快速和可预测的性能。
- 它具有高度的可扩展性。
- 它减轻了管理负担的操作和扩展。
- 它在REST上提供加密以保护数据。
- 它的可扩展性非常灵活。
- AWS管理控制台可用于监视资源利用率和性能指标。
- 它提供按需备份。
- 它为您的Amazon DynamoDB表启用了时间点恢复。时间点恢复有助于保护您的表免遭意外的写或删除操作。使用时间点恢复,您可以将该表恢复到过去35天中的任何时间点。
- 它可以是高度自动化的。
DynamoDB的局限性–
以下列表为我们提供了Amazon DynamoDB的局限性:
- 它具有每秒4kB的低读取容量单位和每秒1KB的写入容量单位。
- 所有表和全局二级索引必须至少具有一个读取和一个写入容量单位。
- 表的大小没有限制,但是帐户的表限制为256,除非您请求更高的上限。
- 每个表仅允许五个本地和五个全局二级索引。
- DynamoDB不会阻止使用保留字作为名称。
- 分区键长度和值的最小长度为1个字节,最大长度为2048个字节,但是,DynamoDB对值没有限制。