DynamoDB или RDS? - PullRequest
       3

DynamoDB или RDS?

0 голосов
/ 26 января 2020

Я продолжаю рассказывать о выборе DynamoDB или RDS для моего проекта. Я понимаю, что это 2 совершенно разных типа систем БД, но я не уверен, какая из них лучше подойдет для моего приложения. Мое приложение предупреждает пользователей о некоторых событиях, которые происходят очень редко.

Например, сотрудник может активировать оповещение о том, что в здании есть активный стрелок, поэтому моему приложению необходимо получить номера сотовых телефонов всех сотрудников компании из базы данных, а затем использовать эти номера для отправлять текстовые сообщения. Я только что обнаружил, что у DynamoDB есть ограничение в 100 элементов при извлечении данных из базы данных, что является проблемой для меня, потому что мне, возможно, придется получить 200, 300 или даже больше телефонных номеров как можно быстрее.

In Кроме того, база данных не будет запрашиваться регулярно. Это будет запрашиваться редко, когда кому-то нужно обновить информацию профиля пользователя. Конечно, в экстренных случаях он будет запрашиваться для номеров мобильных телефонов пользователей, и мне нужно, чтобы результаты возвращались как можно быстрее.

Звучит так, будто DynamoDB может быть излишним, но я не На 100% уверен. С другой стороны, это кажется ПРЕКРАСНЫМ соответствием, так как он может действительно быстро запрашивать материал, но ограничение в 100 элементов на запрос просто убивает меня.

Для меня нет однозначного ответа с точки зрения того, что Система баз данных на выбор. Исходя из этого варианта использования, какой вариант БД является наилучшим?

1 Ответ

1 голос
/ 26 января 2020

Вы должны использовать AWS для этого. У Pinpoint есть конечные точки и сегменты.

  • Конечной точкой является адрес электронной почты, номер ... У одного человека в компании может быть несколько конечных точек.
  • Сегмент представляет собой отфильтрованный список конечных точек. Например, вы можете отфильтровать конечные точки по названию человека или по компании.
  • Вы создаете кампанию на основе сегментов, поэтому каждый человек в выбранных сегментах получает электронную почту или SMS или оба ...

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

AWS Подход не состоит в том, чтобы сканировать динамо-базу данных для отправки групповых электронных писем или SMS. Вместо этого, подход заключается в создании сегмента, а затем в создании кампаний.

...