Что такое ETL, кто и для чего ее будет использовать

Содержание:

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

Что такое ETL, кто и для чего ее будет использовать

Из чего состоит фреймворк ETL и с чем его «едят»

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

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

  • Informatica PowerCenter;
  • Oracle Data Integrator;
  • SAP Data Services;
  • Talend Open Studio.

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

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

  1. Сделать выборку данных из реляционных СУБД.
  2. Обработать полученные данные и сохранить в таблицу Apache Hive.

Чтобы выполнить эту задачу, дата-аналитики применяют ETL-фреймворк.

Что такое ETL, кто и для чего ее будет использовать

Как используется ETL дата-аналитиками

Для работы с описанной выше задачей используется два типа решений посредством фреймворка ETL. Первый из них — это потоковая обработка информации. Ее еще называют Stream. Для работы с потоковой обработкой информации используют инструмент Apache Ni Fi.

А вот для работы с пакетной обработкой подходит Apache Airflow. Это open-source-набор библиотек планирования и мониторинга процессов работы. Разработанный на Python, Apache Airflow помогает формировать и устанавливать цепочки задач как визуально, так и в программном виде, с помощью прописывания кода.

Как помогает ETL в работе дата-аналитика

В ERP-системах обычно творится бардак, который годами никто не может разобрать. Именно для структурирования этого бардака и была создана ETL.

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

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

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

Следующий список дает знания начинающему аналитику о том, как работает ETL-система:

  • подгружается информация из выбранных источников. Эта процедура нужна для затягивания в фреймворк информации произвольного качества. Главное на этом шаге — сверить суммы пришедших строк. Если получится, что в исходной системе строк больше, чем в Raw Data, то это значит, что где-то есть ошибки;
  • она очищается от ошибок. Этот шаг дает возможность упорядочить полученные данные и исключить из них не валидную информацию;
  • определяется соответствие данных и справочников. К утвержденной таблице пристраивается еще один тип столбцов, количество которых равно количеству справочников ЦС;
  • происходит консолидация от транзакций до агрегатов;
  • готовая информация выгружается в ЦС;
  • происходит детализация.

Таким образом работает ETL-фреймворк.

Что такое ETL, кто и для чего ее будет использовать

Советы от опытных дата-аналитиков

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

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

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

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

Зачем еще нужны ETL-фреймворки — примеры

Однако вышеописанными задачами и советами от дата-аналитиков целевые назначения ETL не заканчиваются. Этот фреймворк рассматривают как инструмент для переноса из разных источников в централизованный КХД.

Что такое ETL, кто и для чего ее будет использовать

Теперь давайте посмотрим один из примеров, когда используется ETL.

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

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

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

Так на реальном примере работает ETL-система. Она позволяет, игнорируя человеческий фактор (ошибку или забывчивость), сделать за несколько дней или часов то, что обычные сотрудники будут делать в течение месяца.

Заключение

Теперь вы знаете, что такое ETL-система и как она работает. Если вам понравилась тема Data-аналитики и вы желаете поглубже изучить ее, реализовать мечту помогут курсы от DevEducation.

Присоединяйся к DevEducation — стань востребованным специалистом и построй карьеру в IT!