20.02.2024 ПУБЛИКАЦИИ

Чем ETL отличается от ELT, и какой подход лучше?

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

BI помогает компаниям отслеживать показатели эффективности деятельности, оптимизировать бизнес-процессы, снижать издержки и увеличивать прибыль.
BI-системы: рост объема генерации данных
Примеры сводных дашбордов BI аналитики

BI аналитика - шаг к ETL и ELT процессам

BI-инструменты собирают, структурируют и нормализуют бизнес-данные, на основе которых далее строится отчетность и визуализации.

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

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

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

Демократизация данных с ETL и ELT

Для эффективной работы с данными их нужно получить из разрозненных внутренних и внешних источников, структурировать и переместить в единый репозиторий (например, в КХД). Эти процессы называются ETL и ELT.

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

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

В статье расскажем, в чем разница этих двух подходов, и на что она влияет.

Что такое ETL?

ETL (Extract, Transform, Load, ЕТЛ) — это конвейер для извлечения «сырых» данных из различных источников, их преобразования и загрузки в целевую систему. Преобразование в ETL происходит в области временного хранения данных вне целевой системы.
Конвейер ETL (Extract, Transform, Load)
Конвейер ETL (Extract, Transform, Load)

Этапы Extract, Transform и Load

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

Очевидная разница между ними - разный порядок шагов извлечения, преобразования и загрузки данных. Для понимания того, что вообще происходит в процессах, рассмотрим эти шаги вне зависимости от их порядка
ЭтапыExtract (извлечение), Transform (преобразование) и Load (загрузка)
Extract (извлечение), Transform (преобразование) и Load (загрузка)

Структура ETL-процесса

Extract – Извлечение

Сырые данные (Raw Data) произвольного качества загружаются для дальнейшей обработки из источников:

  • Баз данных (MySQL, PostgreSQL, ClickHouse, GreenPlum)
  • Excel, XML, PDF и иных табличных файлов
  • CRM: Битрикс24, amoCRM, Salesforce, Мегаплан, SAP и т. д.
  • ERP: 1С: ERP, SAP, Галактика ERP, Парус и т. д.
  • Маркетплейсов: Wildberries, Ozon, Сбермаркет, Яндекс Маркет
  • Маркетинговых платформ для управления рекламными кампаниями, соцсетями, взаимодействием со СМИ и другими активностями
  • Инструментов интернет-аналитики, таких, как Google Analytics и Яндекс Метрика
  • Информация из внешних источников – государственных статистических служб или открытых БД
  • … и других
При этом может выполняться первичная проверка данных на соответствие ожиданиям, например, проверки на null значения, проверка валидных значений в поле "Статус", наличия поля с переменной и т. д. Это позволяет службе поддержки реагировать на изменения и ошибки в данных до того, как они попадут в систему-потребитель.

Transform – Преобразование

Преобразование значений в нужный формат и структуру для их последующего использования. На этом этапе осуществляется очистка, конвертация в единый формат, нормализация, агрегирование и разделение.
Load – Загрузка
Load - процедура копирования сырых или преобразованных данных в целевую OLAP (Online Analytical Processing) - систему оперативной аналитической обработки или анализа.

Кто и где использует ETL

ETL используется в разных процессах, где необходимо объединение данных из нескольких источников, миграции в единое хранилище:

  • Базы данных
  • Business intelligence (BI)
  • DWH (КХД)
  • OLTP (Online Transaction Processing) и OLAP (Online Analytical Processing)
  • Работа с Big Data
  • Машинное обучение (ML)

С ETL-системами работают специалисты, участвующие в перечисленных проектах:

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

Какие преимущества ETL предоставляет бизнесу

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

  • Обеспечивают высокую степень контроля и стандартизации данных в процессе обработки. Набор их соответствует требованиям о работе с реляционными структурами для OLAP-инструментов и запросов SQL.

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

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

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

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

Минусы ETL-процесса

Несмотря на универсальность для многих сценариев использования, при ETL есть недостатки:

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

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

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

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

Как работает ETL-процесс?

