Энциклопедия мобильной связи

Миграция и внедрение: о чём молчат провайдеры. Крупнейшие миграционные системы мира: общие тренды и различия Миграция системы

В данной статье мы хотели бы систематизировать наш опыт проведения миграции данных в крупных корпоративных проектах, связанных с переходом Заказчиков на работу в конфигурациях «1С:Предприятие 8».

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

Термины и определения

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

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

Схема миграции в общем случае выглядит следующим образом:

Рис. 1

Исторические системы - базы данных компании Заказчика, которые планируется полностью или частично заменить при внедрении новой системы.

Система-приёмник - целевая система, произвольная конфигурация «1С:Предприятие 8».

Исходные данные - данные, выгруженные из исторических систем в произвольный формат xls -файлов. В данном случае формат xls представляется, как один из самых удобных, поскольку возможность выгрузки в xls -файл присутствует во многих учетных системах «предыдущих поколений».

Как современную альтернативу в качестве транспорта возможно рассматривать формат xml -файлов.

Также существуют варианты использования промежуточной базы данных.

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

Данные для загрузки - данные, предназначенные для загрузки в систему-приёмник. В данной статье, так же как и исходные данные, рассматривается xls -формат.

Шаблоны данных для загрузки - описание таблиц данных для загрузки в целевую систему.

Этапы миграции

Рассмотрим поэтапно процесс подготовки и проведения миграции.

К организационным этапам миграции можно отнести следующие пункты:

· Определение стратегии миграции. На данном этапе Исполнитель и Заказчик договариваются о технологии проведения миграционных работ;

· Определение состава рабочей группы по миграции. В рабочую группу должны входить специалисты и Исполнителя и Заказчика, знакомые в достаточной степени с работой исторических систем (со стороны Заказчика) и целевой системы (со стороны Исполнителя);

· Предварительный план миграции. План миграции по ходу проекта будет неоднократно корректироваться;

· Периоды дат выгрузки данных из исторических систем, объемы данных. Периоды среза данных для миграций, даты тестовых и итоговой миграций. Данную информацию можно отнести к плану миграции;

· Состав данных, подлежащих миграции. Справочные данные, классификаторы, транзакционные данные, остатки, обороты и пр.;

· Вопросы проверки качества, корректности и целостности данных в процессе миграции и по итогам;

· Вопросы отката к предыдущему состоянию в случае сбоев.

Остановимся подробнее на технологических этапах миграции.

Рис. 2

1.Подготовка шаблонов загрузки данных

Шаблон загрузки данных содержит технические описания таблиц данных для загрузки, алгоритмы и правила загрузки для текущего шаблона.

Каждый шаблон в общем случае предназначен для одной или нескольких связанных таблиц в целевой системе-приёмнике.

В шаблоне указывается:

· Описание всех полей xls -файла данных для загрузки, включая:

o Имя поля

o Признак обязательности заполнения поля

o Пример заполнения поля

o Примечание

· Описание правил загрузки таблицы целевой системы на основании данных для загрузки (очередность в случае нескольких связанных таблиц, алгоритмы поиска по ключевым полям и т.п.)

· Описание заполнения непосредственно полей таблиц целевой системы в случае, если предусматривается что-либо отличное от переноса данных «один в один» из файла данных для загрузки. Актуально для ссылочных полей, например.

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

2.Выявление источников данных

Данный этап может начинаться вместе с предыдущим этапом «1. Подготовка шаблонов загрузки данных».

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

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

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

Тем не менее, на данном этапе нужно постараться выявить как можно больше необходимых данных.

3.Выгрузка исходных данных

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

Наиболее удобным вариантом представляется выгрузка в xls файлы. Многие старые IT -системы поддерживают такой вариант.

Также могут быть варианты выгрузки в csv формат, dbf , xml форматы и прочие.

Стоит отметить, что по тем или иным причинам (вопросы безопасности, например) Заказчик не всегда может предоставить выгрузки данных в полном объеме на этом этапе! Только структура данных и несколько тестовых позиций. Таким образом, может сложиться такая ситуация, что при тестовых и итоговой загрузках будут обнаруживаться некачественные данные в исходных таблицах, что будет приводить к незапланированным ошибкам.

Для минимизации данной проблемы следует оговорить заранее объемы тестовых выгрузок из исторических систем.

