Автоматизация перехода на DB2 с использованием IBM DB2 UDB Migration Toolkit

Бесплатная программа IBM DB2 UDB Migration Toolkit может облегчить и ускорить ваш переход на DB2 Universal Database (DB2 UDB). Эта программа миграции предоставляет мастер и простой в использовании интерфейс, помогающий всего лишь за пять шагов, преобразовать существующие объекты баз данных Sybase, Microsoft SQL Server, Oracle и Informix в DB2 UDB.

Алекс Джарзебович, инженер-программист, IBM Silicon Valley Laboratory

Алекс Джарзебович (Alex Jarzebowicz) работает системным инженером в подразделении "Business Intelligence - User Technology Group" в IBM Silicon Valley Lab, Сан-Хосе, штат Калифорния. Он специализируется в информационной разработке и проектировании для клиентов. Ваш опыт и замечания очень приветствуются. По адресу jarzebow@us.ibm.com вы можете отправить замечания по данной статье или по программе Migration Toolkit.



05.09.2002

Введение

Используйте возможности бесплатной программы IBM® DB2® Universal DatabaseTM Migration Toolkit (MTK) для облегчения и ускорения перехода на DB2 UDB. Эта программа миграции предоставляет мастер и простой в использовании интерфейс, состоящий из пяти шагов, который может помочь вам преобразовать существующие объекты баз данных Sybase, Microsoft® SQL Server, Oracle и Informix в DB2 UDB.

При помощи MTK вы можете автоматически преобразовывать типы данных, таблицы, столбцы, представления, индексы, хранимые процедуры и триггеры в эквивалентные объекты базы данных DB2 UDB. MTK обеспечивает администраторов баз данных (DBA) и прикладных программистов средствами, необходимыми для автоматизации изначально неэффективных и затратных задач миграции. Вы можете уменьшить время простоя, исключить связанные с человеческим фактором ошибки и сберечь время и другие ресурсы, обычно присущие процессу миграции баз данных, используя следующие возможности MTK:

  • Извлечение метаданных базы данных из исходных DDL-команд с использованием прямого доступа к исходной базе данных (JDBC™/ODBC) или импортированных SQL-сценариев;
  • Автоматизация преобразования определений объектов базы данных, включая хранимые процедуры, триггеры, пакеты, таблицы, представления, индексы и последовательности;
  • Доступ к полезным совместимым функциям SQL и Java™, делающим процесс преобразования функционально точным и последовательным;
  • Использование программы SQL-трансляции для выполнения преобразования запросов "на лету", или использование программы в целях обучения DB2 SQL для разработчиков T-SQL, PL/SQL и SPL;
  • Просмотр и детализация ошибок преобразования;
  • Эффективная реализация преобразованных объектов при помощи параметра развертывания;
  • Генерирование и запуск сценариев перемещения данных;
  • Слежение за состоянием объектов и перемещением данных, включая сообщения об ошибках, месторасположение ошибок и отчеты по изменению DDL-команд, при помощи детальных журналов процесса миграции и отчета.

Что поддерживает MTK?

  • Переносит данные из следующих версий (и более поздних): Sybase 11.9.2, Microsoft SQL Server 6.5, Oracle 7, Informix IDS 7.3;
  • Переносит данные в следующие версии (и более поздние): DB2 UDB V7.2 для рабочих станций и DB2 UDB V5.2 для iSeries;
  • Работает на следующих платформах: Microsoft Windows NT®, Windows 2000®, Windows XP®, AIX, Sun Solaris и Linux (версия Informix IDS работает также на HP-UX).

Кроме этого, вы можете использовать MTK для преобразования значительного объема SQL из (или в) отличных от перечисленных версий систем баз данных. MTK доступен только на английском языке. Посетите Web-сайт MTK, на котором находятся обновления возможностей программы и расширение поддерживаемых платформ: http://ibm.com/db2/migration/mtk/


Рассмотрите MTK при принятии решений, связанных с системами баз данных

