我有一个未排序的表(只有散列键,没有范围键)。
我必须从表中搜索并获取限制行。如果我使用limit
的{{1}}属性。但是这个限制属性不起作用:使用AWSDynamoDBScanExpression
属性时,我得到的响应少于count
个元素。
我读到了分页 - limit
和exclusiveStartKey
属性,但它对排序数据很有用。我有未分类的数据。并且我的数据必须是未排序的,并在每个查询中返回带有限制的随机行。
粗略地说,我需要从SQL开始并限制模拟,但对于dynamoDB。有可能的?我不明白如何使用LastEvaluatedKey
操作执行此操作。请帮我设置获取行的限制。
答案 0 :(得分:2)
exclusiveStartKey
相当于offset
。
DynamoDB API limit
是API限制 - 不是应用程序限制。
它无法确保您获得<= limit
元素。它只强制单个请求返回<= limit
元素并通过LastEvaluatedKey
设置下一个块
要随机化响应,您必须获取比您可能需要的更多事件,并在它们之间随机选择。