Ваши варианты использования лучше подходят для реляционной базы данных, чем для базы данных SQL .
База данных SQL отлично подходит для хранения и извлечение данных на основе первичного ключа . Например, «сохранить запись № 12» или «получить запись № 12». Сохраненный элемент имеет формат JSON и может содержать много информации. DynamoDB также может обеспечить предсказуемую производительность для таких запросов, что делает его идеальным для приложений, критичных к скорости (например, для получения пользовательских профилей в популярном веб-приложении).
Однако No SQL не является идеально, если вы будете sh для поиска таких данных, как "Получить все предметы, где размер 45". Вы можете достичь этого, добавив дополнительные индексы, но они могут стать сложными и не такими гибкими, как реляционная база данных.
Да, вы можете «хранить» реляционные таблицы в базе данных No SQL, но вы не можете получить к ним доступ так, как вам хочется.
Ваши примеры и диаграмма лучше подойдут для реляционной базы данных. Я бы рекомендовал Amazon RDS для MySQL или PostgreSQL.