4.Мэппинг данных

Мэппинг (data mapping ) - в общем случае процесс сопоставления данных исторических систем и системы-приемника. То есть, исходных данных и данных для загрузки.

Этап мэппинга - наиболее трудоёмкий этап и может занимать более 50% всех работ по задаче миграции.

На данном этапе в полной мере задействуется вся рабочая группа проекта по миграции.

В процессе мэппинга данных необходимо выделить подэтапы мэппинга таблиц и мэппинга полей.

· Мэппинг таблиц, или мэппинг шаблонов - сопоставление таблиц исходных данных и шаблонов данных для загрузки. Соответствие может быть как 1:1, так и N :N . В результате данной работы составляется и поддерживается реестр мэппинга таблиц. Данный подэтап необходим для следующего подэтапа мэппинга полей и для отслеживания общего состояния дел по мэппингу.

Группа шаблонов 1С

Наименование шаблона 1С

Наименование файла-

источника

Правила формирования файла-источника

Ответственный

Статус

Примечание

НСИ

Шаблон_

Номенклатура

Номенк

латура.xls

В системе N установить отбор
. Сохранить в txt
. Открыть в xls, колонки - текстовые
. Первая строка - шапка
. Кол-во столбцов - 15
. Сверить кол-во строк в txt и xls
. Наименование листа всегда "Лист1"

Иванов И.И.

в работе

· Мэппинг полей - сопоставление полей таблиц в рамках уже определенного мэппинга таблиц. Результатом данной работы является реестр мэппинга полей.

№пп

Кл. поле

Обязательный

Имя поля шаблона 1С «Шаблон_Номенклатура»

Описание

Имя поля «Номенклатура.xls»

Алгоритм заполнения

Код

Код элемента справочника

Код

Наименование

Наименование

Да

Это группа

Содержит одно из значений:
. 1 - для групп
. 0 - для элементов

Если длина кода=11 символов и последние 4 символа <> "0000", то это элемент - "0", иначе группа - "1".

Полное наименование

Наименование элемента справочника

Наименование

Если ЭтоГруппа =1 , То "", ИначеЕсли ЭтоГруппа=0, то Наименование.

В рамках данного этапа также следует провести возможные работы по нормализации данных.

5.Подготовка правил трансформации

В отличие от предыдущих этапов, данный этап - технический и предполагает работу разработчика Исполнителя.

На основании согласованных реестров мэппинга полей специалисты Исполнителя разрабатывают правила трансформации данных.

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

При этом требования к данной среде включают в себя:

· Удобство и быстрота разработки правил трансформации;

· Скорость конвертации данных. Файлы на входе и на выходе могут быть и в сотни тысяч строк!

· Возможность работать с несколькими входными файлами одновременно;

· Возможность сохранения правил трансформации в отдельные файлы.

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

Обработка «Консоль запросов» была доработана для возможности делать прямые запросы к файлам xls .

Приведем пример объединения двух исходных xls -файлов Сотрудники. xls


Код сотрудника

Фамилия

Имя

Отчество

Дата рождения

2423

Иванов

Иван

Иванович

17.11.1992

1523

Петров

Василий

Александрович

04.02.1991

4363

Сидоров

Кирилл

Николаевич

01.05.1995

Денисов

Денис

Денисович

01.01.1990

и Операции. xls со страницами:

Списания

Код сотрудника

Дата

Сумма

2423

01.02.2014

1523

02.02.2014

4363

03.02.2014

04.02.2014

100000

2423

05.02.2014

1523

06.02.2014

4363

07.02.2014

2356

08.02.2014

140000

2423

09.02.2014

1523

10.02.2014

4363

11.02.2014

23523

12.02.2014

80000

и Поступления :

Код сотрудника

Дата

Сумма

01.05.2004

02.05.2004

03.05.2004

04.05.2004

2423Дата рождения

Сумма поступление

Сумма списание

Иванов Иван Иванович

2423

17.11.1992

1341234

1010

Петров Василий Александрович

1523

04.02.1991

245245

Денисов Денис Денисович

01.01.1990

380000

320000

Сидоров Кирилл Николаевич

4363

01.05.1995

613382

26336

ИТОГО:

2579861

347842

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

Технологическая последовательность операций трансформации здесь выглядит следующим образом:

