Извлечение n последних записей из Dynamo DB

#java #amazon-dynamodb

#java #amazon-dynamodb

Вопрос:

У меня есть база данных dynamo с GSI в GSI_ID и ключом диапазона в атрибуте lastUpdatedId. Я хочу, чтобы отображалась только 1 задача, которая является последней на основе соответствия. Это выражение, которое я использую

 DynamoDBQueryExpression<Record> exp =
                new DynamoDBQueryExpression<GoldDataRecord>()
                        .withIndexName(GSI_ID)
                        .withKeyConditionExpression(KEY_EXP)
                        .withExpressionAttributeValues(attrValues)
                        .withLimit(1)
                        // to get the results in descending order of last updated date giving the latest data first
                        .withScanIndexForward(false)
                        .withSelect(Select.ALL_ATTRIBUTES)
                        .withConsistentRead(false);

private DynamoDBMapper dynamoDBMapper;
PaginatedQueryList<Record> res = dynamoDBMapper.query(Record.class, exp);
 

Но он извлекает все записи, соответствующие GSI. Что я здесь делаю не так?

Комментарии:

1. Пожалуйста, поделитесь фрагментом кода после применения exp к строке, в которой говорится, что извлекается более 1 записи

2. DynamoDBMapper. запрос (Record.class , выражение);

3. Как указано в комментарии выше, вам нужно будет знать, как вы работаете над res объектом. — «строка, в которой говорится, что извлекается более 1 записи». Только тогда мы сможем направлять.