Решение о переходе на новую базу данных требует тщательного анализа многих факторов, которые повлияют на ваш бизнес. Одним из таких факторов является размещение ресурсов, необходимых для получения объектов базы данных, хранимых процедур и физических данных из оригинальной базы данных в DB2 UDB. Прибыль на капитал, инвестированный в обновление управления вашими данными, (return on investment - ROI) может значительно зависеть от таких факторов процесса миграции как время простоя, затраченные человеко-часы, возможные ошибки, связанные с человеческим фактором. Доступность комплексной программы миграции, помогающей подогнать объекты под ваши спецификации переноса бизнес-данных, может значительно уменьшить связанные с изменением базы данных затраты. Хотя существует несколько программ, предназначенных для облегчения миграции баз данных, очень немногие предоставляют возможность настроить DDL-объекты в пользовательском интерфейсе и, в то же время, поддерживают такие процедурные языки как T-SQL, PL/SQL или SPL. Также они не поддерживают детализацию и преобразование комплексных объектов, таких как триггеры и хранимые процедуры. MTK выделяется на фоне остальных программ миграции, предоставляя возможность просматривать и вручную настраивать объекты базы данных перед развертыванием объектов на целевой базе данных.

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

Рисунок 1. Эффективность преобразования по отношению к сложности RDBMS
Эффективность преобразования по отношению к сложности RDBMS

По мере возрастания сложности функций преобразуемой RDBMS уровень автоматизации уменьшается и возникает необходимость дополнительного ручного вмешательства в процесс преобразования. Значение MTK в такой сложной среде миграции заключается в том, что программа может служить централизованным интерфейсом для ручной манипуляции данными. Кроме того, MTK может автоматизировать преобразование оставшихся объектов базы данных и предоставляет возможность сконцентрировать ваши ценные ресурсы на наиболее сложных возможностях RDBMS.


MTK и общая стратегия миграции

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

  1. Предварительное планирование и оценка процесса миграции: на этой фазе вы определяете объем миграции и оцениваете такие задачи планирования работ и календарного планирования, как, например, оценка риска, опытная эксплуатация, резервное копирование данных, технологическая подготовка, планирование последовательности работ и профессиональное обучение процессу миграции;
  2. Миграция: во время этой фазы специалисты по преобразованию или администраторы баз данных (DBA) преобразуют данные в DB2 UDB и развертывают сценарии и данные непосредственно на целевой базе данных DB2;
  3. Послемиграционное тестирование и проверка: эта последняя фаза состоит из настройки целевой базы данных, перенесенных приложений, настройки рабочей среды, выполнения тестирования и обучения пользователей DB2 UDB.

MTK спроектирован для использования на второй фазе процесса миграции; эта фаза включает фактическое преобразование объектов базы данных и развертывание этих объектов и данных на целевой базе данных DB2. В то время как MTK поможет в наиболее критической фазе вашего процесса миграции, важна также корректная реализация других фаз для гарантии успешной и эффективной по затратам миграции. IBM предлагает большое количество проверенных решений по миграции, которые могут помочь вам разработать и реализовать все фазы стратегии миграции (для получения дополнительной информации см. раздел Дополнительные ресурсы по миграции в конце этой статьи).


Как работает MTK

Интерфейс MTK предоставляет пять итеративных шагов (см. рисунок 2). Каждая страница интерфейса MTK представляет шаг процесса миграции.

Рисунок 2. Пять шагов MTK
Пять шагов MTK

Состоящий из пяти шагов процесс миграции начинается с шага Specify Source (Указание исходной базы данных), используемого для идентификации исходных объектов, которые будут преобразованы. Затем вы конвертируете исходные объекты в объекты DB2 на шаге Convert (Преобразование) и просматриваете и настраиваете результаты преобразования на шаге Refine (Уточнение). Вы повторяете шаги Convert и Refine до тех пор, пока отображаемые на закладке Refine результаты не будут точными и полными. На двух последних шагах миграции, Generate Data Transfer Scripts (Генерирование сценариев переноса данных) и Deploy the database objects and data (Развертывание объектов и данных базы данных), вы генерируете сценарии переноса и развертываете объекты и данные на целевой базе данных DB2.

Среда миграции

Во время настройки среды миграции вы указываете операционные платформы, на которых работает сервер базы данных. Менеджер исходной базы данных может существовать на одной платформе, DB2 UDB - на другой, а MTK может выполняться на платформах Microsoft® Windows NT или Windows 2000.