С помощью языка запросов Access SQL (дающего существенные дополнительные возможности, по сравнению с языком запросов 1С) создается первоначальный запрос, извлекающий данные из файла xls в среду 1С. При этом уже на данном этапе возможны различные проверки и нормализации данных.

Технология доступа к данным ADO обеспечивает высокую скорость работы.

Рис. 3

2.Запрос на языке 1С - основной запрос, реализующий алгоритм мэппинга полей. А также: обогащение загружаемых данных данными из базы 1С, перегруппирование, объединение с результатами запросов к другим исходным xls -файлам и пр.

3.Постобработка результата запроса 1С при необходимости. Реализуется с помощью скрипта на языке 1С.

Для примера здесь реализуется добавление строки «ИТОГО» по колонкам сумм.

4.Запись итогового набора данных в xls -файл.

В общем случае на выходе мы получаем итоговые файлы для загрузки в целевую базу данных 1С.

Также данный инструмент позволяет сохранять правила конвертации данных в отдельный xml файл:

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

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

Следует отметить, что перед итоговой миграцией обязательно следует провести несколько тестовых. В ходе тестовых миграций Исполнитель совместно с Заказчиков выявляют:

· ошибки конвертации, ошибки загрузки данных

· проводят предварительную оценку качества загружаемых в целевую систему данных

· по итогам тестовых миграций составляют/актуализируют план итоговой миграции

7.Выверка данных

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

· Совпадения итоговых сумм по остаткам, по документам;

· Количественные совпадения, например количество ОС;

· Корректность заполнения отдельных выборочных сущностей;

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

Например:

· Проверка на дубли по ключевым полям. Можно и нужно проводить еще на исходных данных;

· Приведение типов полей;

· Ссылочная целостность;

· Математические нестыковки. Например, проверка на незаполненные численные поля, на которые запланировано деление при трансформации;

· В целом, проверки обязательной заполненности полей;

· Замена некорректных символов. Например, английские символы в кириллических полях («о», «а», «е» и т.п.) Особенно актуально это для ключевых полей!

· Проверка значений строковых полей на соответствие типов системы-приемника (Ограничения по длине)

После завершения итоговой миграции согласно заранее определенной стратегии миграции и плану миграции принимается решение о дальнейшей эксплуатации исторических систем.

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

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

Заключение

В заключении хотелось бы отметить, что когда речь идёт о миграции больших транзакционных систем, к которым относятся и многие конфигурации «1С:Предприятия», переход на новую систему может быть весьма трудоёмким.

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

Хочу рассказать про способ смигрировать операционную систему с одного компьютера на другой, с сохранением всех данных. По факту, это копирование данных с одного винчестера на другой, с использованием стандартных средств. Способ подходит для Windows 7 (возможно для Vista).
Его плюсы:

  • При некоторых условиях — малое время простоя компьютера
  • Возможно использовать на опечатанных компьютерах, когда просто нельзя заменить винчестер
  • Возможность восстановить данные на определённую дату (при соответствующих условиях)
  • Возможно мигрировать по сети

Ну и соответственно минусы:

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

  1. Запускаем архивацию Windows
  2. Выбираем какую-нибудь сетевую папку, куда будем складывать образ (создаём её на подходящем компьютере)
  3. Убираем все галочки с файлов, но ставим галочку "сделать образ восстановления системы"
  4. Свободного места во внешней папке должно быть по количеству даннных на диске (будет создан виртуальный диск (vhd-файл) с виртуальным размером всего винчестра, а физическим — по размеру реальных данных)
  5. Запускаем, ждём пока завершится, в это время продолжаем работать
  6. Берём свежий компьютер, загружаемся с диска или
  7. Вместо установки выбираем восстановление системы
  8. Говорим, что хотим восстановиться с образа, и после тщетных попыток его найти, говорим что он расположен в сети. После этого система поднимет сетевой интерфейс (сама, в установочном режиме, она и такое умеет!)
  9. Если настройки сети не раздаются через DHCP то нажимаем Shift+F10, и в консоли набираем:

    netsh interface ip set address name="Local Area Connection" static 192.168.0.100 255.255.255.0 192.168.0.1 1

    Естественно, нужно заменить IP-шники на правильные для вашей сети (тут по порядку — IP-компьютера, маска сети, IP-шлюза). Для русской версии название будет "Подключение по локальной сети", уточнить можно через команду ipconfig

  10. Указываем сетевое размещение папки (если не получится по имени компьютера, можно использовать его IP)
  11. Указываем, если требуется логин с паролем
  12. Выбираем нужный образ (если их несколько) и восстанавливаем
  13. Ждём, перегружаемся и получаем копию старого компьютера на новом
  14. Выключаем старый компьютер, меняем его на новый, продолжаем работать (естественно, все изменения, которые произошли после архивации — потеряются, если они нужны, примите меры для их отдельной архивации)

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

