Перейти к основному содержимому

ETL и ELT

ETL vs ELT

Это способы доставки данных из источников в централизованную систему (хранилище). Ключевое отличие: ГДЕ и КОГДА выполняются преобразование и загрузка данных.

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

ETL (Extract, Transform, Load)

Как работает по шагам:

  1. Извлечение "сырых" данных из различных источников (БД, файлов, API).
  2. Трансформация их в нужный формат или структуру, включая очистку, нормализацию, объединение.
  3. Загрузка в целевую систему (например, хранилище данных).

Когда эффективны:

  • Когда данные поступают из разнородных источников и требуют преобразований перед загрузкой в целевую систему.
    • Данные более точные, качественные и совместимы с аналитическими инструментами.
    • Удобнее проводить дальнейший анализ.
  • При работе с хранилищами данных OLAP, легаси-системами и реляционными БД. Не имеет поддержки озёр данных.

Примеры применения:

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

Минусы:

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

ELT (Extract, Load, Transform)

Как работает по шагам:

  1. Извлечение данных из источников.
  2. Загрузка в целевую систему без предварительной обработки (промежуточной БД нет).
  3. Трансформация в целевой системе (например, с помощью SQL-запросов в хранилище данных).

Когда эффективны:

  • Для быстрой загрузки и обработки больших объемов данных.
    • Извлекает и загружает в целевую систему сырые данные.
    • Трансформация происходит после загрузки, что позволяет использовать мощности целевой системы.
  • Для работы с большими объемами данных, где важна быстрая загрузка.
  • Когда целевая система обладает достаточными ресурсами для выполнения преобразований данных.
  • Можно использовать с облачными хранилищами и озёрами данных.

Примеры применения:

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

Минусы:

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

Подборка материалов по теме ETL и ELT

  1. Основные функции ETL-систем
  2. ETL&Connectors - исследование русских ETL-инструментов, API и коннекторов
  3. ETL с какими задачами поможет
  4. Как ETL-процессы помогают анализировать большие данные
  5. ETL: что такое, зачем и для кого
  6. ETL-процессы: суть и задачи
  7. O ETL простым языком
  8. Разбираемся, что такое ETL, на примере парсера текстового файла
  9. ETL на практике: опыт и ошибки при выборе и использовании ETL-инструментов
  10. Популярные ETL-системы: обзор
  11. 18 лучших ETL-инструментов для современного дата-стека
  12. Как работает ETL система
  13. Процесс ELT: основные компоненты, преимущества и инструменты создания
  14. Процесс ELT (ELT-process)
  15. ELT плюсы и минусы
  16. Обзор инструментов ETL и ELT
  17. ETL и ELT: разница
  18. Что такое ETL? ELT или ETL: в чем разница? Сценарии применения ETL
  19. ETL и ELT: ключевые различия, о которых должен знать каждый

Видео

  1. Сравнение подходов ETL и ELT
  2. Как эффективно тестировать ETL системы вручную?
  3. ETL для всех
  4. Обзор Этапов Строительства Проектов | ELT Building Development
  5. Что такое ETL и ELT за 10 минут. Разница подходов

Конференции

  1. HighLoad++: Концентрируемся на бизнес-модели данных: от ETL к ELT
  2. AnalystDays: Эволюция ETL процессов