【发布时间】:2018-09-03 08:20:08
【问题描述】:
给定一个带有分区键 id 和排序键 date_epoch 的 DynamoDB 表。
我会有这样的物品:
id | date_epoch
-----------------
1 | 1535961978
2 | 1535961996
1 | 1535962033
2 | 1535962055
3 | 1535962064
5 | 1535962073
1 | 1535962080
2 | 1535962085
对于每个给定的唯一 id,我只想要它最近的项目。所以从这个样本数据中,我只想要以下结果:
id | date_epoch
-----------------
3 | 1535962064
5 | 1535962073
1 | 1535962080
2 | 1535962085
我可以用非常难看的代码弄清楚如何做到这一点。我得到了每个唯一的id,然后迭代了每个人id,只得到了最新的项目.withScanIndexForward(false)和.withMaxResultSize(1)(如this example和this example所示),但它似乎在那里必须是更好的方法来做到这一点。
我们可以设置一个扫描过滤器来限制最大项目或其他我没有想到的东西吗?
【问题讨论】:
标签: java amazon-dynamodb aws-sdk aws-java-sdk