ETL (Extract, Transform, and Load) proces u skladištu podataka
Što je ETL?
ETL je proces koji izvlači podatke iz različitih izvornih sustava, zatim transformira podatke (poput primjene izračuna, spajanja itd.) i na kraju učitava podatke u sustav Data Warehouse. Puni oblik ETL-a je Ekstrakt, Transformacija i Učitavanje.
Primamljivo je pomisliti da je stvaranje skladišta podataka jednostavno izvlačenje podataka iz više izvora i učitavanje u bazu podataka skladišta podataka. Ovo je daleko od istine i zahtijeva složen ETL proces. ETL proces zahtijeva aktivno sudjelovanje različitih dionika uključujući programere, analitičare, testere, najviše rukovoditelje i tehnički je izazovan.
Kako bi zadržao svoju vrijednost kao alata za donositelje odluka, sustav skladišta podataka treba se mijenjati s poslovnim promjenama. ETL je ponavljajuća aktivnost (dnevna, tjedna, mjesečna) sustava skladišta podataka i mora biti agilna, automatizirana i dobro dokumentirana.
Zašto vam je potreban ETL?
Mnogo je razloga za usvajanje ETL-a u organizaciji:
- Pomaže tvrtkama da analiziraju svoje poslovne podatke za donošenje ključnih poslovnih odluka.
- Transakcijske baze podataka ne mogu odgovoriti na složena poslovna pitanja na koja se može odgovoriti ETL primjerom.
- Skladište podataka pruža zajedničko spremište podataka
- ETL pruža metodu premještanja podataka iz različitih izvora u skladište podataka.
- Kako se izvori podataka mijenjaju, skladište podataka će se automatski ažurirati.
- Dobro osmišljen i dokumentiran ETL sustav gotovo je bitan za uspjeh projekta skladišta podataka.
- Omogućuje provjeru pravila transformacije podataka, združivanja i izračuna.
- ETL proces omogućuje usporedbu uzoraka podataka između izvornog i ciljnog sustava.
- ETL proces može izvesti složene transformacije i zahtijeva dodatno područje za pohranu podataka.
- ETL pomaže u migraciji podataka u skladište podataka. Pretvorite u različite formate i vrste kako biste se pridržavali jednog dosljednog sustava.
- ETL je unaprijed definirani proces za pristup i manipuliranje izvornim podacima u ciljnoj bazi podataka.
- ETL u skladištu podataka nudi duboki povijesni kontekst za poslovanje.
- Pomaže u poboljšanju produktivnosti jer kodificira i ponovno koristi bez potrebe za tehničkim vještinama.
ETL proces u skladištima podataka
ETL je proces u 3 koraka
Korak 1) Ekstrakcija
U ovom koraku ETL arhitekture, podaci se izdvajaju iz izvornog sustava u pripremno područje. Transformacije, ako ih ima, provode se u pripremnom području tako da performanse izvornog sustava nisu degradirane. Također, ako se oštećeni podaci kopiraju izravno iz izvora u bazu podataka skladišta podataka, vraćanje će biti izazov. Pripremno područje daje priliku za provjeru valjanosti ekstrahiranih podataka prije nego što se presele u skladište podataka.
Skladište podataka treba integrirati sustave koji imaju različite
DBMS, hardver, Operating sustavi i komunikacijski protokoli. Izvori mogu uključivati naslijeđene aplikacije kao što su glavna računala, prilagođene aplikacije, uređaji za kontaktne točke poput bankomata, sklopke za pozive, tekstualne datoteke, proračunske tablice, ERP, podatke dobavljača, partnera između ostalog.
Stoga je potrebna logička mapa podataka prije nego što se podaci ekstrahiraju i fizički učitaju. Ova karta podataka opisuje odnos između izvora i ciljanih podataka.
Tri metode ekstrakcije podataka:
- Potpuna ekstrakcija
- Djelomično izdvajanje - bez obavijesti o ažuriranju.
- Djelomično izdvajanje - s obavijesti o ažuriranju
Bez obzira na korištenu metodu, ekstrakcija ne bi trebala utjecati na performanse i vrijeme odziva izvornih sustava. Ovi izvorni sustavi žive su proizvodne baze podataka. Svako usporavanje ili blokiranje moglo bi utjecati na krajnji rezultat tvrtke.
Neke se provjere provode tijekom ekstrakcije:
- Uskladite zapise s izvornim podacima
- Uvjerite se da nije učitana neželjena pošta/neželjeni podaci
- Provjera tipa podataka
- Uklonite sve vrste dupliciranih/fragmentiranih podataka
- Provjerite jesu li svi ključevi na mjestu ili ne
Korak 2) Transformacija
Podaci izvučeni s izvornog poslužitelja su sirovi i ne mogu se koristiti u izvornom obliku. Stoga ga treba očistiti, mapirati i transformirati. Zapravo, ovo je ključni korak u kojem ETL proces dodaje vrijednost i mijenja podatke tako da se mogu generirati pronicljiva BI izvješća.
To je jedan od važnih ETL koncepata gdje primjenjujete skup funkcija na ekstrahirane podatke. Podaci koji ne zahtijevaju nikakvu transformaciju nazivaju se as izravan potez or proći kroz podatke.
U koraku transformacije možete izvoditi prilagođene operacije na podacima. Na primjer, ako korisnik želi zbroj prihoda od prodaje koji nije u bazi podataka. Ili ako su ime i prezime u tablici u različitim stupcima. Moguće ih je spojiti prije učitavanja.
Slijede podaci Integrity Problemi:
- Različito pisanje iste osobe kao što su Jon, John itd.
- Postoji više načina za označavanje imena tvrtke kao što su Google, Google Inc.
- Korištenje različitih naziva poput Cleaveland, Cleveland.
- Može se dogoditi da različite aplikacije generiraju različite brojeve računa za istog korisnika.
- U nekim podacima potrebne datoteke ostaju prazne
- Nevažeći proizvod preuzet na POS-u jer ručni unos može dovesti do pogrešaka.
Validacije se rade tijekom ove faze
- Filtriranje – odaberite samo određene stupce za učitavanje
- Korištenje pravila i tablica pretraživanja za standardizaciju podataka
- Pretvorba skupa znakova i rukovanje kodiranjem
- Pretvorba mjernih jedinica poput pretvorbe datuma i vremena, pretvorbe valuta, numeričke pretvorbe itd.
- Provjera valjanosti praga podataka. Na primjer, dob ne može imati više od dvije znamenke.
- Validacija protoka podataka od pripremnog područja do srednjih tablica.
- Obavezna polja ne smiju ostati prazna.
- Čišćenje (na primjer, mapiranje NULL u 0 ili Muški spol u "M" i Ženski u "Ž" itd.)
- Podijelite stupac na više i spojite više stupaca u jedan stupac.
- Transponiranje redaka i stupaca,
- Koristite pretraživanja za spajanje podataka
- Korištenje bilo koje složene provjere valjanosti podataka (npr. ako su prva dva stupca u retku prazna, tada se red automatski odbija od obrade)
Korak 3) Učitavanje
Učitavanje podataka u bazu podataka ciljnog skladišta posljednji je korak ETL procesa. U tipičnom skladištu podataka, ogromna količina podataka mora se učitati u relativno kratkom razdoblju (noći). Stoga bi proces učitavanja trebao biti optimiziran za performanse.
U slučaju kvara učitavanja, mehanizmi oporavka trebaju biti konfigurirani za ponovno pokretanje od točke kvara bez gubitka integriteta podataka. Administratori skladišta podataka moraju nadzirati, nastaviti i otkazivati učitavanja prema prevladavajućoj izvedbi poslužitelja.
Vrste utovara:
- Početno opterećenje — popunjavanje svih tablica skladišta podataka
- Inkrementalno opterećenje — povremena primjena tekućih promjena prema potrebi.
- Potpuno osvježenje —brisanje sadržaja jedne ili više tablica i ponovno učitavanje sa svježim podacima.
Provjera opterećenja
- Osigurajte da podaci o ključnom polju niti nedostaju niti su nulti.
- Testirajte prikaze modeliranja na temelju ciljnih tablica.
- Provjerite kombinirane vrijednosti i izračunate mjere.
- Provjere podataka u tablici dimenzija kao i tablici povijesti.
- Provjerite BI izvješća na učitanoj tablici činjenica i dimenzija.
ETL alati
Postoje mnoge ETL alati dostupni su na tržištu. Evo nekih od najistaknutijih:
1. MarkLogic:
MarkLogic je rješenje za skladištenje podataka koje čini integraciju podataka lakšom i bržom korištenjem niza značajki poduzeća. Može postavljati upite različitim vrstama podataka poput dokumenata, odnosa i metapodataka.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle je vodeća baza podataka u industriji. Nudi širok raspon izbora rješenja skladišta podataka za lokalnu upotrebu i oblak. Pomaže optimizirati korisničko iskustvo povećanjem operativne učinkovitosti.
https://www.oracle.com/index.html
3. Amazon crvenaShift:
Amazon Redshift je Datawarehouse alat. To je jednostavan i isplativ alat za analizu svih vrsta podataka pomoću standarda SQL i postojeće BI alate. Također omogućuje izvođenje složenih upita prema petabajtima strukturiranih podataka.
https://aws.amazon.com/redshift/?nc2=h_m1
Ovdje je potpuni popis korisnih Alati za skladište podataka.
ETL proces najbolje prakse
Slijede najbolje prakse za korake ETL procesa:
Nikad ne pokušavajte očistiti sve podatke:
Svaka organizacija bi htjela imati sve podatke čiste, ali većina njih nije spremna platiti čekanje ili nije spremna čekati. Čišćenje svega bi jednostavno trajalo predugo, stoga je bolje ne pokušavati očistiti sve podatke.
Nikad ništa ne čistite:
Uvijek planirajte nešto očistiti jer je najveći razlog za izgradnju Data Warehousea ponuditi čišće i pouzdanije podatke.
Odredite cijenu čišćenja podataka:
Prije čišćenja svih prljavih podataka, važno je da odredite trošak čišćenja za svaki prljavi podatkovni element.
Da biste ubrzali obradu upita, imajte pomoćne prikaze i indekse:
Kako biste smanjili troškove pohrane, pohranite sažete podatke na diskovne trake. Također, potreban je kompromis između količine podataka koji se pohranjuju i njihove detaljne upotrebe. Kompromis na razini granularnosti podataka za smanjenje troškova pohrane.
rezime
- ETL je kratica za Extract, Transform and Load.
- ETL pruža metodu premještanja podataka iz različitih izvora u a skladište podataka.
- U ekstrakciji prvog koraka, podaci se ekstrahiraju iz izvornog sustava u pripremno područje.
- U koraku transformacije, podaci ekstrahirani iz izvora se čiste i transformiraju.
- Učitavanje podataka u ciljno skladište podataka posljednji je korak ETL procesa.