ETL против ELT: в чем разница? Часть 1

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

Здесь на помощь приходят 2 стратегии интеграции данных — ETL и ELT. Оба метода направлены на консолидацию данных, но делают это по-разному. В этой статье мы расскажем вам об этих стратегиях и рассмотрим их ключевые этапы. 

Что такое ETL?

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

 

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

Что такое ELT?

ELT (Extract, Load, Transform) — это процесс, который помогает извлекать, загружать и форматировать данные. Это новый метод, который позволяет добиться полной интеграции данных, а также предотвратить их разрозненность. Данные извлекаются из источника, загружаются в хранилище и преобразуются «в состоянии покоя». Преобразование обычно происходит по мере необходимости, а не перед сохранением, как в ETL.

 

Различия между ETL и ELT

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

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

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

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

Ключевые этапы процессов ETL и ELT

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

  • Извлечение (Extract)

Это первый этап в обоих процессах. Работа данных всегда начинается с их извлечения из систем ERP и CRM, баз данных SQL и NoSQL, приложений SaaS, веб-страниц, электронных писем и мобильных приложений. Данные могут извлекаться тремя способами:

  1. Полное извлечение. В основном применяется к системам, которые не могут отличать новые записи. В этом случае извлекаются сразу и старые и новые записи.
  2. Частичное извлечение. Этот способ извлечения данных доступен, если в системах есть уведомления об изменениях в записях. В таком случае не требуется загружать все данные.  
  3. Инкрементное извлечение. Этот способ извлечения данных доступен только для тех записей, которые ранее были изменены.
  • Преобразование (Transform)

Это второй этап в ETL и третий этап в ELT. На этом этапе данные преобразуются с помощью последовательных действий для того, чтобы подготовить их для изменения и настроить под параметры другой системы. Это могут быть следующие действия: 

  • Сортировка и фильтрация данных;
  • Транслирование и преобразование;
  • Соединение или разделение;
  • Устранение дубликатов и их очистка;
  • Удаление или шифрование данных.
  • Загрузка (Load)

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


Источник: hubspot.com 

 

Условия передачи информации

Я даю согласие OOO «ЭсБилдер» (далее «BINN») на обработку моих персональных данных в соответствии со статьями 6, 9, 10, 18 Федерального закона от 27 июля 2006 года № 152-ФЗ «О персональных данных», указанных в онлайн-форме и/или предоставленных мною с целью:

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

Настоящее согласие применяется в отношении обработки следующих данных: имя, номер телефона, адрес электронной почты (E-mail).

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

Согласие может быть отозвано мною в любой момент путем направления в BINN подписанного мною письменного заявления.