Назначение сервиса

Modus Migration Service переносит группы отчётов, отчёты, наборы данных и связанные объекты между аналитическими порталами ModusBI. Промежуточным источником данных служит отдельный Git-репозиторий поддерживаемой модели.

Сервис позволяет организовать:

  1. Перенос информации о, отчетах, наборах данных и группах отчетов между различными аналитическими порталами
  2. Выполнять поддержку выбранных объектов в виде стабильной поставки
  3. Обеспечить версионирование отчетов в Git-репозиторий
  4. Выполнять ревью изменений поддерживаемой модели
  5. Выполнять автоматическое разворачивание данных в аналитическом портале через rest api

 

Перед началом работы

Подготовьте:

  1. учётные данные порталов (адрес, логин и пароль, под которыми будет выполняться авторизация сервиса);
  2. отдельный Git-репозиторий поддерживаемой модели;
  3. запросите токен сервиса, если администратор включил авторизацию.

Вход в сервис

  1. Откройте адрес сервиса в браузере.
  2. Введите токен в поле «Токен», если открылась страница «Вход».
  3. Нажмите кнопку «Продолжить»

Добавление портала

Порталы-источники и порталы-приёмники создаются одинаково.

  1. Перейдите в раздел  «Порталы»
  2. Укажите код, название и URL портала.
  3. При необходимости измените имена переменных окружения для логина и пароля (по умолчанию они заполняются автоматически).
  4. Введите логин и пароль.
  5. Установите флаг Проверять TLS-сертификат, если нет отдельной причины отключать проверку.
  6. Нажмите Сохранить.
  7. Нажмите Проверить подключение.

 

Создание проекта

Проект связывает портал-источник с отдельным Git-репозиторием модели. Выбранный проект определяет модель, портал-источник, профили поставки, Git и список заданий. Портал-приёмник в проекте не закрепляется и выбирается отдельно для каждой поставки.

  1. Откройте раздел «Проекты».
  2. Укажите код и понятное наименование проекта.
  3. Укажите корень отдельного Git-репозитория поддерживаемой модели.
  4. Выберите портал в поле «Портал-источник».
  5. Нажмите кнопку «Проверить источник».
  6. Нажмите кнопку «Сохранить проект»

 

