Какую базу данных aws мне использовать? - PullRequest
0 голосов
/ 09 сентября 2018

У меня есть устаревший проект, который мне нравится переносить по частям. Теперь данные тесно связаны.

Например:

  • Информация о рейсе
  • Информация о экипаже
  • Информация для пассажиров
  • 1012 * аэропорты *
  • Полеты также могут иметь много аэропортов

Мне также хотелось бы иметь базу данных, которая масштабируема и гибка в изменении структуры. Я использую AWS.

Я посмотрел на DynamoDB, у него есть гибкость, которую я искал, но когда я обнаружил, что трудно запросить конкретный отдельный элемент в 1-ко-многим, например.

Я также знаю, насколько негибким является изменение структуры или схемы в RDS.

Есть предложения?

1 Ответ

0 голосов
/ 09 сентября 2018

Решение заключается в том, использовать ли базу данных NoSQL или реляционную базу данных , использующую SQL .

В ситуациях, когда вы будете запрашивать информацию по многим типам данных (например, «Сколько рейсов из LAX с более чем 100 пассажирами вылетело с опозданием более чем на 15 минут» * ), реляционная база данных делает все намного проще.

Они могут быть медленнее, но запросы гораздо проще писать. (Например, вышеуказанный вопрос может быть выполнен в одном запросе.)

База данных NoSQL превосходна, когда вам нужна предсказуемая производительность (число операций чтения в секунду), но она не может объединять информацию между таблицами.

После того, как вы выбрали тип базы данных, вы можете выбрать ядро ​​базы данных . Amazon Relational Database Service (RDS) предлагает:

  • MySQL (с открытым исходным кодом, низкая стоимость)
  • Aurora (облачная версия MySQL, намного более производительная)
  • MariaDB
  • Microsoft SQL Server (более высокая стоимость)
  • Oracle (более высокая стоимость)

Если сомневаетесь, используйте Aurora , поскольку он более облачный и полностью совместим с MySQL. Не существует серверной версии Aurora , которая могла бы автоматически масштабироваться и даже отключаться, когда не используется, для снижения затрат.

Что касается гибкости схем, все базы данных SQL в основном обеспечивают одинаковую гибкость с помощью ALTER TABLE.

...