ETL и ELT: 5 основных отличий
Пять важнейших отличий ETL от ELT:
- ETL – это процесс извлечения, преобразования и загрузки данных. ELT – это процесс извлечения, загрузки и преобразования данных.
- В рамках ETL данные перемещаются из источника данных в промежуточное хранилище данных.
- Для выполнения основных преобразований ELT использует хранилище данных. Нет необходимости в промежуточном размещении данных.
- ETL может помочь обеспечить конфиденциальность и соответствия требованиям, очищая конфиденциальные и безопасные данные еще до их загрузки в хранилище данных.
- ETL может выполнять сложные преобразования данных и может быть более рентабельным, чем ELT.
Разницу между ETL и ELT можно объяснить довольно легко, но для понимания общей картины, и потенциальных преимуществ ETL по сравнению с ELT, требуется более глубокое понимание того, как ETL работает с хранилищами данных и как ELT работает с озерами данных.
Обзор ETL и ELT
ETL и ELT необходимы в анализе о данных, потому что источники информации, независимо от того, используют ли они структурированную базу данных SQL или неструктурированную базу данных NoSQL, редко используют одинаковые или совместимые форматы. Следовательно, вам необходимо очистить, обогатить и преобразовать свои источники данных, прежде чем объединить их в анализируемое целое. Таким образом, ваша платформа бизнес-аналитики сможет анализировать данные для получения аналитических сведений.
Независимо от того, используете ли вы ETL или ELT, процесс преобразования/интеграции данных включает следующие три этапа:
- Извлечение (E): извлечение относится к извлечению исходных данных из исходной базы данных или источника данных. С помощью ETL данные попадают во временную промежуточную область. С ELT они сразу попадают в систему хранения озера данных.
- Преобразование (T): преобразование относится к процессу изменения структуры информации, так что она интегрируется с целевой системой данных и остальными данными в этой системе.
- Загрузка (L): загрузка относится к процессу размещения информации в системе хранения данных.
Как мы уже установили, ETL и ELT выполняют те же операции, но в разном порядке. Возникает вопрос: следует ли преобразовывать данные до или после загрузки в хранилище? Чтобы ответить на этот вопрос, вам нужно понимать ETL и ELT.
Подробно о процессе ETL
Хранилища данных для онлайн-аналитической обработки (OLAP), облачные или локальные, должны работать с реляционными структурами данных на основе SQL. Следовательно, любые данные, которые вы загружаете в хранилище данных OLAP, должны преобразоваться в реляционный формат, прежде чем хранилище данных сможет их принять. В рамках этого процесса преобразования данных также может потребоваться сопоставление данных для объединения нескольких их источников на основе коррелирующей информации (чтобы ваша платформа бизнес-аналитики могла анализировать информацию как единое интегрированное устройство).
Вот почему хранилища данных требуют ETL. Потому что преобразования должны происходить до загрузки. Вот некоторые подробности, которые нужно понять об ETL:
- Непрерывный процесс с четко определенным рабочим процессом: сначала ETL извлекает данные из однородных или разнородных источников данных. Затем он помещает данные в промежуточную область. Оттуда данные проходят процесс очистки, обогащаются и трансформируются и, наконец, сохраняются в хранилище данных.
- Используется для детального планирования, контроля и кодирования со стороны инженеров и разработчиков данных: старые методы ручного кодирования преобразований ETL в хранилищах данных занимали очень много времени. Даже после разработки процесса требовалось время, чтобы данные прошли каждый этап при обновлении хранилища данных новой информацией.
- Современные решения ETL проще и быстрее: современные ETL, особенно для облачных хранилищ данных и облачных платформ SaaS, работают намного быстрее. Используя облачное решение ETL, пользователи могут мгновенно извлекать, преобразовывать и загружать свои данные из различных источников, не обладая навыками в программировании.
Важнейшие преимущества ETL
Одно из крупнейших преимуществ ETL перед ELT связано с преструктурированной природой хранилища данных OLAP. После структурирования/преобразования данных ETL позволяет проводить ускоренный, более эффективный и стабильный анализ данных. А вот ELT не так идеален, когда задача требует быстрого анализа.
Еще одно существенное преимущество ETL перед ELT связано с соответствием. Часто компаниям, работа которых регулируется GDPR, HIPAA или CCPA, необходимо удалить, замаскировать или зашифровать определенные поля данных для защиты конфиденциальности своих клиентов. Сюда может входить преобразование электронных писем только в домен или удаление последней части IP-адреса. ETL обеспечивает более безопасный способ выполнения этих преобразований, поскольку он преобразует данные перед их помещением в хранилище данных.
А вот ELT требует, чтобы вы сначала загрузили конфиденциальные данные. Это приводит к тому, что эти данные будут отображаться в журналах, где системные администраторы могут получить к ним доступ. Кроме того, использование ELT для преобразования данных может непреднамеренно нарушить стандарты соответствия GDPR ЕС, если при загрузке в озеро данных, некоторые из них покидают территорию ЕС. В конечном итоге ETL снижает риск нарушения нормативных требований, поскольку несоответствующие данные никогда случайно не попадут в хранилище данных или отчеты за пределами ЕС.
Ну и наконец, ETL, как процесс интеграции/преобразования данных существует уже более двух десятилетий, а это означает, что есть множество проверенных временем инструментов и платформ ETL, которые помогут в извлечении, преобразовании и загрузке данных. Кроме того, вы сможете легко найти инженеров по обработке данных, обладающих навыками и опытом настройки конвейеров ETL.
Подробное описание процесса ELT
Что такое ELT?
ELT означает «Извлечь, загрузить и преобразовать». В этом процессе данные для основных преобразований используются через хранилище данных. Это означает, что нет необходимости в промежуточном размещении данных. Для всех типов данных, включая структурированные, неструктурированные, полуструктурированные и даже необработанные данные ELT использует облачные решения для их хранения.
Процесс ELT также работает рука об руку с озерами данных. «Озера данных» – это особые виды хранилищ данных, которые, в отличие от хранилищ OLAP, принимают любые структурированные или неструктурированные данные. Озера данных не требуют преобразования данных перед их загрузкой. Вы можете сразу загрузить в озеро данных любой тип необработанной информации, независимо от формата или его отсутствия.
Перед анализом данных с помощью платформы бизнес-аналитики все еще необходимо преобразование данных. Однако очистка, обогащение и преобразование данных происходят после загрузки данных в озеро данных. Вот некоторые подробности о работе ELT и озерах данных для общего понимания процесса:
- Новая технология, ставшая возможной благодаря высокоскоростным облачным серверам: ELT – это относительно новая технология, ставшая возможной благодаря современным облачным серверным технологиям. Облачные хранилища данных предлагают практически безграничные возможности хранения и масштабируемую вычислительную мощность. Например, такие платформы, как Amazon Redshift и Google BigQuery, делают возможными конвейеры ELT благодаря своим невероятным возможностям обработки.
- Принимайте данные, как только они становятся доступными: ELT в сочетании с озером данных позволяет сразу же принимать постоянно расширяющийся пул необработанных данных, как только они становятся доступными. Нет необходимости преобразовывать данные в специальный формат перед их сохранением в озере данных.
- Преобразует только те данные, которые вам нужны: ELT преобразует только данные, необходимые вам для конкретного анализа. Хотя оно может замедлить процесс анализа, озеро данных предлагает вам большую гибкость, потому что вы можете преобразовывать данные разными способами на лету и так создавать различные типы метрик, прогнозов и отчетов. И наоборот, с ETL весь конвейер ETL, и структура данных в хранилище OLAP, может потребовать модификации, если ранее принятая структура не позволяет проводить новый тип анализа.
- ELT менее надежен, чем ETL: важно отметить, что инструменты и системы ELT все еще развиваются, поэтому они не так надежны, как ETL в сочетании с базой данных OLAP. Хотя для настройки требуется больше усилий, ETL обеспечивает более точную информацию при работе с огромными пулами данных. Кроме того, разработчиков ELT, которые знают, как использовать технологию ELT, труднее найти, чем разработчиков ETL.
Самые значительные преимущества ELT
Основное преимущество ELT перед ETL связано с гибкостью и простотой хранения новых неструктурированных данных. С помощью ELT вы можете хранить любой тип информации, даже если у вас нет времени или возможности сначала преобразовать и структурировать ее, обеспечивая немедленный доступ ко всей вашей информации, когда вы этого захотите. Кроме того, вам не нужно разрабатывать сложные процессы ETL перед загрузкой данных, что экономит время разработчиков и аналитиков данных при работе с новой информацией.
Вот еще несколько преимуществ ELT:
ПРЕИМУЩЕСТВО №1: Высокая скорость
Когда дело доходит до доступности данных, ELT – более быстрый вариант. ELT позволяет всем данным немедленно поступать в систему, и оттуда пользователи могут определять точные данные, которые им необходимы для преобразования и анализа.
ПРЕИМУЩЕСТВО №2: низкие эксплуатационные расходы
С ELT пользователям, как правило, не нужно иметь план обслуживания с высокой степенью сложности. Поскольку ELT является облачным, он использует автоматизированные решения вместо того, чтобы полагаться на пользователя, инициирующего обновления вручную.
ПРЕИМУЩЕСТВО №3: Более быстрая загрузка
Поскольку этап преобразования не происходит до тех пор, пока данные не поступят в хранилище, это сокращает время, необходимое для загрузки данных в их финальное место хранения. Нет необходимости ждать, пока данные очистятся или иным образом будут изменены, и им нужно только один раз войти в целевую систему.
Лучшие способы использования ELT
Как указано в этой статье, обсуждение преимуществ ETL и ELT все еще продолжается. Итак, при каких обстоятельствах вы могли бы рассмотреть возможность использования ELT вместо ETL? Вот некоторые из возможных случаев:
СЛУЧАЙ ИСПОЛЬЗОВАНИЯ №1:
Компания с огромным объемом данных. ELT лучше всего работает с огромными объемами данных, как структурированных, так и неструктурированных. Если целевая система – облачная, вы, вероятно, сможете быстрее обрабатывать эти огромные объемы данных с помощью решений ELT.
СЛУЧАЙ ИСПОЛЬЗОВАНИЯ №2:
Организация, располагающая ресурсами для необходимой вычислительной мощности. При использовании ETL большая часть обработки происходит на этапе, пока данные еще находятся в конвейере, до того, как они попали в ваше хранилище. ELT выполняет действие после того, как данные поступили в озеро данных. В зависимости от того, что нужно сделать с данными согласно вашим целям, у небольших компаний может не быть достаточной финансовой гибкости для разработки или изучения обширных технологий, необходимых для получения всех преимуществ озера данных.
СЛУЧАЙ ИСПОЛЬЗОВАНИЯ №3:
Компания, которой нужны все данные в одном месте как можно скорее. Когда преобразования происходят в конце процесса, ELT отдает приоритет скорости передачи почти всему остальному, а это означает, что все данные, хорошие, плохие и другие, попадают в озеро данных для последующего преобразования.
Сравнение ETL и ELT
ETL |
ELT |
|
Внедрение технологии и наличие инструментов и экспертов |
ETL – это хорошо отлаженный процесс, который используется более 20 лет, и эксперты по ETL всегда под рукой. |
ELT – это новая технология, поэтому может быть сложно найти экспертов, и разработать конвейер ELT тоже сложнее, по сравнению с конвейером ETL. |
Доступность данных в системе |
ETL преобразует и загружает только те данные, которые (по вашему мнению) будут необходимы при создании хранилища данных и процесса ETL. Следовательно, будет доступна только эта информация. |
ELT может сразу загрузить все данные, а пользователи смогут позже определить, какие данные из них преобразовать и проанализировать. |
Можно ли добавить вычисления? |
Вычисления либо заменят существующие столбцы, либо вы можете добавить набор данных, чтобы передать результат вычислений в целевую систему данных. |
ELT добавляет вычисляемые столбцы непосредственно в существующий набор данных. |
Совместимы ли данные с озерами данных? |
ETL не является популярным решением для озер данных. Оно преобразует данные для интеграции с системой структурированного реляционного хранилища данных. |
ELT предлагает конвейер для озер данных для приема неструктурированных данных. Затем он по мере необходимости преобразует данные для анализа. |
Соответствие |
ETL может редактировать и удалять конфиденциальную информацию, прежде чем помещать ее в хранилище данных или облачный сервер. Это упрощает соблюдение стандартов GDPR, HIPAA и CCPA. Это также защищает данные от взлома и непреднамеренного воздействия. |
ELT требует, чтобы вы загрузили данные перед редактированием/удалением конфиденциальной информации. Это может нарушить стандарты GDPR, HIPAA и CCPA. Конфиденциальная информация будет более уязвима для взлома и непреднамеренного раскрытия. Вы также можете нарушить некоторые стандарты соответствия, если облачный сервер находится в другой стране. |
Размер данных и сложность преобразований |
ETL лучше всего подходит для работы с небольшими наборами данных, требующими сложных преобразований. |
ELT лучше всего подходит для работы с огромными объемами структурированных и неструктурированных данных. |
Поддержка хранилищ данных |
ETL работает с облачными и локальными хранилищами данных. Оно требует реляционного или структурированного формата данных. |
ELT работает с облачными хранилищами данных для поддержки структурированных, неструктурированных, полуструктурированных и необработанных типов данных. |
Требования к оборудованию |
Облачные ETL-платформы не требуют специального оборудования. Наследованные локальные процессы ETL требуют обширных и дорогостоящих решений по оборудованию, но сегодня они не так популярны. |
Процессы ELT основаны на облаке и не требуют специального оборудования. |
Чем отличаются агрегаты? |
Агрегация усложняется по мере увеличения размера набора данных. |
Если у вас есть мощная облачная целевая система данных, вы можете быстро обрабатывать огромные объемы данных. |
Сложность реализации |
При создании конвейера ETL легко найти экспертов по ETL. Для облегчения этого процесса доступны высокоразвитые инструменты ETL. |
Как новая технология, инструменты для реализации решения ELT все еще развиваются. Более того, бывает сложно найти экспертов с необходимыми знаниями и навыками ELT. |
Требования к обслуживанию |
Автоматизированные облачные решения ETL, не требуют значительного обслуживания. Однако локальное решение ETL, использующее физический сервер, потребует частого обслуживания. |
ELT основан на облаке и, как правило, включает автоматизированные решения, поэтому требуется очень немного обслуживания. |
Порядок извлечения, преобразования, загрузки |
Преобразование данных происходит сразу после извлечения в промежуточной области. После преобразования данные загружаются в хранилище данных. |
Данные извлекаются, а затем загружаются в целевую систему данных. Только после этого некоторые данные преобразуются «по мере необходимости» для аналитических целей. |
Расходы |
Облачные платформы SaaS ETL, которые выставляют счет по модели ценообразования с оплатой за сеанс, они предлагают гибкие планы, которые начинаются примерно от 100 долларов и затем увеличиваются в зависимости от требований использования. Между тем, локальное ETL-решение на уровне компании, такое как Informatica, может обойтись даже в 1 миллион долларов в год! |
Платформы SaaS ELT на основе облачных вычислений, которые выставляют счет по модели ценообразования с оплатой за сеанс, предлагают гибкие планы, которые начинаются примерно с 100 долларов США, а затем постепенно растут. Ценовое преимущество ELT заключается в том, что вы можете загружать и сохранять свои данные без больших комиссий, а затем преобразовывать их по мере необходимости. Это может сэкономить вам деньги на первоначальных затратах, если вы просто хотите загрузить и сохранить информацию. Однако финансово ограниченные компании могут никогда не позволить себе вычислительную мощность, необходимую для получения всех преимуществ своего озера данных. |
Процесс преобразования |
Преобразования происходят в промежуточной области за пределами хранилища данных. |
Преобразования происходят внутри самой системы данных, и промежуточной области не требуется. |
Поддержка неструктурированных данных |
ETL можно использовать для структурирования неструктурированных данных, но нельзя использовать для передачи неструктурированных данных в целевую систему. |
ELT – это решение для загрузки неструктурированных данных в озеро данных и предоставления неструктурированных данных системам бизнес-аналитики. |
Время ожидания для загрузки информации |
Время загрузки ETL превышает ELT, потому что это многоступенчатый процесс: (1) загрузка данных в промежуточную область, (2) преобразования, (3) загрузка данных в хранилище данных. После загрузки данных анализ информации происходит быстрее, чем у ELT. |
Загрузка данных происходит быстрее, потому что нет ожидания преобразований, и данные загружаются в целевую систему данных только один раз. Однако анализ информации происходит медленнее, чем ETL. |
Время ожидания для выполнения преобразований |
Преобразование данных изначально занимает больше времени, потому что каждый фрагмент данных перед загрузкой требует преобразования. Кроме того, по мере увеличения размера системы данных преобразования занимают больше времени. Однако после преобразования в систему анализ выполняется быстро и эффективно. |
Поскольку преобразования происходят после загрузки по мере необходимости, а вы преобразовываете только данные, которые нужно анализировать в данный момент, преобразования происходят намного быстрее. Однако необходимость постоянного преобразования данных снижает общее время, необходимое для запросов/анализа. |
В заключение:
- ETL означает «извлечение, преобразование и загрузка», а ELT означает «извлечение, загрузка и преобразование».
- В ETL поток данных идет от источника данных к промежуточному месту назначения.
- ELT позволяет адресату данных выполнять преобразование, устраняя необходимость в промежуточном размещении данных.
- ETL может помочь обеспечить конфиденциальность и соответствия данных, очищая конфиденциальные данные перед загрузкой в место назначения, в то время как ELT проще и для компаний с незначительными потребностями в данных.
В России сейчас доступны российские BI-системы и китайская BI-система FineBI