Использование интерфейса WorkFlow - Продукт Modus BI
Интерфейс «WorkFlow» дает возможность проектировать сценарии обработки данных:
- Размещайте шаги (обработчики) на холсте, связывая их друг с другом для передачи между шагами данных или потока управления.
- Настраивайте для шага правила обработки данных в визуальном мастере — сейчас возможно использовать десятки готовых мастеров (шаблонов) для выборки, группировки, соединения, объединения, дополнения, отбора данных и других ETL-операций.
- Настраивайте в нужных точках выполнения сценария сбор и сохранение статистики для профилирования и проверки качества данных через специальный шаблон «Просмотр».
При запуске сценария на исполнение в интерфейсе отображается ход выполнения процесса, сохраняются логи и статистика по данным.
Описание интерфейса «WorkFlow»
Для настройки процесса обработки данных разместите шаги на холсте, выбирая шаблоны обработчика из списка шаблонов (см. рисунок ниже, 1 и 2) и связывая шаги друг с другом.
Список с кратким описанием назначения и основных функций шаблонов / мастеров обработки описаны в разделе «Шаги сценария».
Шаги связываются стрелкой, которая означает передачу управления или передачу данных (см. рисунок ниже, 3).
Вы можете изменить наименование в текстовом поле над шагом (см. рисунок ниже, 4).
Для настройки параметров шага нажмите на «карандаш» в верхнем левом углу шага (рисунок выше, 5). В новом окне откроется мастер настройки шага. Настройка с использованием шаблонов мастера описана в разделе «Шаги сценария».
В мастере настройки находятся вкладки «Выбор источника», «Настройка полей запроса» и «Результат». На закладке «Результат» отображается текст запроса и результат запроса:
Элемент управления «Просмотр» (рисунок ниже) предназначен для просмотра образца (сэмпла) данных. Кнопка находится в правом нижнем углу шага. Если при открытии отображается сообщение «Нет данных», выполните сценарий до текущего шага, чтобы получить сэмпл данных. Для этого нажмите на кнопку «Выполнить до этого шага».
Вы также можете изменить количество отображаемых строк, настроив параметр «Размер выборки».
Элемент управления для шага «Выполнить до этого шага» (рисунок ниже, 1) предназначен для запуска выполнения сценария до текущего шага — при выполнении отображается прогресс (2) и лог выполнения (3).
В сценарии возможно настроить сбор и сохранение статистики для профилирования и контроля качества данных в нужных точках. Для этого используется специальный шаблон «Просмотр».
Сохранение сценария
После настройки диаграммы используйте кнопки в верхней панели:
- «Сохранить» — сохраняет сценарий.
- «Запустить» (S) — начинает выполнение сценария.
- «Авторасстановка» — используется для автоматического выравнивания шагов на холсте (удобно при сложных схемах). После авторасстановки вернуть предыдущее расположение можно только вручную.
Используйте авторасстановку для быстрого упорядочивания сложных схем, когда важна логика связей, а не точное расположение элементов.
Прогресс выполнения сценария отображается на шкале слева (P). Завершенные шаги подсвечиваются зеленым. Вся информация о работе шагов (время, длительность) отображается в «Логе выполнения» (L).
После завершения выполнения сценария возможно проанализировать «Лог выполнения» для оптимизации наиболее длительных шагов. Если возникнет ошибка, ее описание будет отображено в колонке «Ошибка».
Список шаблонов шагов сценария
Для реализации концепции «low-code», которая позволяет настраивать ETL-операции без специальной подготовки и написания кода, в Modus ETL доступны мастера визуальной настройки обработки данных — шаблоны шагов сценария.
Ниже приведен список доступных шаблонов. Этот список будет пополняться и расширяться в новых версиях продукта.
Шаблон шага сценария |
Описание функционала |
Есть в «WorkFlow»? |
---|---|---|
Произвольный код |
||
Произвольный код SQL |
Для ввода кода на языке SQL |
Да |
Произвольный код 1С |
Для ввода кода на языке 1С |
Да |
Произвольный запрос 1С |
Для ввода на языке 1С-запросов |
|
Данные |
||
Источник |
Присоединяется ко входу шага-обработчика данных. Предназначен для выбора таблицы-источника. Нажав на элемент управления возможно просмотреть сэмпл данных |
Да |
Приемник |
Присоединяется к выходу обработчика данных. Предназначен для формирования таблицы с набором полей из входящего потока и сохранения данных в таблицу. Элемент управления — для получения и просмотра сэмпла данных из таблицы. |
Да |
Просмотр |
Используется для сохранения и просмотра статистики по данным |
Да |
Очистка таблицы |
Производит очистку таблицы из базы данных, которую надо указать в поле «Приемник данных» |
Да |
Перенос данных |
Предназначен для переноса данных между двумя различными базами внутри одного сценария |
Да |
Примитивы обработки данных |
||
Произвольная выборка данных |
Для настройки выборки данных из одной или нескольких таблиц с функциями выбора полей, соединения таблиц, отбора и сортировки данных. |
Да |
Группировка |
Группирует данные, аналогично SQL-функции GROUP BY. Настраиваются: поля группировки и поля агрегатов с выбором функций: SUM, MIN, MAX, AVG, COUNT. |
Да |
Соединение |
Дополняет данные основной таблицы/потока полями из одной или нескольких таблиц. Соединяет таблицы, аналогично SQL-функции JOIN. Настраиваются условия соединения таблиц и поля из таблиц с возможностью применения функций |
Да |
Объединение |
Объединяет данные таблиц аналогично SQL-функции UNION. Настраиваются соответствия полей основной и добавляемых таблиц |
Да |
Отбор |
Для отбора/фильтрации данных по условиям. Настраиваются: «Поле» / «Условие» / «Значения». |
Да |
Маппинг полей двух таблиц |
Копирует данные из одной таблицы в другую по настроенным правилам соответсвия (маппинга) полей |
Да |
Маппинг полей двух таблиц с предварительным удалением |
Работает аналогично шаблону «Маппинг 2х таблиц», с одним отличием. На вкладке «Связь полей» задаются поля (ключ) для поиска. Если какие-то записи совпадут по ключу поиска, то они в таблице-приёмнике будут заменены соответствующими записями из таблицы-источника |
Да |
Unpivot |
Транспонирует выбранные столбцы таблицы |
Да |
Pivot |
Для формирования сводной таблицы настраиваются:
|
Да |
Создание таблицы БД |
Используется для создания таблиц в базе данных хранилища |
Да |
Топ N |
Для выбора строк по условиям. Настраивается:
SQL эквивалент: top N / limit N с условием Order by |
Да |
Разделение строки |
разделяет строки на массив подстрок, используя указанный разделитель |
Да |
Очистка таблицы | очищает таблицу | Да |
Обновление таблицы | обновляет таблицу | Да |
Обновление таблицы из таблицы-источника | обновляет таблицу из таблицы-источника | Да |
НСИ — дополнение данных |
||
Справочник НСИ |
Эталонный справочник модуля НСИ для дополнения или обновления первичных данных |
Да |
Маппинг НСИ |
Таблица соответствия между сущностями: справочниками, категориями / группами |
Да |
НСИ. Дополнение из эталонного справочника |
Дополнение таблицы значениями из эталонного справочника НСИ. Настраиваются: связь таблиц — поля и условия; поле(я) для дополнения таблицы |
Да |
НСИ. Обновление из эталонного справочника |
Замена значений в таблице значениями из эталонного справочника НСИ. Настраиваются:
|
Да |
НСИ. Дополнение из маппинга |
Дополнение таблицы значениями из маппинга НСИ. Настраиваются связь таблиц — поля и условия связывания, а также поле(я) для дополнения исходной таблицы |
Да |
Python |
||
Кластеризация |
Кластеризация используется для группировки объектов (наблюдений, событий) на основе данных, описывающих свойства объектов. |
Да |
Линейная регрессия |
Регрессия используется для решения задач «Data Mining», таких, как прогнозирование и численное предсказание. Требуется предварительное обучение на обучающей выборке. Возможно выбрать из пяти линейных («Linear regression», «Ridge», «Lasso», «Elastic Net», «Lars») и двух древовидных («Decision tree», «Random forest regressor») моделей |
Да |
Сервисные операции |
||
Настройка замены пустых значений |
Заменяет значения по образцу |
Да |
Выгрузка таблицы в файл |
Настраиваются параметры для выгрузки данных в файл |
Да |
Настройка индексов таблицы |
Создает индексы в таблице для ускорения поиска |
Да |
Мастер настройки расчета фасетов таблицы |
Расчет статистических данных таблицы (фасетов), котрые используется для быстрого знакомства с данными и профилирования данных |
Да |
Очистка хранилища от бэкапов |
Удаления архивных копий таблиц, которые копируются и сохраняются при обновлении данных в целевой таблице «Составом выгрузки» в режиме «Скопировать и добавить». Такие архивные таблицы имеют общий признак: суффикс «_ГГГГММДД_Время» в наименовании |
Да |
Копирование бинарного файла в «BASE64» |
Файлы, подходящие под заданную маску, кодируются по алгоритму «BASE64» и сохраняются в текстовый выходной «CSV»-файл |
Да |
Настройка удаления пробелов/спецсимволов из полей таблицы |
Очистка строковых полей от «плохих» символов |
Да |
Запуск принудительного обновления куба |
Настраиваются параметры интеграция с сервером «Полиматики» для обновления кубов по расписанию |
Да |
Сложный сценарий |
||
Вставка результата запроса в таблицу |
Записывает в выходную таблицу |
Да |
Смена имен таблиц |
Изменяет имя таблицы по образцу |
Да |
Создание временной таблицы |
Создает временную таблицу |
Да |
Верификация данных |
||
Начало процесса верификации |
Осуществляется запись в специальный журнал процессов о начале процесса верификации |
Нет |
Заменить значение |
Настраивается замена значения при обнаружении ошибки |
Нет |
Записать в лог ошибок |
Настраивается запись в лог ошибок описания ошибки при ее обнаружении |
Нет |
Завершение процесса верификации |
Осуществляется запись в специальный журнал процессов об окончании процесса верификации, количестве обработанных строк и количестве выявленных ошибок |
Нет |
Мэппинг данных с заменой |
Осуществляет проверку и замену значений поля таблицы в соответствии с предварительно настроенным справочником эталонных значений |
Нет |
Мэппинг предварительный анализ |
Осуществляет проверку в соответствии с предварительно настроенным справочником эталонных значений |
Нет |
Проверка символьной строки |
Осуществляется проверка значений поля на соответствие предопределенным правилам, например, проверка корректности СНИЛС, ИНН и т.п. |
Нет |
Проверка на NULL |
Осуществляется поиск незаполненных (NULL) значений в поле таблицы для символьных, числовых или календарных типов данных. |
Нет |
Мэппинг данных с дополнением |
Осуществляет проверку и дополнение таблицы новым полем в соответствии с предварительно настроенным справочником эталонных значений |
Нет |
Типы шаблонов
- Шаблоны из группы «Произвольный код» используются для ввода кода на языке 1С / SQL.
- Шаблоны из группы «Данные» предназначены не для обработки данных, а для настройки источников, приемников и правил сбора статистики по данным.
- Шаблоны из группы «Примитивы обработки данных» используются для настройки выборок из таблиц, обработки-трансформации данных определенным способом.
- Шаблоны из группы «НСИ — дополнение данных» используются для операций стандартизации и категоризации данных с использованием объектов НСИ — эталонных справочников и маппингов.
- Шаблоны из группы «Python» используются для решения задач DataMining сегментации объектов, прогнозирования, предсказания и т.д., с использованием моделей продвинутой аналитики и библиотек Python.
- Шаблоны из группы «Сервисные операции» используются для выгрузки таблиц в файлы, настройки индексов, замены значений по определенным правилам, очистки хранилища от архивных копий таблиц, кодирования файла в «BASE64» и других сервисных операций.
- Шаблоны из группы «Верификация данных» используются для настройки логирования процесса верификации (проверки на установленные условия), настройки правил верификации и обработки выявленных ошибок.
- Шаблоны из группы «Сложные сценарии» используются для оптимизации работы с таблицами.