Какие могт быть проблемы, и что с этим можно сделать:

  • Система отказывается восстанавливаться — убеждаемся что заархивирован винчестер целиком, новый винчестер имеет размер по крайней мере такой же как и старый
  • После восстановления есть неиспользуемое место на винчестере — заходим в управление компьютером и растягиваем разделы на всё доступное место (в упрощённом виде семёрка это позволяет). Можем просто создать дополнительный раздел или воспользоваться специализированными программами для тасования разделов.
  • После восстановления, компьютер улетает в BSOD. Самый тяжёлый случай, обычно связан с тем, что драйвера на старом и новом комьютере сильно отличаются (обычно проблема с контроллером жёстких дисков). Тут можно потанцевать с бубном, попробовать на исходном компьютере удалить все драйвера (оставить стандартные), переключить режим SATA-контроллера в IDE-режим, и только после этого сделать образ.
  • При попытке сделать архив по сети, он падает с ошибкой. — попробуйте сделать архивацию на другой компьютер, попробуйте заменить драйвера сетевой карты, ибо архивируется большой объём данных и могут выплыть проблемы в драйверах (бывали случаи, когда сетевые карты достаточно именитых производителей из-за ошибок в драйверах сжирали всю оперативную память и рушили сервер по недостатку ресурсов).

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

Многое изменилось в мире информационных технологий за последние 32 года, с тех пор как Microsoft выпустила Windows 1.0. Единственное, что осталось прежним, - сложность процессов миграции, или перехода на новую версию операционной системы, и развертывания обновлений. Если спросить пользователей, чего они хотят от миграции, вы получите ответ: плавного перехода с минимальными простоями и привычного взаимодействия с рабочим столом. Некоторые заявят, что вообще против миграции, но таких обычно немного.

Для чего нужна миграция

