Я пытаюсь запросить DynamodB, где мои фактические данные разделены на 3 части (на основе хэш-функции). Я хотел бы получить результаты со всех разделов для соответствующего первичного ключа, а затем разбить их на страницы. Я не уверен, возможно ли это.
Я знаю, как извлечь записи из одного раздела. Для этого я использую приведенный ниже код, и он извлекает данные только из этого раздела, но не из других разделов, даже если эти разделы могут иметь одинаковые ключи
Map<String, AttributeValue> eav = new HashMap<String, AttributeValue>();
eav.put(":partitionKey", new AttributeValue().withS(hashKey));
DynamoDBQueryExpression<MyClazz> queryExpression = new DynamoDBQueryExpression<MyClazz>()
.withKeyConditionExpression("partitionKey = :partitionKey")
.withExpressionAttributeValues(eav)
.withLimit(limit)
.withExclusiveStartKey(lastEvaluatedKey);
Но это приведет к получению данных из первого раздела. Я хочу получить данные из других оставшихся разделов в одном QueryResultPage, чтобы я мог разбивать их на страницы.
Возможно ли это сделать?
Я имею в виду, что ниже условия выполняются вместе, так что я получаю одну QueryResultPage
("key = :partition1 or key = :partition2 or key = :partition3")