заглушки Що таке ETL? (Видобуток, трансформація, завантаження) Методологія та випадки використання - Unite.AI
Зв'язатися з нами
Майстер-клас ШІ:

AI 101

Що таке ETL? (Видобуток, перетворення, завантаження) Методологія та випадки використання

mm
оновлений on

ETL розшифровується як «вилучення, перетворення, завантаження». Це процес, який об’єднує дані з різних джерел в єдине сховище, щоб їх можна було обробити, а потім проаналізувати, щоб з них можна було отримати корисну інформацію. Ця корисна інформація допомагає компаніям приймати рішення на основі даних і розвиватися.

«Дані — це нова нафта».

Клайв Хамбі, математик

Глобальне створення даних зросло в геометричній прогресії настільки, що, згідно з Forbes, за нинішніх темпів люди подвоюють обсяги створення даних кожні два роки. У результаті розвинувся сучасний стек даних. Вітрини даних були перетворені на сховища даних, а коли цього було недостатньо, були створені озера даних. Хоча в усіх цих різних інфраструктурах один процес залишився незмінним – процес ETL.

У цій статті ми розглянемо методологію ETL, випадки її використання, її переваги та те, як цей процес допоміг сформувати сучасний ландшафт даних.

Методологія ETL

ETL дає змогу інтегрувати дані з різних джерел в одному місці, щоб їх можна було обробляти, аналізувати, а потім ділитися із зацікавленими сторонами бізнесу. Це забезпечує цілісність даних, які будуть використовуватися для звітів, аналізу та прогнозування за допомогою моделей машинного навчання. Це триетапний процес, який витягує дані з багатьох джерел, перетворює їх, а потім завантажує в інструменти бізнес-аналітики. Ці інструменти бізнес-аналітики потім використовуються компаніями для прийняття рішень на основі даних.

Фаза вилучення

На цьому етапі дані витягуються з кількох джерел за допомогою запитів SQL, кодів Python, СУБД (систем керування базами даних) або інструментів ETL. Найпоширенішими джерелами є:

  • Програмне забезпечення CRM (Customer Relationship Management).
  • Інструмент Analytics
  • Інформаційне сховище
  • Database
  • Хмарні платформи зберігання
  • Інструменти продажу та маркетингу
  • Мобільні додатки

Ці джерела є структурованими або неструктурованими, тому формат даних на даному етапі неоднаковий.

Фаза трансформації

На етапі трансформації витягнуті необроблені дані перетворюються та компілюються у формат, який підходить для цільової системи. Для цього необроблені дані проходять кілька підпроцесів перетворення, наприклад:

  1. Очищення — неузгоджені та відсутні дані обслуговуються.
  2. Стандартизація — скрізь застосовано єдине форматування.
  3. Видалення дублювання — видаляються зайві дані.
  4. Виявлення викидів — викиди виявляються та нормалізуються.
  5. Сортування — дані організовані таким чином, щоб підвищити ефективність.

Окрім переформатування даних, існують також інші причини необхідності перетворення даних. Нульові значення, якщо вони присутні в даних, слід видалити; крім цього, у даних часто присутні викиди, які негативно впливають на аналіз; їх слід розглядати на етапі трансформації. Часто ми стикаємося з даними, які є зайвими та не приносять жодної цінності для бізнесу; такі дані видаляються на етапі трансформації, щоб заощадити місце для зберігання системи. Це проблеми, які вирішуються на етапі трансформації.

Фаза навантаження

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

  1. Повне завантаження: усі дані завантажуються відразу в цільову систему вперше. Технічно це менш складно, але займає більше часу. Ідеально підходить у випадку, коли обсяг даних не надто великий.
  2. Поступове завантаження: Поступове завантаження, як випливає з назви, здійснюється поетапно. Він має дві підкатегорії.
  • Інкрементне завантаження потоку: дані завантажуються з інтервалами, зазвичай щодня. Цей вид завантаження найкращий, коли дані містяться в невеликих обсягах.
  • Пакетне поступове завантаження: у пакетному типі поетапного завантаження дані завантажуються пакетами з інтервалом між двома пакетами. Це ідеально, коли дані занадто великі. Це швидко, але технічно складніше.

Типи інструментів ETL

