DynamoDB:为每个用户检索 n 个最近的项目

DynamoDB: Retrieving the n most recent items for each user

我有一个 DynamoDB table 存储有关图像的信息。哈希键是标识每个图像的唯一字符串。还有两个全局二级索引:用户名创建日期。用户名属于创建图像的用户。

对于每个用户,我希望能够向他们展示他们最近的 10 张图片。我如何通过首先识别与特定用户名关联的图像,然后通过对创建日期进行排序来选择其中的 10 个来从 table 中检索项目?

为了执行此查询,您需要一个散列键为 userId 且排序键为 creationDate 的 GSI。

然后您可以查询特定的用户 ID,将 ScanIndexForward to false, and set Limit 设置为 n