BC/NW 2014 №1 (24) :6.4
АЛГОРИТМ МИГРАЦИИ ДАННЫХ МЕЖДУ РАЗЛИЧНЫМИ СУБД
Колегина Ю.А., Стоянова. О.В.
В настоящее время системы управления базами данных (СУБД) являются важнейшими составляющими для любой информационной системы
(ИС). В ряде случаев возникает необходимость замены текущей СУБД на новую. В ходе принятия решения об использовании новой СУБД одним из ключевых критериев является решение вопроса миграции данных.
Процесс миграции данных не является тривиальной и повседневной задачей. Для успешного выполнения проекта миграции с одной СУБД на другую был предложен следующий алгоритм.
1. Подготовка к миграции. На этом этапе происходят подготовка и установление соединения с исходной СУБД и выбор объектов для миграции.
2. Выполнение миграции. Можно выделить миграцию схем/объектов (метаданных) и миграцию записей для каждой таблицы.
При выполнении миграции возможно возникновение ряда проблем:
- конфликты зарезервированных слов (например, название столбцов таблицы совпадает с зарезервированными словами);
-проблема в различной реализации функций (т.е. функции поддерживаются обеими СУБД, но имеют различный синтаксис);
- неподдерживаемые функции (такие функции не могут быть использованы в целевой СУБД, следовательно, порядок действий различается в каждом конкретном случае).
3. Проверка результатов миграции. Нужно убедиться, что миграция прошла успешно с точки зрения целостности базы данных (БД). Это можно осуществить путем проверки наличия всех необходимых объектов и данных. Например, в качестве проверки запускаются аналогичные запросы
на исходной БД и целевой БД и сравниваются возвращаемые наборы данных. Также для проверки сравнивается количество записей во всех перенесенных таблицах – их число должно быть одинаковым.
4. Тестирование целевой БД. Чтобы оценить, насколько успешно была проведена миграция, необходимо проверить работу приложений, написанных для одной СУБД, на целевой БД.
5. Оптимизация целевой БД. Осуществить настройку производительности целевой БД.
Таким образом, приведенный алгоритм миграции данных поможет упростить решение задачи замены текущей СУБД на новую. Очень важно грамотно осуществить миграцию данных, поскольку переход на новое программное обеспечение будет не столь целесообразен, если накопленные данные не будут использоваться, будут утеряны или повреждены.