Как решить этот возможный сценарий с DynamoDB - PullRequest
0 голосов
/ 11 мая 2019

Я пытаюсь разработать возможную таблицу DynamoDB со следующей проблемой:

1 - Клиент приходит и говорит: «Привет, когда я нажимаю на товар в списке товаров, я хочу видеть всю информацию о товаре, включая заводской адрес, который его производит» *

2 - Клиент также хочет обновить адрес фабрики, когда это необходимо.

Как бы вы нарисовали эту таблицу? Вы бы добавили полный адрес фабрики в каждый товар?

Моя главная проблема - количество запросов, которые мне нужно будет выполнить.

Если бы я поместил продукты в одну таблицу, а фабрики в другую таблицу, мне пришлось бы вызвать 2 запроса, чтобы получить всю информацию, которую хочет клиент

Если я добавлю фабричный адрес в элементе продукта, мне придется обновить несколько строк в случае изменения фабричного адреса.

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

Возможно ли это или только в реляционной базе данных?

1 Ответ

1 голос
/ 13 мая 2019

«Если я добавлю заводской адрес в элементе продукта, мне придется обновить несколько строк в случае изменения заводского адреса».<- Это определенно не стоит.Вы можете платить много за запись каждый раз, когда обновляется адрес фабрики. </p>

Я запускаю довольно сложное приложение на DynamoDB и создаю 2 таблицы для вашего сценария: Таблица продуктов, которая имеет атрибут с FactoryIDи таблицу Фабрики с FactoryID в качестве хэш-ключа.На практике я обнаружил, что DynamoDB работает очень быстро с несколькими поисками (которые вы можете объединять вместе, если это необходимо), и я часто использую этот шаблон для «гидратации» продуктов в моем приложении информацией из разных таблиц.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...