Я использую DynamoDB для хранения записей для веб-приложения.
Каждая запись имеет uuid (ключ раздела) и метку времени unix (ключ сортировки). Как я могу получить все записи, отсортированные по новейшей отметке времени?
Использование сканирования обходится дорого, и использование отправки ключа раздела, очевидно, необходимо при использовании запроса
Я получаю следующую ошибку с кодом, который у меня естьпопробовал уже:
Query condition missed key schema element: uuid
Мой сервис:
serverCallChats() {
return new Promise(async (resolve, reject) => {
const _dynamoDB = new AWS.DynamoDB.DocumentClient();
const daysBack = (days) => {
const date = new Date();
date.setDate(date.getDate() - days);
return date.getTime();
};
const params = {
TableName: 'chat-channel',
KeyConditionExpression: '#sortKeyName < :days',
ExpressionAttributeNames: {
'#sortKeyName': 'timestamp'
},
ExpressionAttributeValues: {
':days': daysBack(7)
}
};