AWS DynamoDB – 从表中读取数据
AWS DynamoDB 是一个 NoSQL 托管数据库,用于存储半结构化数据,即键值和文档数据。它以项目的形式存储数据。一个项目由属性组成。在 DynamoDB 中创建表时,它只需要一个主键来区分项目,并且不需要定义模式。每个项目可以有不同数量的属性。
Example 1:
{
"ArticleID": 1,
"NameofArticle": "DynamoDB"
}
Example 2:
{
"ArticleID": 3,
"NameofArticle": "Cloudwatch",
"Service": "AWS"
}
要从 DynamoDB 表中读取数据,有 3 种方法:
- get-item – 这用于 AWS 命令行界面 (CLI)。要检索项目,您必须指定要检索的表名和键。
- 查询- 可以通过对表进行查询来检索表中的项目。查询时,它默认包含主键作为搜索过滤器。可以添加更多属性来优化搜索。
- 扫描- 类似于查询。唯一的区别是默认情况下它没有任何用于搜索的属性。要搜索一个项目,您必须定义一个属性及其值才能找到该项目。
执行:
- 创建表和项:要从表中读取数据,表和表中的数据应该存在。在此示例中,已经创建了一个名为geeksforgeeks的表,其中包含一些项目。见下图:
从表中读取数据:
要通过 Amazon Console 读取数据,我们有两种方法。
- 扫描方法:要使用扫描方法,请从下拉列表中选择扫描。然后在过滤器中添加一个属性。在此示例中,我们需要 Rohan Chopra 撰写的所有文章。因此,添加属性WrittenBy作为过滤器并将值输入为“Rohan Chopra”。单击开始搜索以获取结果。见下图:
- 查询方法 –要使用查询方法,请从下拉列表中选择查询。默认情况下,我们将分区键作为一个搜索过滤器。我们可以在过滤器中添加更多属性来优化我们的搜索。在下图中,我们看到分区键ArticleID已经存在。但我们还添加了一个搜索过滤器,即服务。
下图是无效查询。查询包含ArticleID=2和Service='AWS '。
我们看到项目 ArticleID=2 没有任何属性作为服务。因此,没有找到任何记录。