Я использую v2 aws DynamoDV Java sdk и хочу ограничить количество результатов, возвращаемых при запросе с помощью ключа раздела (фрагмент кода ниже), но приведенный ниже код возвращает полный набор элементов назад.
Документы java говорят: «Примечание. Ограничение относится не к количеству возвращаемых элементов, а к количеству элементов, которые база данных должна оценивать при выполнении запроса. Используйте ограничение вместе с Page.lastEvaluatedKey () и exclusiveStartKey в последующих вызовах запроса, чтобы оценить количество элементов ограничения на вызов ". который, по-видимому, поддерживает наблюдаемое мной поведение.
Однако Как установить предел совпадающих элементов, возвращаемых DynamoDB с помощью Java? имеет решение с использованием метода .withMaxResultSize в более ранняя версия sdk.
Имеет ли java Dynamodb v2 skd что-то подобное, или мне придется ограничивать набор результатов вручную? Код выглядит так:
QueryConditional conditional = QueryConditional.keyEqualTo(
Key.builder()
.partitionValue(jobId)
.build()
);
QueryEnhancedRequest request = QueryEnhancedRequest.builder()
.queryConditional(conditional)
.limit(1)
.scanIndexForward(false)
.build();