Запуск SQL Server в облаке: выпуск 2017

Tags: SQL, SQL Server, IaaS, PaaS, cloud, Azure, Amazon

У вас есть два основных варианта при облачном запуске SQL Server:

Инфраструктура как услуга (IaaS) - это простые виртуальные машины, работающие в чужом центре обработки данных - будь то Amazon, Google или Microsoft. Рабочие обязанности для DBA такие же, как и на виртуальных машинах: вы управляете HA, DR, обновлениями, резервными копиями и настройкой производительности. Просто у вас могут быть несколько разные методы или шаги по настройке для их выполнения - но число изменений, которое вам нужно было сделать, чтобы переключиться с физических на виртуальные машины, будет тем же.

Платформа как услуга (PaaS) очень отличается. Amazon RDS для SQL Server и SQL Azure SQL DB похожи на получение DBA-as-a-service. Они управляют HA, DR, исправлениями, резервными копиями и в некоторых ограниченных случаях настройкой производительности самостоятельно.

Ваше решение об этих двух вариантах будет зависеть от выполняемых вами задач:

Производственные администраторы баз данных обычно настаивают на инфраструктуре как услуге.

Производственные администраторы баз данных рассматривают недостающие функции в предложениях платформы как услуги и говорят: «Подождите, вы говорите мне, что я не получаю SQL-агент? Я не могу напрямую привязывать базу данных? Я не могу запустить sp_configure или провести настройки TempDB? Значит это не настоящая база данных!» Производственные администраторы баз данных, как правило, нуждаются в более “ручном” управлении, которое предоставляет инфраструктура как услуга.

Проблема в том, что инфраструктура как услуга не сильно упрощает вашу работу: у вас все еще есть те же обязанности по работе, что и раньше, плюс вам нужно изучить новые инструменты для развертывания и устранения неполадок Windows. Вам нужно научиться работать со своими серверами, как если бы вам пришлось совладать с крупным рогатым скотом, и научиться использовать автоматизированные инструменты развертывания.

Это не значит, что IaaS плохой - он замечательный. Любой производственный DBA влюблен в нее.

Но всем остальным нужна платформа как услуга.

Потому что все остальные никогда не любили делать работу администратора баз данных.

Видите ли, производственные администраторы баз данных печально известны своим повсеместным «Нет», например:  «Нет, вы не можете  иметь доступ как SA.»,  «Нет, вы не можете включить эту функцию.»,  «Нет, вы не можете поместить SQL Server в DMZ.» Разработчики, менеджеры и конечные пользователи хотели бы найти способ избежать найма специалиста по отрицанию.

С решениями PaaS вы платите хостинг-провайдеру за выполнение многих традиционных обязанностей производственных DBA. (Фактически, у хостинг-провайдера есть новая функция «Не запрашивать», например, когда Microsoft удалила SQL CLR-поддержку из Azure SQL DB с недельным уведомлением).

Разработчики любят PaaS, потому что нет DBA вокруг, чтобы сказать «нет». Менеджеры любят PaaS, потому что у них есть проблема заполнения рабочих мест DBA. Консультационные компании DBA любят PaaS, потому что они могут помочь клиентам мигрировать в облако, освобождая их от некоторого давления производственных DBA.

Рынок PaaS все еще сильно меняется.

Так как 2017 подошел к концу, в дальнейшем есть 3 варианта для SQL Server:

Amazon RDS для SQL Server - Amazon покупает продукт с боксом SQL Server, устанавливает его в EC2 (VM), вносит в него некоторые изменения, чтобы они могли управлять, а затем перепродавать его вам. Это означает, что это тот же самый продукт в коробке, который вы знаете и любите, хотя и с множеством неподдерживаемых функций (AG, stretch database, BULK INSERT, CDC, DQS, отправка журналов, почта базы данных, распределенные запросы, связанные серверы ...)

Microsoft Azure SQL DB - подумайте об этом как о следующей версии SQL Server, но размещенной у Microsoft. В то время как он придерживается некоторых вещей из той же базы кода, он определенно не совпадает с продуктом в штучной упаковке. Например, запросы с кросс-базами технически выполнимы, но на практике это проблематично. Такой вариант не очень подходит для подъема и перемещения существующего приложения в облако, но оно прекрасно подходит для совершенно новых приложений, выполненных с нуля.

Microsoft Azure SQL DB Managed Instances - сейчас только в приватном предварительном просмотре, но скорее всего это будет  традиционный продукт с SQL Server, но управляемый Microsoft. Это отлично подходит для подъема и перемещения существующего приложения, но цена, вероятно, будет дороже, чем Azure SQL DB (это неплохо - это просто означает, что здесь вы не должны создавать новые сборки приложений).

В 2018 году мы, скорее всего, увидим:

  • Microsoft перейдет к общей доступности с управляемыми экземплярами, раскрывая ценовую и региональную доступность
  • Amazon переключится на что-то лучшее, чем зеркальное отображение базы данных для RDS HA / DR
  • Новых игроков на рынке



No Comments

Add a Comment