Предположим, у меня были таблицы пользователей и изображений в DynamoDB.Можете ли вы запросить диапазон в GSI в DynamoDB
users table
userId (hash) name email
images table
imagesId (hash) userId filename
Как я должен настроить диапазон или GSI, если я хочу, чтобы получить все изображения для одного USERID? Если таблица изображений представляет собой составной ключ с идентификатором изображения (hash) и userId (диапазон) и поиск по диапазону (если это возможно)? или должен userId (быть GSI) и запрос просто быть userId?
Только для записи вы также можете сохранять изображения в одной таблице 'users' в виде списка карт. Вы сохранили бы себе запрос и глобальный индекс, так как вы могли бы получить изображения только с запросом «GetItem» (это также намного дешевле). –
@MatiasCicero Хороший звонок. Я предполагал, что он уже имел их как существующие таблицы, которые могут быть неверными. @cdub, другой вариант - использовать то, что сказал @MatiasCicero, и использовать ['UpdateExpressions'] (https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.Modifying.html), чтобы изменить вложенные карты. Сохранить в GSI, несколько таблиц и т. Д. Вам решать, как вы хотите хранить и извлекать данные! – mkobit