Вы можете установить программу DB2 Migration Toolkit на той же системе, что и DB2 UDB. Доступ к исходной базе данных осуществляется через драйвер ODBC или JDBC™. Программа может также осуществлять импорт из файла, если файл содержит SQL-запросы, которые были экспортированы в корректном формате (стандартный SQL – не запатентованный формат). См. рисунок 3.

Рисунок 3. Использование ODBC или JDBC для доступа к базе данных
Использование ODBC или JDBC для доступа к базе данных

Возможно также развертывание базы данных на системной платформе, отличной от поддерживаемых в MTK. Во время развертывания MTK выполняет набор пакетных файлов, содержащих необходимые для развертывания команды. Если вы знаете синтаксис командного процессора целевой системы, то можно скопировать файлы в систему, выполнить в них необходимые изменения и запустить их самостоятельно. Например, вы можете вручную изменить и локально запустить на выполнение сценарии UNIX® (*.sh), сгенерированные во время миграции, так чтобы развертывание и перенос данных осуществлялся локально на целевой машине с операционной системой UNIX.

Рисунок 4. Использование пакетных файлов для развертывания
Использование пакетных файлов для развертывания

Пять итеративных шагов интерфейса MTK описаны ниже:

Шаг 1: Specify source
После создания или открытия проекта миграции вы можете начать работу. Первым шагом является получение исходных DDL-файлов, которые будут перенесены в DB2 UDB. Этот шаг выполняется на странице Specify Source.

Рисунок 5. Указание исходной базы данных
Указание исходной базы данных

Используя подключение ODBC или Java®, вы можете извлечь исходные файлы непосредственно из базы данных, либо выполнить сценарии импорта. Например, при импортировании сценариев можно импортировать исходные сценарии из предварительных выборок или из исходной библиотеки. Можно также указать и преобразовать несколько исходных файлов одновременно.

Шаг 2: Convert
На шаге Convert вы можете выбрать параметры форматирования, влияющие на результат преобразования, из списка. Шаг Convert можно использовать также для изменения отображения по умолчанию исходных типов данных на типы данных DB2.

После выбора параметров преобразования исходный DDL-запрос преобразуется в DB2 DDL. Результатом каждого преобразования является файл DB2 (.db2) и файл отчета (.rpt), каждый из которых начинается с префикса, указанного вами в поле Prefix for generated files (Префикс для генерируемых файлов). SQL-файл DB2 содержит созданные во время преобразования DDL-команды DB2, которые обычно расположены после исходных DDL-команд, оформленных как комментарии. Файл отчета содержит список ошибок, которые были выявлены во время преобразования. Вы можете просмотреть и изменить эти файлы на странице Refine, которая открывается автоматически после преобразования объектов.

Рисунок 6. Шаг 2, преобразование
Шаг 2, преобразование

Шаг 3: Refine
Используйте шаг Refine для просмотра результатов преобразования, сообщений об ошибках и изменения преобразованных DDL-команд.

Рисунок 7. Шаг 3, уточнение
Шаг 3, уточнение

После уточнения преобразованных данных вы должны вернуться к шагу Convert для проведения изменений. При повторном прохождении шага Convert преобразователь объединяет ваши уточнения с исходными DDL-командами для создания новых целевых метаданных DB2 и XML (представление исходных объектов, как указано в DDL). Оригинальные DDL-команды не изменяются. Повторяйте процесс Convert-Refine до тех пор, пока не будете удовлетворены результатами.

Вы можете использовать другие программы, например, SQL Translator, Log и Reports, которые помогут вам уточнить преобразование. После удовлетворяющей вас настройки DDL-команд DB2 можете перейти к шагу Generate data transfer scripts (Генерирование сценариев переноса данных), либо к шагу Deploy to DB2 (Развертывание на DB2) для выполнения DDL-команд.

Шаг 4: Генерирование сценариев переноса данных
На этом шаге генерируются сценарии переноса данных (Windows NT (*.bat) и UNIX (*.sh)), которые будут использоваться для создания файлов данных в формате DB2. Некоторые параметры позволяют указать загрузку и импорт, формат файлов, модификатор типа файлов, параметр и свойства индексирования для соответствия требованиям конкретного процесса миграции.

Рисунок 8. Шаг 4, генерирование сценариев
Шаг 4, генерирование сценариев

