Каковы соответствующие преимущества / ограничения Amazon RDS по сравнению сEC2 с MySQL?[закрыто]

StackOverflow https://stackoverflow.com/questions/4806272

  •  24-10-2019
  •  | 
  •  

Вопрос

Я понимаю пару основных различий между ними, т.е.

  1. EC2 будет дешевле

  2. RDS Мне не пришлось бы заниматься техническим обслуживанием

Помимо этих двух, есть ли какие-либо преимущества в запуске моей базы данных из RDS в отличие от отдельного сервера EC2, действующего как сервер MySQL.Предполагая схожие размеры экземпляров, столкнутся ли оба экземпляра с одинаковыми ограничениями с точки зрения способности обрабатывать нагрузку?

Чтобы дать вам немного больше информации о моем использовании, у меня есть база данных, ничего слишком большого (самая большая таблица в 1 миллион строк), просто большой объем ВЫБОРА.

Это было полезно?

Решение

Это простой вопрос с очень сложным ответом!

Короче говоря: EC2 обеспечит максимальную производительность, если вы пойдете с EBS RAID0. Например, для выполнения RAID0 EBS требуется довольно значительное количество накладных расходов на обслуживание:

http://alestic.com/2009/06/ec2-ebs-raid

http://alestic.com/2009/09/ec2-consistent-snapshot

EC2 без RAID0 EBS обеспечит дерьмовую производительность ввода/вывода, поэтому это даже не на самом деле вариант.

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

Короткий ответ: иди с RDS. Все еще на заборе? Пойти с RDS !!! Если вам нравятся головные боли и настройку каждого последнего маленького бита для максимальной производительности, то вы можете рассмотреть EC2 + EBS RAID 0. Vanilla EC2 - ужасный вариант для хостинга MySQL.

Другие советы

В эта почта между: между: есть отличный эталон

  • Запуск MySQL на небольшом EC2 + EBS
  • Запуск MySQL на небольших параметрах EC2 + EBS + MySQL
  • Небольшой RDS

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

RDS на самом деле не система высокой доступности. Прочитайте мелкий шрифт в FMS FAQ. Во время аварийного переключения может занять до 3 минут. Дополнительная Amazon решит, что ему нужно «обновить» экземпляр RDS и сделать отказоустойчивость в этот момент, который сведет вашу базу данных на «до 3 минут» (наш опыт заключается в том, что это может занять больше времени).

Высокая доступность RDS сильно отличается от Master - Master или Master - репликации рабов и намного медленнее. Они не используют репликацию MySQL, но используют какую -то репликацию EBS. Таким образом, в ситуации с переключением передач он установит EBS на резервной машине, запустите MySQL, подождите, пока MySQL сделает неудачу в восстановлении (надеюсь, ничего не повреждено), а затем сделайте DNS -переключатель.

Я надеюсь, что это поможет вам в оценке.

Мы решили использовать экземпляры EC2 MySQL, потому что у нас есть высокий объем чтения и нуждается в репликации мастер-раба. Конечно, вы можете раскрутить несколько экземпляров RDS и настроить репликацию MySQL между ними сами, но мы используем Scalr.net, который управляет этим для вас, используя экземпляры EC2.

По сути, мы просто сообщаем Скальру, сколько экземпляров MySQL, которые мы хотим, сохраняют их, автоматизирует настройку репликации, обрабатывает автоматическое отказование в промоушене подчинений для мастера, если мастер будет прекращен и т. Д. хозяин. Таким образом, когда ему необходимо создать новый подчинен, он автоматически временно объединяет громкость EBS последнего мастер -снимка для инициализации подчиненного DB, а затем начинает репликацию из соответствующей точки. Все точка и нажмите :) (и нет, я не работаю на Scalr или что -то в этом роде. Scalr доступен в качестве открытого исходного кода, если вы не хотите использовать их сервис)

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

Это то, что я планирую сделать на следующей неделе или около того. Конечно, это будет стоить вам дороже, но я еще не работал так.

MySQL на EC2 против RDS MySQL

Преимущества MySQL на EC2Репликация Amazon EC2 Inter Region

Скопируйте снимки в регионах Amazon EC2

RAID 0 с EBS Striping в MySQL EC2

Более 3 ТБ дискового пространства (вам не понадобится для вашего размера) может быть прикреплено на MySQL на EC2.

Недостатки MySQL на EC2

Конфигурация, мониторинг и обслуживание по сравнению с RDS

Моменты времени резервного копирования доступны в RDS

IOPS меньше, чем RDS MySQL (даже после RAID 0) в настоящее время 10800 с 6 дисками для MySQL на EC2, тогда как 12500 IOPS 16KB на RDS MySQL

Я опробовал RDS в течение нескольких месяцев, и вот некоторые проблемы, с которыми я столкнулся:

  1. Использовать SQL profiler довольно сложно.Поскольку вы не можете подключить profiler напрямую к серверу, вам необходимо запустить некоторые хранимые процедуры для создания файла журнала, который вы можете проанализировать.Хотя они предлагают несколько советов о том, как это сделать, это далеко не удобно для пользователя.Я бы только порекомендовал вам нанять сертифицированного специалиста по SQL для выполнения такого рода работы.

  2. пока Amazon создает резервную копию вашего экземпляра, вы не можете восстановить отдельную базу данных.У меня есть веб-приложение с несколькими отдельными клиентскими базами данных, и мое решение состояло в том, чтобы запустить экземпляр EC2 с запущенным на нем SQL для подключения к рабочей базе данных RDB и импорта данных, а затем создать их резервную копию в экземпляре EC2.Другим решением было использовать сторонний инструмент, который создает массивный SQL-скрипт (на сервере приложений), который воссоздаст схему и вернет данные обратно в точку восстановления.

У меня был тот же вопрос в эти выходные. Для RDS есть 4 -часовое окно простоя для RDS, где они выполняют обслуживание. RDS казался более дорогим, если вы можете уйти с микро -экземпляром EC2. (Это верно для экземпляров тестирования, которые имеют минимальный трафик) Я также не смог изменить часовой пояс экземпляра RDS, потому что у меня нет разрешения.

Я сейчас на самом деле смотрю на http://xeround.com/ который является MySQL на EC2 другой компанией. Они не используют Innodb, вместо этого у них есть собственный двигатель под названием IDG. Я только начинаю исследовать это, но они находятся в бета -версии и дадут 500 МБ пространства.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top