DynamoDB: получение n самых последних элементов для каждого пользователя

У меня есть DynamoDB таблица, в которой хранится информация об изображениях. Хэш-ключ - это уникальная строка, которая идентифицирует каждое изображение. Есть также два глобальных вторичных индикатора: имя пользователя и дата создания. Имя пользователя принадлежит пользователю, создавшему изображение.

Я хочу показать каждому пользователю 10 последних изображений. Как я могу получить элементы из таблицы, сначала определив изображения, связанные с конкретным именем пользователя, а затем выбрав 10 из них, отсортировав даты создания?


person AJ Z.    schedule 26.06.2018    source источник
comment
Если ответ решил вашу проблему, вы можете принять его как ответ, установив большой флажок. Таким образом, вы можете сообщить будущим StackOverflowers, что это может сработать и для них.   -  person Matthew Pope    schedule 22.11.2018


Ответы (1)


Для выполнения этого запроса вам понадобится GSI с хеш-ключом userId и ключом сортировки creationDate.

Затем вы можете выполнить запрос для определенного идентификатора пользователя, установив _ 3_ равным false и установите от _ 5_ до n.

person Matthew Pope    schedule 05.08.2018