Стандартная схема работы ETL:

  • Подключение к системам-источникам, определение состава данных, периодичности их выборки и правил отбора в выборку

  • Выгрузка из источников с помощью SQL запросов или API

  • Валидация и очистка от дублей и ошибок

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

  • Агрегация — объединение значений в итоговой таблице, необходимое из-за различий в детализации OLTP и OLAP-систем

  • Загрузка данных в систему хранения или витрины с помощью коннекторов, включая информацию о структуре их представления (метаданные)

Структура ETL-процесса

Как работает ETL система
Принцип работы ETL

Что такое ELT?

ELT (Extract, Load, Transform, ЕЛТ) представляет собой относительно новый подход к обработке данных, при котором значения извлекаются из источников и загружаются в целевое облачное хранилище в «сыром» виде, а затем внутри него происходит их трансформация. В ELT не требуется промежуточная среда для трансформации данных.
ELT (Extract, Load, Transform)
Конвейер ELT (Extract, Load, Transform)

Плюсы ELT-процесса

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

  • Возможность проводить трансформацию и анализ внутри хранилища увеличивает адаптивность к изменениям в бизнес-требованиях.

  • Необработанные данные прозрачны и доступны в режиме реального времени для всех бизнес-пользователей.

  • Озеро данных (Data Lake) — это репозиторий для больших объемов информации, которое не требует их преобразования перед загрузкой, способно обрабатывать как структурированные, так и неструктурированные данные. Походит для работы с ELT и обеспечивает быстрый доступ для анализа и предоставляет основу для расширенной аналитики, ML, Big Data и Data Science.

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

Минусы ELT-процесса

  • Для эффективной работы ELT требуется мощный репозиторий, способное обрабатывать и анализировать их на этапе загрузки.
  • Проведение трансформации внутри репозиторий требует дополнительного внимания к безопасности и контролю доступа.
  • ELT часто не включают в себя сложные проверки и преобразования информации перед их загрузкой в целевую систему, что требует использования дополнительных инструментов для управления качеством данных.
  • Технология не так изучена, как ETL, поэтому разработчиков ELT найти сложнее.

Что лучше: ETL или ELT?

ETL эффективен для небольших наборов данных, которые требуют сложных преобразований. После преобразования ЕТЛ позволяет проводить более эффективный и стабильный их анализ.

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

Приводим сравнительную таблицу характеристик процессов:

С какими задачами поможет ETL

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

С какими задачами поможет ELT

  • Вы работаете с большим объемом структурированной и неструктурированной информации
  • Для вас важно принятие решений в режиме реального времени и прозрачность показателей, их обработка с минимальной задержкой
  • Вы работаете с ML, запускаете проект с Big Data или Data Science

Рынок движется к тому, чтобы ELT стал стандартом. Объем, скорость и разнообразие цифр за последние годы сильно выросли. Согласно отчету аналитической компаний IDC, только в 2023 году в мире было создано 120 зеттабайт информации, а к 2025 году объем достигнет 163 зеттабайт. Примерно 80% из них - неструктурированные.

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

Совет эксперта

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

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

Некоторые компании используют и ЕТЛ для обработки исторических данных, а ЕЛТ для доступа к ним в реальном времени
Где заказать внедрение ETL и ELT?
Команда Qlever Solutions более 10 лет занимается созданием корпоративных аналитических решений, разработкой среды для развертывания аналитических приложений, а также оказывает консалтинговые услуги в области использования внутренних и внешних массивов информации.

  • Внедряем бизнес-аналитику на базе платформ PIX BI и Fine BI, проводим проекты миграции на отечественный BI
  • Разрабатываем и внедряем КХД под ключ, от разработки концепции, подбора методологии и построения архитектуры в зависимости от ваших задач, до тестирования и поддержки
  • Предоставляем услуги управления Нормативно-справочной информацией (НСИ, MDM) и помогаем навести порядок с использованием алгоритмов ML

Проектируем и внедряем хранилища данных

А также реализуем ETL/ELT процессы в зависимости от ваших целей и задач