【发布时间】:2020-12-24 12:04:22
【问题描述】:
我正在设置 DynamoDB。我们的数据很简单,它有四个字段:
- 用户名
- UserShiftEndDate
- 用户项目代码
- 用户活动
理想情况下,我们应该根据UserShiftEndDate 查询用户。我们数据中的所有字段/组合都不是唯一的。我可以为每条记录添加一个自动生成的 ID。
请根据UserShiftEndDate建议我选择哪些字段作为分区键和排序键或 GSI 以获得最佳查询响应时间。
例如,考虑下表:
| UserName | UserShiftEndDate | UserProjectCode | UserActivities |
|---|---|---|---|
| UserA | 12/13/2020 | 45 | monitoring |
| UserB | 12/14/2020 | 47 | testing |
| Userc | 12/17/2020 | 45 | monitoring |
| UserB | 12/14/2020 | 45 | testing |
| UserC | 12/15/2020 | 47 | managing |
我的查询应该将日期作为输入,并返回所有shiftEndDate 晚于或等于给定日期的用户数据。
例如,如果输入 12/14/2020,则查询应返回除第 1 行之外的所有用户数据。
我们计划以即时形式存储日期。为了简单起见,我在这里提到它作为日期
【问题讨论】:
-
嘿NewBee,能否请您给我们更多您想查询的信息,也许有一个例子?您是要查找单个用户还是同时具有轮班结束的所有用户? Stackoverflow now has table support,它应该可以帮助您在这里创建一个“演示”表。
-
@Jens,感谢您的回复,我编辑了我的问题。我希望这个问题现在更清楚了。
标签: amazon-web-services amazon-dynamodb dynamodb-queries amazon-dynamodb-index