Шаг 5: Развертывание на DB2
Шаг Deploy применяется для развертывания данных на целевой базе данных. На данном шаге вы можете выполнить DDL-команды для создания объектов метаданных, извлечения данных из исходной базы данных, загрузки данных в целевые таблицы DB2, а также выбрать любую комбинацию этих трех действий.

Рисунок 9. Шаг 5, развертывание
Шаг 5, развертывание

MTK предоставляет различные параметры для соответствия многим возможным системным средам. Одним из обычных применений этих возможностей является использование параметров Deploy таким образом, чтобы вы могли выполнить DDL-команды в рабочее время, а развертывание фактических данных ночью, когда сетевая нагрузка минимальна.

Если вам нужно выполнить преобразование и настройку на системе, отличной от системы, на которой размещается сервер DB2 UDB, вы можете скопировать MTK и его каталог project на систему DB2 UDB и выполнить развертывание локально. MTK генерирует сценарии для обеих платформ (и UNIX, и Windows). На системе для развертывания необходимо наличие Java 1.3.0.


Пример миграции базы данных с использованием MTK

У нас есть учебное пособие, в котором продемонстрировано использование программы Migration Toolkit для преобразования модели базы данных из DDL-сценария Microsoft SQL Server в базу данных DB2. Преобразованные объекты будут содержать встроенные процедуры. Вы можете найти это пособие по следующему адресу: http://www.ibm.com//developerworks/ru/edu/0209jarzebowicz.


Как получить MTK?

Последнюю версию программы Migration Toolkit можно бесплатно загрузить с: http://ibm.com/db2/migration/mtk/

Разработка программы продолжается, новые возможности и дополнительные функции добавляются постоянно.


Техническая поддержка

MTK создана и поддерживается IBM Silicon Valley Laboratory. Команда разработчиков MTK предоставляет поддержку MTK через группу новостей news://news.software.ibm.com/ibm.software.db2.udb (пожалуйста, посылайте сообщения с префиксом Migrate-team). Вопросы по дизайну программы и предложения пользователей можно присылать по адресу mtk@us.ibm.com.


Дополнительные ресурсы по миграции

Платные эксперты по DB2-миграции

Контакты для Америки, AP и EMEA:
http://ibm.com/db2/migration/

Предпродажная поддержка миграции на DB2 для дистрибьюторов DB2

Стив Тэсслер
Менеджер, IBM Data Management ISV Software Sales
sltessl@us.ibm.com
516-349-3879

Предпродажная поддержка миграции на DB2 для не дистрибьюторов DB2

Замиль Жанмохаммед
Менеджер, DB2 Application Development Services
zamil@ca.ibm.com
416-313-1130

Благодарности

Автор рад выразить благодарность Патрику Дантресангле (Patrick Dantressangle), Гэри Феаклозу (Gary Faircloth), Амирису Рада (Amyris Rada) и Кэтлин Ноджима (Kathleen Nojima) за их технический анализ и полезные замечания к статье и руководству.

Ресурсы

Комментарии

developerWorks: Войти

Обязательные поля отмечены звездочкой (*).


Нужен IBM ID?
Забыли Ваш IBM ID?


Забыли Ваш пароль?
Изменить пароль

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Профиль создается, когда вы первый раз заходите в developerWorks. Информация в вашем профиле (имя, страна / регион, название компании) отображается для всех пользователей и будет сопровождать любой опубликованный вами контент пока вы специально не укажите скрыть название вашей компании. Вы можете обновить ваш IBM аккаунт в любое время.

Вся введенная информация защищена.

Выберите имя, которое будет отображаться на экране



При первом входе в developerWorks для Вас будет создан профиль и Вам нужно будет выбрать Отображаемое имя. Оно будет выводиться рядом с контентом, опубликованным Вами в developerWorks.

Отображаемое имя должно иметь длину от 3 символов до 31 символа. Ваше Имя в системе должно быть уникальным. В качестве имени по соображениям приватности нельзя использовать контактный e-mail.

Обязательные поля отмечены звездочкой (*).

(Отображаемое имя должно иметь длину от 3 символов до 31 символа.)

Нажимая Отправить, Вы принимаете Условия использования developerWorks.

 


Вся введенная информация защищена.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=40
Zone=Information Management
ArticleID=107367
ArticleTitle=Автоматизация перехода на DB2 с использованием IBM DB2 UDB Migration Toolkit
publish-date=09052002