кочан Какво е ETL? (Извличане, трансформиране, зареждане) Методология и случаи на използване - Unite.AI
Свържете се с нас
AI майсторски клас:

AI 101 г

Какво е ETL? (Извличане, трансформиране, зареждане) Методология и случаи на използване

mm
Обновено on

ETL означава „извличане, трансформиране, зареждане“. Това е процес, който интегрира данни от различни източници в едно хранилище, така че да могат да бъдат обработени и след това анализирани, така че от тях да може да се изведе полезна информация. Тази полезна информация е това, което помага на бизнеса да взема решения, основани на данни, и да расте.

„Данните са новото масло.“

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

Създаването на глобални данни се е увеличило експоненциално, толкова много, че според Forbes, с текущия темп, хората удвояват създаването на данни на всеки две години. В резултат на това модерният стек от данни се е развил. Витрините за данни са преобразувани в складове за данни и когато това не е достатъчно, са създадени езера от данни. Въпреки че във всички тези различни инфраструктури, един процес остава същият, ETL процесът.

В тази статия ще разгледаме методологията на ETL, случаите на употреба, ползите от нея и как този процес е помогнал за формирането на съвременния пейзаж на данните.

Методология на ETL

ETL прави възможно интегрирането на данни от различни източници на едно място, така че да могат да бъдат обработвани, анализирани и след това споделяни със заинтересованите страни в бизнеса. Той гарантира целостта на данните, които трябва да се използват за докладване, анализ и прогнозиране с модели за машинно обучение. Това е процес в три стъпки, който извлича данни от множество източници, трансформира ги и след това ги зарежда в инструменти за бизнес разузнаване. След това тези инструменти за бизнес разузнаване се използват от бизнеса за вземане на решения, базирани на данни.

Фазата на извличане

В тази фаза данните се извличат от множество източници с помощта на SQL заявки, кодове на Python, СУБД (системи за управление на бази данни) или ETL инструменти. Най-често срещаните източници са:

  • CRM (Customer Relationship Management) софтуер
  • Инструмент за анализ
  • Склад за данни
  • База данни
  • Облачни платформи за съхранение
  • Инструменти за продажби и маркетинг
  • Мобилни приложения

Тези източници са структурирани или неструктурирани, поради което форматът на данните не е еднакъв на този етап.

Фазата на трансформация

Във фазата на трансформация, извлечените необработени данни се трансформират и компилират във формат, който е подходящ за целевата система. За тази цел необработените данни преминават през няколко подпроцеса на трансформация, като например:

  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 няма да има нужда от традиционните процеси за извличане, трансформиране и зареждане, но данните ще бъдат директно прехвърлени към целевата система в почти реално време.

Има много нововъзникващи тенденции в екосистемата от данни. Разгледайте обединявам.ai за да разширите знанията си за технологичните тенденции.