从未排序的 table (ios) 中获取时,AWS dynamoDB 限制或分页
AWS dynamoDB limit or pagination, when fetching from unsorted table (ios)
我有一个未排序的 table(只有散列键,没有范围键)。
我必须从 table 中搜索并获取限制行。如果我用AWSDynamoDBScanExpression
的limit
属性。但是这个限制 属性 不起作用:当使用 limit
属性.
时,我得到的响应少于 count
个元素
我阅读了有关分页的信息 - exclusiveStartKey
和 LastEvaluatedKey
属性,但这对排序数据很有用。我有未分类的数据。我的数据必须是未排序的,并且 return 随机行在每个查询中都有限制。
粗略地说,我需要从 SQL 开始和限制类似物,但对于 dynamoDB。有可能的?我不明白如何使用 scan
操作来做到这一点。请帮我设置获取行的限制。
exclusiveStartKey
相当于 offset
。
DynamoDB API limit
是 API 限制 - 不是应用程序限制。
它不能确保您获得 <= limit
个元素。它只是强制对 return <= limit
元素发出一个请求,并通过 LastEvaluatedKey
设置下一个块
要随机化响应,您必须获取比您可能需要的更多的事件,并且在它们之间随机 select。
我有一个未排序的 table(只有散列键,没有范围键)。
我必须从 table 中搜索并获取限制行。如果我用AWSDynamoDBScanExpression
的limit
属性。但是这个限制 属性 不起作用:当使用 limit
属性.
count
个元素
我阅读了有关分页的信息 - exclusiveStartKey
和 LastEvaluatedKey
属性,但这对排序数据很有用。我有未分类的数据。我的数据必须是未排序的,并且 return 随机行在每个查询中都有限制。
粗略地说,我需要从 SQL 开始和限制类似物,但对于 dynamoDB。有可能的?我不明白如何使用 scan
操作来做到这一点。请帮我设置获取行的限制。
exclusiveStartKey
相当于 offset
。
DynamoDB API limit
是 API 限制 - 不是应用程序限制。
它不能确保您获得 <= limit
个元素。它只是强制对 return <= limit
元素发出一个请求,并通过 LastEvaluatedKey
要随机化响应,您必须获取比您可能需要的更多的事件,并且在它们之间随机 select。