Существует много причин в пользу миграции на уровне настольных компьютеров. Две основные - безопасность и стоимость эксплуатации. Разработчики Microsoft неуклонно повышали безопасность настольных операционных систем; список технологий обеспечения безопасности, которых не было в старых версиях, производит сильное впечатление. Угрозы становятся все более изощренными, и Microsoft пришлось добавить такие функции, как запуск на первом этапе загрузки антивредоносного решения ELAM (https://docs.microsoft.com/en-us/windows-hardware/drivers/install/early-launch-antimalware) и управляемый доступ к папкам (https://docs.microsoft.com/en-us/windows/threat-protection/windows-defender-exploit-guard/controlled-folders-exploit-guard), превосходный способ защиты от программ-шантажистов, сам по себе достаточный повод задуматься о миграции. Безопасность - особенно серьезная проблема для компаний, все еще работающих с версиями операционной системы Windows 7 (и даже Windows XP), поскольку с тех пор угрозы значительно изменились, и усовершенствования, внесенные в Windows 10, в некотором отношении представляют самый начальный и не всегда достаточный уровень безопасности.

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

Процесс миграции

На приведенном рисунке показана простая схема основных этапов процесса миграции.

Рисунок. Основные этапы процесса миграции

Существует много разных подходов к тому, как проводить каждый этап; целые книги написаны о том, как выполнять, например, пилотные ИТ-проекты. Коротко рассмотрим каждый этап с позиций миграции.

Инвентаризация среды

Многие компании располагают развитыми системами инвентаризации и управления, с помощью которых можно получить ответы на вопросы типа «как много активно используемых настольных компьютеров работает с Windows 8.1 с пакетом обновления 2?» или «сколько ноутбуков Dell XPS 13 имеется в наличии?» Системы управления, такие как System Center Configuration Manager (SCCM) и Microsoft Intune, можно задействовать для инвентаризации, если вы располагаете достаточными средствами и развернули их. В противном случае вам, возможно, придется прибегнуть к менее эффективным методам, например запросить отзывы пользователей, подготовить средство инвентаризации и продвигать его через групповую политику или вручную выполнить инвентаризацию и настроить параметры систем. Ключевое условие на данном этапе - получить точную модель существующих систем, чтобы правильно планировать нужное состояние.

Проектирование требуемого состояния

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

  • Что вы переносите из исходного пункта (необходима инвентаризация среды).
  • Что вы переносите в пункт назначения. При этом необходимо ответить на многочисленные вопросы, в том числе: на какую версию Windows выполняется переход? Вы остаетесь на физических настольных компьютерах, переходите в локальную виртуальную среду или перемещаетесь в «облако»? Как будет настроена целевая среда? Что делать в случае сбоя миграции или невозможности переноса систем?
  • Ваше расписание. Большинству компаний приходится выполнять миграцию в течение продолжительного периода, а не одним гигантским прыжком. Когда следует переводить тех или иных пользователей? Как выглядит расписание в целом и как на нем отражаются внешние события (например, начало учебного года, конец финансового года или сезон распродаж)?
  • Ваш бизнес. Вы выполняете миграцию для достижения определенных целей? Возможно, существуют бизнес-приложения, которые необходимо перенести, или особые требования нормативных актов либо соответствия к новой среде.

Цель данного этапа - помочь вам понять, какими должны быть возможности завершенной среды и как перейти из вашей текущей ситуации в нужное положение. Здесь невозможно потратить слишком много времени или уделить чрезмерное внимание деталям. Старая пословица - семь раз отмерь, один раз отрежь - лучшее руководство к действию. На этом этапе обычно не требуется вносить какие-либо изменения в среду.

Приступаем к созданию прототипа

Теперь вы приступаете к строительству среды, описанной на этапе проектирования требуемого состояния. Представьте, что вы строите дом: вы начинаете на пустом участке земли, вынимаете грунт, заливаете бетон для фундамента и начинаете возводить стены. Существует определенный минимальный объем работ, который необходимо выполнить, чтобы въехать в дом, но вы можете жить и в недостроенном доме. То же относится и к миграции: прежде чем выполнить пилотный проект, по крайней мере часть новой среды должна быть спроектирована, построена и протестирована. Например, для внутренних развертываний инфраструктуры виртуальных рабочих столов VDI потребуется создать среду гипервизора соответствующего размера, получить нужные лицензии и т. д., прежде чем можно будет перенести в рамках пилотного проекта один настольный компьютер. Но не обязательно полностью строить всю среду требуемого состояния. Расписание данного этапа часто составляют таким образом, чтобы согласовать развертывание различных компонентов с реальной миграцией.

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

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

Пилотный этап

Во время проектирования нового самолета или ракеты инженеры планируют обширную программу испытательных полетов. У каждого испытательного полета есть конкретная цель, которая может быть простой (проверить выпускание и подъем шасси на разных скоростях) или сложной (маневрирование истребителей 2 на 2). Летчики-испытатели не импровизируют во время полетов, они строго следуют заданию на каждый полет, достигая поставленных целей. Ваш пилотный проект должен работать точно так же: укажите, что нужно доказать, протестировать или проверить, а затем позаботьтесь о том, чтобы все действия в пилотном проекте были ориентированы на достижение поставленной цели. Слишком часто пилотная программа на самом деле означает «выберите нескольких случайных пользователей и посмотрите, что испортится». Хорошая пилотная программа начинается со структурированного тестирования набора базовых функций - миграция одного пользователя, миграция группы пользователей, тестирование полученной в результате среды при выполнении повседневных задач, а затем переход к более сложным сценариям. Структурированное тестирование особенно важно, если вы переходите из традиционной настольной среды в «облако» или к виртуальным элементам. Потребуется время, чтобы научиться управлять «облачной» средой или гипервизором, в том числе получать поддержку поставщика в случае неполадок на пилотном этапе.

Хотя это действие не считается отдельным этапом, данный момент самый подходящий, чтобы познакомить пользователей с новой средой. Было бы прекрасно, если бы можно было развернуть новую настольную среду, не обучая пользователей, но в действительности необходимо выделить время для ознакомления пользователей с особенностями среды. Имея стабильную пилотную программу, вы можете проводить демонстрации, записывать обучающие видеофильмы или предоставить пользователям «песочницу» с ограниченным доступом к новой среде в процессе обучения. Не забудьте, что обучение, вероятно, понадобится и техникам группы поддержки. Не исключено, что потребуется дополнительный персонал, чтобы справиться с возросшим потоком запросов на обслуживание: «Не могу найти функцию X» - типичная жалоба на ранних стадиях миграции.

Развертывание

Основные события происходят на этапе полномасштабного развертывания. Этот этап миграции не сильно отличается от любого другого сложного технического проекта: вы определяете график миграции различных групп пользователей, а затем выполняете запланированные шаги, решая проблемы по мере их возникновения. Если этапы построения прототипа и пилотный проект выполнены грамотно, у вас не должно возникнуть серьезных новых проблем. Как правило, при проектировании данного этапа лучше проявлять осторожность; если вы планируете переносить 100 настольных компьютеров в неделю, а в действительности вам удается переносить 150, это лучше, чем планировать 150, а сделать 100. Не забудьте о праздниках, отпусках и других ограничениях, связанных с персоналом. Для успешного развертывания необходимо учитывать, что вы переносите среду, от которой зависит работа пользователей, поэтому делать это нужно так, чтобы они испытали как можно меньше неудобств.

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

Эксплуатация

Этап эксплуатации немного скучен, поскольку вынуждает вернуться к тому, с чего вы начали: обычной поддержке и операциям управления в стабильной среде. На данном этапе выполняется повседневная работа по обслуживанию новой среды, в том числе исправление неполадок, с которыми сталкиваются пользователи, тестирование и применение регулярных обновлений безопасности от поставщика. Пилотный этап подобен подъездной дороге к процессу миграции, а данный этап - автострада; вы без затруднений движетесь на постоянной скорости (по крайней мере, до следующего крупного обновления от Microsoft).

Упрощение процесса

Правильный выбор инструментов позволит заметно упростить пилотный этап и выпуск в производство. Пользователи должны иметь возможность работать с минимальными неудобствами, и лучший способ удовлетворить эту потребность - продуманное проектирование, миграция профиля и управляемые решения разных компаний. Например, компания Liquidware предлагает пакет Workspace Environment Management, который поможет выполнить каждый этап миграции Windows, в том числе оценку и проектирование с использованием Stratusphere, и миграцию с помощью ProfileUnity User Management. Stratusphere обнаруживает установленные и используемые приложения и помогает оценить и подготовить оборудование для Windows 10. С помощью ProfileUnity можно без проблем переносить профили пользователей между любыми версиями Windows и значительно уменьшить трудоемкость миграции. Технология Profile Bridge, применяемая в ProfileUnity, позволяет поместить профили пользователей в контейнеры и без проблем работать с ними на разных версиях Windows, совместимых как в обратном, так и в прямом направлении. Благодаря функциональности ProfileUnity сокращается время перемещения и синхронизации, и вы можете выполнять развертывание на настольных компьютерах, ноутбуках, виртуальных и «облачных» системах, чтобы обеспечить пользователям привычную среду на всех устройствах одновременно.

Перевод существующей информационной системы (ИС) компании на любую новую платформу, в том числе и на Microsoft Windows 2000, - сложная и трудоемкая задача, решение которой требует системного подхода и планирования.

Конкретный план работ по внедрению ОС Windows 2000 и компонентов BackOffice Server 2000 (именно такой комплекс мы и называем в данной статьей платформой Windows 2000) зависит от масштаба и особенностей вашей организации. В общем случае «правильный» план работ выглядит следующим образом:

  • анализируется существующая ИС компании;
  • планируется структура новой ИС, использующая все преимущества платформы Windows 2000;
  • выполняется пилотный проект;
  • устанавливается и настраивается программное обеспечение.

Анализ существующей системы

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

Анализ аппаратного обеспечения. Основные цели - определить, соответствует ли аппаратное обеспечение требованиям платформы Windows 2000, и определить варианты его наиболее эффективного использования. Важно, что при переходе на Windows 2000 необязательно отказываться от использования устаревшей техники - например, при использовании терминального сервера устаревшая техника будет работать даже с большей эффективностью, чем под управлением предыдущих версий Windows (см. В. Жирнов, «Терминальные решения», Enterprise Partner №15/2000, с. 24).

Анализ структуры коммуникаций. Основная цель - прорисовка детального плана коммуникаций, который можно будет использовать на этапе планирования структуры новой ИС.

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

Составление перечня серверного ПО и используемых приложений. Цель - получение сводного отчета, в котором будут перечислены характеристики серверов, функции, которые они выполняют, используемые приложения. После составления этого отчета проводится комплексный анализ возможности перевода информационной инфраструктуры на платформу Microsoft Windows 2000; при этом рассматривается возможность оптимизировать использование имеющихся серверов.

По итогам первого этапа вы получите комплексное представление о текущем состоянии ИС и выясните, насколько она соответствует требованиям платформы Windows 2000, а также каковы приблизительные сроки и стоимость полного цикла работ по переводу системы на эту платформу.

Планирование структуры новой системы

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

План информационной инфраструктуры компании по окончании миграции. В нем отражается будущая доменная структура компании, организация сетевых сервисов, обеспечение безопасного доступа в Интернет, почтовая инфраструктура, схемы резервного копирования и восстановления серверов в случае аппаратных сбоев. Кроме того, предусматривается возможность восстановления прежней инфраструктуры компании - на случай возникновения проблем при переводе серверов на платформу Windows 2000. Новое решение можно внедрять параллельно существующему. Например, если хранилище данных компании основано на СУБД Oracle и было принято решение о переходе на СУБД Microsoft SQL Server 2000, то можно создать такое решение, которое позволит сосуществовать этим двум системам на тестовый период. Тем самым снижается до минимума возможность сбоев или простоев и обеспечивается плавный переход на новую платформу.

План миграции серверов. В нем описывается порядок перевода серверов на платформу Windows 2000, формулируется список требований, которые должны выполняться при миграции. Фактически это станет основным документом, по которому будут работать инженеры, выполняющие миграцию.

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

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

Итогом второго этапа должен стать календарный план-график работ по построению ИС на базе платформы Microsoft Windows 2000, с указанием видов работ, их сроков и стоимости, а также с описанием ожидаемой функциональности системы.

Пилотный проект

На данном этапе необходимо протестировать работу критичных бизнес-приложений и функций в условиях, приближенных к платформе Windows 2000. Можно смоделировать работу критичных приложений на тестовом стенде, имитирующем внедряемую структуру. Можно провести различного рода тестирования оборудования, с тем чтобы выяснить возможности использования различных конфигураций и настроек программного и аппаратного обеспечения. Можно провести сравнительное тестирование имеющейся и внедряемой систем, например, тестирование текущих линий связи с целью выяснения возможностей использования VPN-каналов или синхронизации Windows 2000 Active Directory. Кроме того, на данном этапе можно протестировать используемые в настоящий момент приложения на платформе Windows 2000.

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

Установка и настройка программного обеспечения

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

Как видите, описание этого этапа занимает в статье минимум места - именно потому, что он должен быть полностью описан в ходе трех подготовительных этапов. Осуществляться он должен в кратчайшие сроки. Итогом должна стать установленная, налаженная и протестированная ИС, в полной мере реализующая возможности платформы Microsoft Windows 2000. И если вы не пренебрегли подготовительными этапами и привлекли к проекту профессиональных исполнителей, то так оно и будет.

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

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

Жизненный цикл процесса миграции начинается после формирования стратегии и оценки рисков этапа миграции данных. Схема процесса миграции представлена на диаграмме процесса.

Целью любого процесса миграции данных является маппинг информации, типов и форматов данных старой системы с типами и форматами данных новой системы. При миграции данных этапу «Data Extraction» соответствует выбор и выгрузка данных из старой системы, а этапу «Data Loading» соответствует перенос полученных данных старой системы и их загрузка в новую систему. Ниже процесс миграции будет рассмотрен более детально.

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

Этап сбора требований к данным для миграции, как правило, очень тесно взаимосвязан со следующим этапом - разработки алгоритмов переноса данных из системы-источника в целевую систему. На этапе проектирования аналитиками создаются подробные спецификации с описанием типов данных системы-источника и их взаимосвязей с типами данных целевой системы. В таких спецификациях описывается структура данных для миграции, их объемы, источник, назначение. Спецификация является источником для постановки задач разработчику, который будет проектировать и разрабатывать специализированное ПО для переноса данных. На этапе проектирования проводится анализ существующей архитектуры данных в системе-источнике - анализ «as is» и разработка архитектуры данных в целевой системе - «to be». При анализе существующей архитектуры данных выявляются и учитываются все ограничения и ИТ-инфраструктуре, а также их влияние на работу целевой системы с мигрированными данными. Выходными артефактами анализа архитектуры данных могут являться такие документы, как логические модели данных (ER-диаграммы, модели баз данных), словари и справочники с детальным описанием каждого элемента и его атрибутов, описание бизнес-правил работы с данными, сведения о системах, взаимодействующих с системой-источником при информационном обмене и интеграции.

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

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

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

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

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

Методология проведения миграции данных, приведенная выше, предполагает, что наиболее «узким» местом при организации данного этапа проекта является этап планирования и работы с бизнес-требованиями заказчика, то есть сбор требований и проектирование, поэтому рассмотрим подходы к решению задач этих этапов подробнее в следующих частях работы. Помимо этапов планирования и разработки бизнес-требований особое внимание стоит уделить этапу оценки результатов работ этапа миграции данных, так как в соответствии с циклом Деминга (PDCA) , именно проведение мероприятий по оценке работ является условием успешности проведения аналогичных работ в аналогичных проектах.

1.1. Особенности планирования миграции данных

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

  • - Документ о рамках миграции данных;
  • - План работ по миграции данных с указанием ответственных членов проектной команды;
  • - План коммуникаций на этапе миграции.

Организация этапа миграции в проектах внедрения ИС начинается с этапа планирования, где необходимо составить план работ, рассчитать необходимые ресурсы и сроки выполнения.

Пакеты работ на этапе миграции должны соответствовать фазам жизненного цикла процесса, примерная структура плана-графика работ может быть следующей:

  • - Планирование и обозначение рамок миграции данных;
  • - Бизнес-анализ и документирование требований;
  • - Выбор, настройка или проектирование и разработка специализированного ПО;
  • - Перенос данных;
  • - Валидация мигрированных данных;
  • - Опытная эксплуатация;
  • - Пост-миграционные работы по очистке и тестированию;
  • - Согласование результатов миграции, оценка и закрытие этапа проекта внедрения.

Назначение ответственных членов проектной команды за выполнение пакетов работ этапа миграции данных происходит на этапе планирования после составления плана работ.

Выбранным проектным ролям приведены в соответствие кластеры - зоны ответственности, определенные в методологии MSF . Стоит отдельно отметить, что под управлением продуктом в контексте миграции будем понимать управление качеством мигрированных данных и работоспособностью целевой системы после миграции. Управление релизами (выпусками) в терминах процесса миграции - осуществление итераций процесса миграции, получение и загрузка данных миграции.

В соответствии с моделью MSF предполагается следующее распределение зон ответственности между ролевыми кластерами:

  • - Системный аналитик - управление программой, удовлетворение потребителя;
  • - Менеджер по разработке - управление программой, управление продуктом, управление выпуском;
  • - Разработчик - разработка алгоритмов или специализированного ПО для переноса данных в целевую Систему, специализированного ПО (при необходимости);
  • - Тестировщик - тестирование, управление выпуском.

Для того чтобы наглядно продемонстрировать участие привлеченных человеческих ресурсов в мероприятиях процесса миграции данных составим матрицу RACI - приведена в приложении 1 к работе (см. Приложение 1 - Матрица RACI для работ по миграции данных).

Нужно оговориться, что менеджер по разработке (технический менеджер) рассматривается как лидер команды, занимающейся миграцией данных, поэтому он несет ответственность за проведение всего процесса, в целом. Однако если миграция данных проводится в рамках масштабного проекта внедрения ИС, где назначен менеджер всего проекта, то технический менеджер этапа миграции будет только исполнителем в задачах, касающихся определения сроков и подбора персонала. Решения по вопросам персонала, ресурсов и сроков в таком случае принимается менеджментом проекта коллегиально.



Понравилась статья? Поделитесь с друзьями!
Была ли эта статья полезной?
Да
Нет
Спасибо, за Ваш отзыв!
Что-то пошло не так и Ваш голос не был учтен.
Спасибо. Ваше сообщение отправлено
Нашли в тексте ошибку?
Выделите её, нажмите Ctrl + Enter и мы всё исправим!