ETL-блоки¶
Содержание¶
В этом разделе описаны руководства по созданию и распространению собственных etl-блоков.
Интерфейс пользователя¶
Для добавления блока в модель Analytic Workspace нажмите кнопку "Добавить объект" в верхней панели и затем выберите пункт "ETL-блок".
На экране появится список доступных вам для добавления в модель блоков.
После выбора нужного блока, он добавляется модель. У каждого блока есть два входящих потока информации.
-
Вложенные в блок объекты. Определяют данные, над которымы блок выполняет свои действия.
Вкладывание объектов внутрь блока выполняется операцией drag-and-drop.
-
Параметры блока. Задают правила и параметры обработки данных.
В меню блока есть пункт "Настроить параметры".
При выборе этого пункта откроется правая панель с формой настройки блока. Поля на форме настройки блока отрисовываются на основе параметров, указанных в метаданных блока.
Необязательность вложенных объектов и/или параметров блока
Необходимо отметить, что etl-блок может игнорировать как вложенные объекты так и необходимость определения хотя бы одного параметра.
Например, если блок возвращает данные с внешнего web-сервиса, то вложенные в блок объекты не имеют смысла с точки зрения обработки данных. Все данные будут получены "извне" Analytic Workspace.
Также, если внешний web-сервис не требует авторизации и имеет постоянный адрес, то для блока можно не указывать ни одного параметра. Все необходимые параметры (например, URL к сервису) могут быть указаны константами внутри кода блока.
Обработка данных в блоке¶
При работе блока происходят две операции по обработке данных.
-
Получение схемы данных. Схема данных определяет какие поля появятся в модели после того, как блок выполнит обработку данных.
Пример
При выполнении SQL операции блока в модели должны появиться те столбцы, которые указаны в SQL выражении. Для того чтобы узнать какие это будут столбцы, блок выполняет SQL выражение на минимальном объеме входящих данных.
В изображениях выше, независимо от того, какую структуру имеет вложенная в блок таблица
transactions
, после работы блока вместо столбцов этой таблицы в модели появятся два поля:customer_id
иsum_price
.Процедура получения данных блока крайне важна. Приведем аналогию с таблицами из источников данных. При добавлении в модель таблицы из БД в источник происходит запрос на получение списка столбцов и типов этой таблицы. Так и etl-блок должен уметь явно сообщать модели, какие столбцы появятся после его добавления.
-
Построение данных. Здесь происходят основные операции по трансформации данных вложенных в блок объектов.
Встроенные в AW блоки¶
В Analytic Workspace есть ряд встроенных etl-блоков, которые предустанавливаются вместе с системой.
Название блока | Идентификатор | Описание |
---|---|---|
SQL блок | aw_sql_block |
Выполнение произвольного SQL-выражения над любой частью модели |
JSON блок | aw_json_field |
Преобразование JSON-значения из вложенного объекта в новые столбцы или строки модели |
aw_calc_fields |
Добавление вычисляемых полей к любой части модели | |
aw_time_series |
Добавление столбеца с некоторыми периодическими временны́ми значениями | |
Разворот иерархии parent-child | aw_expand_parent_child |
Преобразование таблицы с parent-child иерархией в таблицу, где уровни иерархии вынесены (развернуты) в отдельные столбцы |
Функция | aw_function |
Добавление произвольного поведения при обработке данных модели |
Декоратор | aw_decorator |
Произвольное преобразование схемы и процедуры получения данных в любой части модели |
Классификация/регрессия с ML-моделью | aw_mlflow_predict |
Предсказание (классификация, регрессия) для вложенной в блок таблицы на основе ML-модели |
ML-модель в ручном режиме | aw_mlflow_model |
Предсказание (классификация, регрессия) для вложенной в блок таблицы на основе ML-модели |
Прогнозирование временно́го ряда | aw_ml_auto_forecast |
Прогнозирование временного ряда на основе автоматически обучаемой статистической модели |
С документацией к каждому встроенному блоку можно ознакомиться, перейдя по ссылке "Подробнее о блоке" на форме настройки блока.