ETL виконується двома способами: ETL вручну або ETL без коду. У ручному ETL майже немає автоматизації. Все кодується командою, до складу якої входять спеціалісти з обробки даних, аналітики даних та інженери даних. Усі конвеєри вилучення, перетворення та завантаження розроблені для всіх наборів даних вручну. Все це призводить до величезної продуктивності та втрати ресурсів.

Альтернативою є ETL без коду; ці інструменти зазвичай мають функції перетягування. Ці інструменти повністю усувають необхідність кодування, таким чином дозволяючи навіть нетехнічним працівникам виконувати ETL. Завдяки інтерактивному дизайну та комплексному підходу більшість компаній використовують Informatica, Integrate.io, IBM Storage, Hadoop, Azure, Google Cloud Dataflow і Oracle Data Integrator для своїх операцій ETL.

У галузі обробки даних існують чотири типи інструментів ETL без коду.

  1. Комерційні інструменти ETL
  2. Інструменти ETL з відкритим кодом
  3. Спеціальні інструменти ETL
  4. Хмарні інструменти ETL

Найкращі практики для ETL

Є певні методи та протоколи, яких слід дотримуватися, щоб забезпечити оптимізований конвеєр ETL. Найкращі практики обговорюються нижче.

  1. Розуміння контексту даних: слід правильно розуміти, як збираються дані та що означають показники. Це допоможе визначити, які атрибути є зайвими та їх слід видалити.
  2. Контрольні точки відновлення: якщо конвеєр зламаний і стався витік даних, необхідно мати протоколи для відновлення витоку даних.
  3. Журнал ETL: необхідно вести журнал ETL, який містить записи про кожен процес, який було виконано з даними до, під час і після циклу ETL.
  4. Аудит: перевірка даних після певного інтервалу просто для того, щоб переконатися, що дані знаходяться в тому стані, у якому ви хотіли.
  5. Невеликий розмір даних: розмір баз даних і їхніх таблиць має бути невеликим, щоб дані розповсюджувалися більше горизонтально, ніж вертикально. Ця практика забезпечує підвищення швидкості обробки та, відповідно, прискорює процес ETL.
  6. Створення рівня кешу: рівень кешу — це високошвидкісний рівень зберігання даних, який зберігає нещодавно використані дані на диску, де до них можна швидко отримати доступ. Ця практика допомагає заощадити час, коли кешовані дані є тими, що запитує система.
  7. Паралельна обробка: розгляд ETL як послідовного процесу з’їдає велику частину часу та ресурсів бізнесу, що робить весь процес надзвичайно неефективним. Рішення полягає в паралельній обробці та кількох інтеграціях ETL одночасно.

Випадки використання ETL

ETL робить операції плавними та ефективними для бізнесу різними способами, але ми обговоримо тут три найпопулярніші варіанти використання.

Завантаження в хмару:

Локальне зберігання даних є дорогим варіантом, який змушує підприємства витрачати ресурси на купівлю, утримання, роботу та підтримку серверів. Щоб уникнути всіх цих клопотів, підприємства можуть безпосередньо завантажувати дані в хмару. Це економить цінні ресурси та час, які потім можна інвестувати для покращення інших аспектів процесу ETL.

Об’єднання даних з різних джерел:

Дані часто розкидані по різних системах організації. Об’єднання даних із різних джерел в одному місці, щоб їх можна було обробити, а потім проаналізувати, щоб пізніше поділитися із зацікавленими сторонами, здійснюється за допомогою процесу ETL. ETL гарантує, що дані з різних джерел форматуються однаково, а цілісність даних залишається незмінною.

Прогнозне моделювання:

Прийняття рішень на основі даних є наріжним каменем успішної бізнес-стратегії. ETL допомагає підприємствам, витягуючи дані, перетворюючи їх, а потім завантажуючи в бази даних, які пов’язані з моделями машинного навчання. Ці моделі машинного навчання аналізують дані після того, як вони пройшли процес ETL, а потім роблять прогнози на основі цих даних.

Майбутнє ETL в ландшафті даних

ETL, безумовно, відіграє роль магістралі для архітектури даних; чи залишиться це так чи ні, ще невідомо, тому що із запровадженням Zero ETL у технологічній індустрії великі зміни неминучі. З Zero ETL не було б потреби в традиційних процесах вилучення, перетворення та завантаження, але дані передавалися б безпосередньо в цільову систему майже в режимі реального часу.

В екосистемі даних з’являються численні тенденції. Перевірити unite.ai розширити свої знання про технологічні тренди.