Общие сведения

ETL (Extract, Transform, Load) - это процесс загрузки данных, включающий три основных этапа: извлечение (Extract) данных из различных источников, их преобразование (Transform) и загрузку (Load) очищенных данных в целевое хранилище данных.

Функциональность ETL позволяет:

Создание ETL-датасета

Интерфейс ETL

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



Окно ETL-интерфейса содержит следующие области:




Интерфейс и последовательность шагов для создания ETL-датасета аналогичны в обоих режимах загрузки данных (Локальное подключение/Прямое подключение).

Этап 1. Выбор режима 

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

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


Этап 2. Выбор источника

Источники данных отображаются в области источников данных в левом верхнему углу интерфейса. По умолчанию отображается первым и выбран источник "ХД Polymatica" (локальное хранилище данных). Другие источники данных в списке упорядочены по дате создания. 



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

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


Этап 3. Выбор таблиц

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

Для выбора таблицы необходимо перетащить ее методом drag-n-drop в область трансформации. При этом таблица автоматически получает алиас (t1, t2 и т.д. соответственно данному формату).

Возможности выноса таблиц зависят от режима подключения:

 


Этап 4. Настройка колонок

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


Этап 5. Настройка объединения 

Когда в область трансформации вынесено минимум две таблицы, становится доступным объединение таблиц двумя способами:

No-code


Для объединения таблиц средствами No-code на вкладке "Настройка" заполните следующие обязательные поля:

Кнопка позволяет добавить новое условие объединения по еще одной колонке. Условия объединения между собой объединяются логическим оператором AND (поддержка других операторов отсутствует). Удалить условие можно кнопкой . Самое первое условие не может быть удалено.

Если в область трансформации вынесено более 2 таблиц, система создает несколько блоков объединения подряд. Каждый блок связан с двумя таблицами.

Возможно многократное использование одной и той же таблицы в разных блоках - в качестве Таблицы 1 или Таблицы 2.

Кнопка "Очистить" позволяет сбросить все настройки объединения.

SQL



Для объединения таблиц средствами SQL перейдите на вкладку "SQL". При переключении режима подтвердите сброс настроек:

В поле "SQL-запрос" введите запрос за данными источника/источников.

В SQL-запросе разрешается использовать только те таблицы, которые были добавлены в область трансформации. Поддерживаются SQL-конструкции: JOIN, WHERE, GROUP BY, HAVING, CASE, ORDER BY и др. При создании SQL-запроса можно использовать автоматически присвоенные таблицам алиасы (t1, t2, t3 и т. д.)

Этап 6. Создание расчетных колонок (опционально)

Создание расчётной колонки для ETL-датасета:

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



В верхней части списка колонок отображается отдельная группа «Расчетные», в которую вынесены:

В данную группу будет добавлена новая колонка.


Расчетные колонки из датасетов:

  • нельзя редактировать;
  • нельзя удалить;

  • могут быть использованы в расчетах, в SQL;

  • могут быть включены в результирующий датасет через чекбокс.

Расчетные колонки, созданные в ETL-интерфейсе:

  • могут быть отредактированы (имя, формула, тип);
  • могут быть удалены пользователем;

  • доступны для повторного использования в других расчетах; 

  • могут быть использованы в SQL-запросах.

Незаписанные расчётные колонки, созданные в рамках исходных датасетов:

  • отображаются как неактивные (снятый чекбокс, визуально затемнены);

  • не могут быть использованы для объединения (в блоках Join);

  • неактивны для добавления в выражения расчётных колонок ETL-датасета (не перетаскиваются в область переменных).

Этап 7. Предпросмотр данных 

Для предпросмотра ETL-датасета необходимо нажать на кнопку "Выполнить запрос".  

Если настройки объединения корректны, произойдет слияние датасетов, и в области предпросмотра отобразятся первые 15 строк готового датасета с учетом настроек колонок (загружены при этом будут все).

Чтобы просмотреть результирующие данные, необходимо развернуть панель "Предпросмотр данных". 


При необходимости выполнение запроса можно принудительно прервать кнопкой "Остановить".


Этап 8. Сохранение датасета

Для сохранения датасета необходимо, чтобы запрос за данными был успешно выполнен. После этого можно нажать на кнопку "Сохранить". Отобразится окно сохранения датасета: 




В окне необходимо заполнить и настроить следующее:

Для сохранения датасета необходимо нажать на кнопку "Создать".  Для возврата к настройкам датасета необходимо нажать "Назад". Для отмены создания датасета нажмите на кнопку или нажмите в любом месте вне области окна.

В текущей версии программы имеют место следующие ограничения:

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