ШІ 101
Що таке ETL? (Extract, Transform, Load) Методологія та випадки використання

ETL означає “екстракція, трансформація, завантаження”. Це процес, який інтегрує дані з різних джерел до одного репозиторію, щоб їх можна було обробити та проаналізувати, щоб отримати корисну інформацію. Ця корисна інформація допомагає підприємствам приймати рішення, засновані на даних, та розвиватися.
“Дані – це нова нафта.”
Клів Гамбі, математик
Глобальне створення даних зросло експоненціально, так що, згідно з Forbes, на поточному рівні люди подвоюють створення даних кожні два роки. В результаті сучасний стек даних еволюціонував. Дані мартів були перетворені на дані сховища, а коли цього було недостатньо, були створені дані озера. Хоча в усіх цих різних інфраструктур одна процес залишився незмінним, процес ETL.
У цій статті ми розглянемо методологію ETL, його випадки використання, його переваги та те, як цей процес допоміг сформувати сучасний ландшафт даних.
Методологія ETL
ETL робить можливим інтегрувати дані з різних джерел в одному місці, щоб їх можна було обробити, проаналізувати та потім поділитися з зацікавленими сторонами підприємств. Він забезпечує цілісність даних, які будуть використовуватися для звітності, аналізу та прогнозування з моделями машинного навчання. Це триступеневий процес, який витягує дані з多 джерел, трансформує їх та потім завантажує їх у інструменти бізнес-інтелекту. Ці інструменти бізнес-інтелекту потім використовуються підприємствами для прийняття рішень, заснованих на даних.
Фаза екстракції
На цій фазі дані витягується з різних джерел за допомогою запитів SQL, кодів Python, СУБД (системи управління базами даних) або інструментів ETL. Найбільш поширені джерела:
- Програмне забезпечення для управління відносинами з клієнтами (CRM)
- Інструмент аналітики
- Дані сховища
- База даних
- Хмарні платформи зберігання
- Інструменти продажів і маркетингу
- Мобільні додатки
Ці джерела можуть бути структурованими або неструктурованими, тому формат даних на цій стадії не є уніфікованим.
Фаза трансформації
На стадії трансформації витягнуті сирі дані трансформуються та компілюються у формат, придатний для цільової системи. Для цього сирі дані проходять через кілька підпроцесів трансформації, таких як:
- Очищення – несумісні та відсутні дані обробляються.
- Стандартизація – застосовується уніфіковане форматування.
- Видалення дублікатів – видалення дублікатів.
- Виявлення аутлієрів – виявлення та нормалізація аутлієрів.
- Сортування – дані організовані таким чином, щоб підвищити ефективність.
Крім переформатування даних, є інші причини, через які трансформація даних необхідна. Нульові значення, якщо вони присутні в даних, повинні бути видалені; крім того, часто трапляються аутлієри в даних, які негативно впливають на аналіз; вони повинні бути вирішені на стадії трансформації. Часто ми зустрічаємося з даними, які є надлишковими та не приносять жодної цінності бізнесу; такі дані видалені на стадії трансформації, щоб зберегти місце зберігання системи. Це проблеми, які вирішуються на стадії трансформації.
Фаза завантаження
Після витягування сирих даних та їхньої трансформації вони завантажуються до цільової системи, яка зазвичай є або дані сховища, або дані озера. Є два різні способи проведення фази завантаження.
- Повне завантаження: всі дані завантажуються одразу вперше в цільову систему. Це технічно менш складно, але займає більше часу. Це ідеально, коли розмір даних не надто великий.
- Інкрементне завантаження: інкрементне завантаження проводиться в інкрементах. Воно має дві підкатегорії.
- Потокове інкрементне завантаження: дані завантажуються в інтервалах, зазвичай щоденно. Це найкраще, коли дані знаходяться в малих кількостях.
- Пакетне інкрементне завантаження: у пакетному типі інкрементного завантаження дані завантажуються в пакетах з інтервалом між двома пакетами. Це ідеально, коли дані надто великі. Це швидко, але технічно більш складно.
Типи інструментів ETL
ETL проводиться двома способами, ручний ETL або безкодовий ETL. У ручному ETL几乎 немає автоматизації. Все кодується командою, що складається з наукового працівника даних, аналітика даних та інженера даних. Усі трубопроводи витягування, трансформації та завантаження проектуються для всіх наборів даних вручну. Все це призводить до великих втрат продуктивності та ресурсів.
Альтернативою є безкодовий ETL; ці інструменти зазвичай мають функції перетягування та скидання. Ці інструменти повністю усувають необхідність кодування, дозволяючи навіть некваліфікованим працівникам виконувати ETL. Завдяки їхній інтерактивній конструкції та інклюзивному підходу більшість підприємств використовують Informatica, Integrate.io, IBM Storage, Hadoop, Azure, Google Cloud Dataflow та Oracle Data Integrator для своїх операцій ETL.
Існують чотири типи інструментів безкодового ETL у галузі даних.
- Комерційні інструменти ETL
- Відкриті інструменти ETL
- Інструменти ETL на замовлення
- Хмарні інструменти ETL
Найкращі практики для ETL
Є деякі практики та протоколи, яких слід дотримуватися, щоб забезпечити оптимізований трубопровід ETL. Найкращі практики обговорюються нижче:
- Поняття контексту даних: як дані збираються та що означають метрики, повинні бути належним чином зрозумілі. Це допоможе визначити, які атрибути є надлишковими та повинні бути видалені.
- Пункти відновлення: у разі порушення трубопроводу та витоку даних слід мати протоколи для відновлення виточених даних.
- Журнал ETL: повинен бути підтриманий журнал ETL, який містить запис кожного процесу, який був виконаний з даними до, під час та після циклу ETL.
- Аудит: періодичний контроль даних, щоб переконатися, що дані знаходяться в тому стані, в якому ви їх хотіли.
- Маленький розмір даних: розмір баз даних та їхніх таблиць повинен бути малим, щоб дані були розподілені більш горизонтально, ніж вертикально. Ця практика забезпечує підвищення швидкості обробки та, відповідно, прискорення процесу ETL.
- Створення шару кешу: шар кешу – це шар високошвидкісного зберігання даних, який зберігає недавно використані дані на диску, де їх можна швидко доступити. Ця практика допомагає зберегти час, коли запитується кешований дані.
- Паралельна обробка: розгляд ETL як серійного процесу споживає велику кількість часу та ресурсів підприємства, що робить весь процес дуже неефективним. Рішенням є паралельна обробка та декілька інтеграцій ETL одночасно.
Випадки використання ETL
ETL робить операції гладкими та ефективними для підприємств багатьма способами, але ми розглянемо три найбільш популярні випадки використання тут.
Завантаження в хмару:
Зберігання даних локально – це дорогий варіант, який заставляє підприємства витрачати ресурси на покупку, зберігання, запуск та обслуговування серверів. Щоб уникнути всіх цих проблем, підприємства можуть безпосередньо завантажувати дані в хмару. Це зберігає цінні ресурси та час, які потім можуть бути інвестовані в покращення інших аспектів процесу ETL.
Об’єднання даних з різних джерел:
Дані часто розкидані по різних системах підприємства. Об’єднання даних з різних джерел в одному місці, щоб їх можна було обробити та потім проаналізувати, щоб поділитися з зацікавленими сторонами пізніше, здійснюється за допомогою процесу ETL. ETL забезпечує, щоб дані з різних джерел були уніфіковані, а цілісність даних залишилася цілою.
Прогнозування:
Приняття рішень, заснованих на даних, – це краєвий камінь успішної бізнес-стратегії. ETL допомагає підприємствам, витягуючи дані, трансформуючи їх та потім завантажуючи їх у бази даних, пов’язані з моделями машинного навчання. Ці моделі машинного навчання аналізують дані після проходження процесу ETL, а потім роблять прогнози на основі цих даних.
Майбутнє ETL у ландшафті даних
ETL, безумовно, грає роль хребта для архітектури даних; чи буде це так і надалі, ще невідомо, оскільки з появою Zero ETL у галузі технологій відбуваються великі зміни. З Zero ETL не буде необхідності у традиційних процесах витягування, трансформації та завантаження, але дані будуть безпосередньо передаватися до цільової системи майже в реальному часі.
Існують численні нові тенденції в екосистемі даних. Перегляньте unite.ai, щоб розширити свої знання про технологічні тенденції.












