Я тренируюсь с работой с DynamoDB и другими серверными инструментами, предлагаемыми AWS.Я привык работать с реляционными базами данных, такими как MySQL, поэтому с Динамо для меня это было немного сложной задачей.
По сути, я пытался сделать нечто похожее на то, что уже существует в Facebook, Instagram, Youtube,и другие популярные сайты делают.И это создает платформу, которая позволяет пользователям регистрироваться, следить за другими и публиковать медиафайлы (видео и изображения), которые можно понравиться и прокомментировать.Для элементов, которые могут расти, таких как «Подписчики» или «Нравится», я изначально сохранял их в виде списков в соответствующих таблицах;однако я понимаю, что это может быть не лучшим подходом, так как у DynamoDB есть предел данных.Например, если кто-то вроде Коби Брайанта присоединился к приложению и сразу же получил миллионы подписчиков, подход с использованием списка может оказаться не лучшим.
Как это, Media: - MediaID- Идентификатор пользователя- MediaType- размер- S3_URL- Нравится: {......}- Комментарии: {......}
Было бы лучше хранить такие вещи в отдельных таблицах?Или я сейчас вспоминаю реляционные базы данных?
Например, Media:- MediaID- Идентификатор пользователя- MediaType- размер- S3_URL
Media_Likes:- LikeID- MediaID- Идентификатор пользователя- DateLiked
Media_Comments:- CommentID- MediaID- Идентификатор пользователя- текст- DateCommented
Или какой еще лучший способ создать что-то подобное?