Примечание — в системе должен быть установлен Git (https://git-scm.com/) для инициализации git хранилища в будущей папке проекта выполните в папке команду -git init

 

Переключить проект

Переключатель Проект находится в верхней панели.

Он меняет рабочий контекст:

  • портал-источник;
  • путь к Git-модели;
  • профили поставки;
  • Git-статус;
  • список заданий.

Перед экспортом, редактированием модели и поставкой проверьте, что выбран нужный проект.

Выбор объектов для поставки

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

  1. Откройте раздел «Перенос».
  2. Нажмите кнопку «Обновить с портала» в блоке «Источник».
  3. Снимите флаг «Только поддерживаемая модель», если нужно добавить объект, которого ещё нет в модели.
  4. Переключайтесь между вкладками «Группы», «Отчёты» и «Датасеты».
  5. Найдите объекты по идентификатору или наименованию и установите флаги.

После обновления сервис автоматически отмечает объекты, которые уже входят в поддерживаемую модель. Соответствие модели и портала определяется по исходному идентификатору объекта.

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

 

 

Расчёт зависимостей

Перед сохранением отчетов в модель обязательно необходим поиск зависимых объектов для исключения ошибок переноса.

Выберите один из режимов:

  • «Минимальные зависимости» — добавить собственные наборы данных выбранных отчётов без переходов в соседние отчёты;
  • «Каскадные зависимости» — рекурсивно добавить отчёты из точных ссылок /report/{id} и наборы данных всех найденных отчётов.
  1. Сначала установите флаги всех нужных групп и отчётов.
  2. Нажмите кнопку выбранного режима зависимостей.
  3. Дождитесь завершения расчёта.
  4. Проверьте автоматически отмеченные объекты.

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

Перенос данных в портал приемник

Для переноса данных необходимо выбрать объекты для переноса, выбрать портал приемник, настроить сопоставления, проверить возможность переноса.

Выбор объектов для переноса

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

  1. Нажмите кнопку «Загрузить из Git-модели» для того чтобы загрузить информацию о поддерживаемых объектах из хранилища, или «Обновить с портала», чтобы выполнить загрузку актуальных данных портала (при этом, все изменения всё равно нужно будет сохранить в модель) .
  2. Выберите портал в поле «Портал-приёмник».
  3. Выберите режим поставки.
  4. Выберите способы сопоставления отчётов и наборов данных.
  5. Рассчитайте минимальные или каскадные зависимости, если поставка содержит отчёты.

Доступны режимы:

  • полная поставка;
  • только отчёты;
  • только наборы данных.

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

Настройка сопоставлений

Выберите поиск отчётов и наборов данных:

  • «По имени» — использовать уникальное техническое наименование name;
  • «По ID» — использовать числовой идентификатор объекта.

Примечание — используйте поиск по идентификатору только для контуров с заранее согласованными идентификаторами. Для модели, которую наполняют разные порталы, используйте наименования.

  1. Нажмите кнопку «Заполнить» в блоке «Источники данных».
  2. Укажите целевой источник для каждого исходного источника.
  3. Откройте блок «Соответствие объектов».
  4. Задайте явные соответствия групп, отчётов или наборов данных, если автоматический поиск неприменим.

Проверка и выполнение поставки

  1. Нажмите кнопку «Проверить план».
  2. Дождитесь завершения проверки.
  3. Исправьте все ошибки, если план заблокирован.
  4. Проверьте лог предупреждений.
  5. Нажмите кнопку «Выполнить поставку», если план исполним.
  6. Подтвердите запись объектов.
  7. Проверьте результат в разделе «Задания».

Проверка плана читает данные, но ничего не записывает в целевой портал. Перед фактической записью сервис повторяет проверку.

Работа с изолированными контурами

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

  1. Сохраните снимок исходного портала в модель.
  2. Зафиксируйте и отправьте изменения модели в Git.
  3. Получите нужную ветку Git в среде целевого портала.
  4. Загрузите состав из Git-модели.
  5. Проверьте план и выполните поставку.
DEV → экспорт → Git → проверка плана → PROD

 

Управление составом модели

Пользователь может управлять поддерживаемым составом объектов в разделе «Поддерживаемая модель».

  1. Откройте раздел «Поддерживаемая модель».
  2. Проверьте группы, отчёты, наборы данных, ресурсы и контрольные суммы.
  3. Установите флаги объектов, которые должны остаться в модели.
  4. Нажмите кнопку «Установить выделение», чтобы добавить обязательные зависимости.
  5. Нажмите кнопку «Сохранить состав».
  6. Подтвердите удаление неотмеченных объектов.

Примечание — только команда «Сохранить состав» удаляет неотмеченные объекты из Git-каталога. Установка или снятие флагов в разделе «Перенос» состав модели не изменяет.

Верните удалённый объект повторным экспортом с портала или восстановлением нужной версии через Git.

 

Контроль заданий

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

Откройте раздел «Задания» и проверьте статус:

  • queued — задание ожидает запуска;
  • running — задание выполняется;
  • succeeded — задание завершено успешно;
  • failed — задание завершено с ошибкой до восстановления;
  • rolling_back — выполняется автоматическое восстановление;
  • rolled_back — ошибка поставки устранена восстановлением;
  • rollback_failed — восстановление требует ручной проверки;
  • interrupted — выполнение прервано перезапуском сервиса.

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

Восстановление состояния

  1. Откройте раздел «Задания».
  2. Разверните нужную успешную поставку или поставку со статусом rollback_failed.
  3. Нажмите кнопку «Восстановить состояние до поставки» или «Повторить восстановление до поставки».
  4. Дождитесь завершения отдельного задания восстановления.
  5. Проверьте журнал и объекты целевого портала.

Восстановление удаляет объекты, созданные поставкой, и возвращает предыдущие версии обновлённых объектов в обратном порядке.

Связи контента