【发布时间】:2022-01-10 18:36:09
【问题描述】:
我正在尝试查询 DynamoDB 并在 SQL 中获得类似于 select distinct(address) from ... 的结果。
我知道 DynamoDB 是一个面向文档的数据库,也许我需要更改数据结构。
我试图避免先获取所有数据并稍后过滤。
我的数据如下所示:
| Attribute | Datatype |
|---|---|
| ID | String |
| Var1 | Map |
| VarN | Map |
| Address | String |
所以我想获取整个表中的不同地址。
最好的方法是什么?
【问题讨论】:
-
如果您经常需要此查询,那么您可能需要引入一个包含(唯一)地址、ID 和计数的附加表 AddressCount。在原始表上配置 DynamoDB Streams 并使用 Lambda 函数更新 AddressCount 表,以便在原始表上插入/修改/删除项目时自动插入、递增/递减计数、删除。然后对该表进行简单扫描,至少会为您提供唯一地址。
-
我将每周执行一次查询,也许两次。我认为这并不多,但是地址的数量每天都在增加。所以我正在考虑你的方法,谢谢
标签: amazon-web-services amazon-dynamodb dynamodb-queries aws-dynamodb