Я сейчас думаю о своей базе данных DynamoDB. Цель состоит в том, чтобы получить максимальную скорость с действительно большим объемом данных. Мне DynamoDB кажется хорошим вариантом. Кроме того, мне необходимо подключить таблицу к ElasticSearch, потому что мне нужны геоточки-запросы (например, показать мне все сообщения, которые находятся в определенной области). Будет ли вам понятен следующий подход в отношении лучших практик DynamoDB? Возможно, что ключ сортировки, например, «сообщения», является горячей точкой, но если я запрашиваю только с помощью ElasticSearch, проблем не должно быть, верно? Какое было бы лучшее решение?
Итак, мои мысли:
- Чтобы запросить всех пользователей, просто выберите каждую строку с помощью sort_key 'user'
- Чтобы получить сообщение от создателя, запросите post_id и sort_key 'post'
В реляционной базе данных две таблицы будут выглядеть следующим образом: