Майк Ваас, основатель и генеральный директор компании Datometry, рассказывает на портале eWeek, как виртуализация баз данных снимает остроту проблемы облачной миграции баз данных.

Миграция баз данных — одна из самых страшных инициатив в ИТ. Поднимите тему такой миграции с любым ИТ-руководителем, и вы получите сильную эмоциональную реакцию. Слишком много карьер было разрушено из-за неудачных миграций. Очевидно, что традиционные методы, использующие преобразование кода, здесь просто не работают.

История просто кишит ужасами, особенно когда речь идет о миграции корпоративного хранилища данных. Неудачные миграции, которые потерпели крах после трех лет напряженной работы, — довольно распространенное явление. Миграционные проекты, стоимость которых превысила 20 млн. долл., прежде чем они развалились, являются нормой. Но спросите любого ИТ-руководителя не под запись, и вы сможете узнать о гораздо более дорогостоящих катастрофах.

По мере того как предприятия переходят на облачные технологии, модернизация онпремисных хранилищ данных до нативных облачных технологий становится первоочередной задачей для каждого ИТ-руководителя. Что же им делать? Как предприятиям избежать миграционных катастроф при переносе в облако унаследованных хранилищ данных?

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

Что такое виртуализация баз данных

Считайте, что виртуализация баз данных — это технология гипервизора для запросов к базам данных. Платформа виртуализации располагается между приложениями и новым целевым хранилищем данных. Как и любая технология виртуализации, она развязывает два иначе тесно связанных компонента. В данном случае СУБД и приложения абстрагируются друг от друга.

Платформа виртуализации переводит запросы и другие инструкции базы данных в режиме реального времени. По сути, виртуализация баз данных заставляет облачное хранилище данных типа Azure Synapse вести себя точно так же, как система Teradata или Oracle. Это существенно отличается от виртуализации данных. Виртуализация данных реализует новый диалект SQL и требует, чтобы все приложения сначала были переписаны на этот диалект.

По сравнению со статическим преобразованием кода, виртуализация баз данных значительно мощнее. Она может эмулировать сложные конструкции или типы данных. Даже элементы, для которых нет эквивалента в новой целевой базе данных, могут быть эмулированы в режиме реального времени.

Приложения, изначально написанные для одной конкретной базы данных, теперь могут работать на другой базе данных без необходимости изменения SQL. Вместо статического преобразования кода со всеми его рисками и проблемами, виртуализация баз данных сохраняет существующие приложения. Вместо месяцев переписывания логики приложения виртуализация баз данных обеспечивает мгновенную совместимость новой базы данных с существующими приложениями.

Виртуализация отделяет миграцию в облако от модернизации приложений

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

Заинтересованные стороны могут рассматривать миграцию как уникальную возможность модернизировать свое приложение. Если приложение нуждается в значительной переработке, рассуждают они, то почему бы не внести и другие важные изменения? То, что начиналось как предположительно малоинвазивная операция, теперь превращается в полноценную операцию на открытом сердце.

В отличие от этого, виртуализация баз данных позволяет приложениям работать как есть. Все изменения сводятся к абсолютному минимуму. На практике степень изменений в приложениях составляет около 1%. Учитывая быстрое развитие технологии облачных хранилищ данных, мы ожидаем, что в будущем необходимость даже в таких изменениях еще больше снизится.

Виртуализация баз данных существенно меняет описанную выше динамику: сначала переходим, модернизируем приложения после — и только в случае необходимости. Как только предприятие перейдет на облачные технологии, несколько отдельных приложений могут стать кандидатами на модернизацию. Разделение перехода и модернизации имеет решающее значение для контроля риска.

Виртуализация преодолевает страшную — 80/20 — природу миграции

Ни одну другую ИТ-проблему так часто не недооценивают. Мы объясняем эту ошибку в суждениях прежде всего тем, что это невероятно редкая операция. Большинство ИТ-руководителей никогда не планировали и не выполняли масштабную миграцию баз данных. Если у них была такая возможность, они делали миграцию баз данных проблемой своих преемников.

Как только проект по переписыванию базы данных запущен, первые успехи могут быть головокружительными. Уже через несколько недель «легкие» фрагменты SQL быстро преобразуются. Многие из них нуждаются лишь в замене нескольких ключевых слов и подобных тривиальных изменениях. В истинном стиле 80/20 первые 80% занимают очень мало времени и почти не требуют бюджета. Затем наступает черед последних 20%. Именно здесь возникают трудности и происходит катастрофа.

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

Виртуализация снижает риски

Обычная миграция — это мероприятие с высоким уровнем риска. Как мы уже видели, все начинается с недооценки необходимых усилий. Ограничения подходов, основанных на переписывании, невозможно узнать заранее, несмотря на все усилия. Тем не менее, ИТ-руководителям часто приходится в этих проектах ставить на карту свою карьеру.

Важно отметить, что при использовании подходов, основанных на переписывании, ИТ-отдел несет ответственность в основном в одиночку. Ему поручается совершить миграцию, а затем бизнес судит о результатах.

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

Кроме того, виртуализация баз данных предлагает один довольно очевидный механизм снижения рисков. Пока старая система не выведена из эксплуатации, организация всегда может вернуться к старому стеку. Возврат не требует особых усилий, поскольку все приложения были сохранены в своей первоначальной функциональности.

Перевод ИТ на платформу публичного облака

Крупнейшие предприятия собираются переводить свои ИТ в публичное облако. Однако до сих пор перенесена лишь часть онпремисных систем и процессов. Призрак миграции баз данных сдерживает предприятия, поскольку все критически важные рабочие нагрузки тесно связаны с СУБД.

Поэтому виртуализация баз данных — это мощная альтернатива для ИТ-руководителей, которые рассматривают возможность миграции баз данных. Несмотря на то, что это еще молодая дисциплина, она уже доказала свою эффективность на примере известных компаний Global 2000. Пока что ее доказательная база ограничена корпоративными хранилищами данных. Однако не нужно большого воображения, чтобы понять, как эта технология может применяться и к оперативным базам данных.

Виртуализация баз данных должна рассматриваться как важнейший инструмент в арсенале ИТ-руководителя для решения проблем миграции, когда требуется эффективный способ переноса данных в облако.