Зачем использовать RDS поверх EC2 для Postgres?

12

У меня есть база данных в настоящее время работает на EC2. Поскольку я должен переместить это на большую машину, встал вопрос об использовании RDS.

Цены:

Я могу получить экземпляр EC2 c3.large с двумя твердотельными накопителями (по 16 ГБ каждый), двумя виртуальными ЦП и 4 ГБ памяти по требованию за $ 0,132 в час [1] .

Ближайшая (с учетом цены) машина RDS будет стоить db.m3.medium$ 0,125 в час (Single-AZ) [2] . Эта машина имеет такой же объем памяти, но только один vCPU [3] . Кроме того, мне придется заплатить за хранение и IO [2] .

Таким образом, цены будут очень похожи на этих двух.

Преимущества для EC2:

  1. Как уже упоминалось, еще один vCPU.
  2. Я могу поместить Write-Ahead-Log на второй диск при использовании EC2 (большое улучшение производительности, когда много записывается в БД).
  3. Я могу запустить pgbouncer на своем экземпляре EC2 (больше производительности, потому что я могу держать соединения открытыми).
  4. Я могу редактировать файл конфигурации (в конечном итоге улучшит производительность)

Преимущества для RDS:

  1. Автоматически делает ежедневные резервные копии.

Может ли RDS охватить преимущества, которыми обладает EC2 (особенно 2.)? Есть ли другие преимущества?

кэв
источник

Ответы:

8

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

RDS проще, но менее гибок и стоит дороже при том же уровне производительности.

(В частности, обратите внимание, что нет способа копировать в RDS или из него )

Крейг Рингер
источник
Поэтому я сохраню существующее решение :-)
kev
4

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

Честно говоря, я бы предпочел запускать базы данных на оборудовании coloc, чем в EC2. Я ненавижу работать с базами данных в EC2. Перемещение их, создание дампов и резервных копий - кошмар, так как производительность ввода / вывода в ec2 просто ужасна, а покупка большого количества iops ужасно дорога и все равно не приближается к производительности оборудования. Если я могу жить с ограничениями RDS, я всегда буду использовать его.

figtrap
источник