ETL (Extract, Transform ja Load) protsess andmelaos
Mis on ETL?
ETL on protsess, mis eraldab andmed erinevatest lähtesüsteemidest, seejärel teisendab andmed (nt rakendab arvutusi, konkatenatsioone jne) ja lõpuks laadib andmed andmelao süsteemi. ETL-i täisvorm on väljavõte, teisendamine ja laadimine.
On ahvatlev arvata, et andmelao loomine on lihtsalt andmete hankimine mitmest allikast ja laadimine andmelao andmebaasi. See on tõest kaugel ja nõuab keerukat ETL-i protsessi. ETL protsess nõuab aktiivset panust erinevatelt sidusrühmadelt, sealhulgas arendajatelt, analüütikutelt, testijatelt, tippjuhtidelt ja on tehniliselt keeruline.
Et säilitada oma väärtust otsustajate tööriistana, peab andmelaosüsteem muutuma koos ärimuutustega. ETL on andmelaosüsteemi korduv tegevus (iga päev, kord nädalas, kuus) ning see peab olema agiilne, automatiseeritud ja hästi dokumenteeritud.
Milleks ETL-i vaja on?
ETL-i kasutuselevõtuks organisatsioonis on palju põhjuseid:
- See aitab ettevõtetel analüüsida oma äriandmeid kriitiliste äriotsuste tegemiseks.
- Tehinguandmebaasid ei suuda vastata keerukatele äriküsimustele, millele saab vastata ETL-i näitel.
- Andmeladu pakub ühist andmehoidlat
- ETL pakub meetodit andmete teisaldamiseks erinevatest allikatest andmelattu.
- Andmeallikate muutudes värskendatakse andmeladu automaatselt.
- Hästi läbimõeldud ja dokumenteeritud ETL-süsteem on andmelao projekti õnnestumiseks peaaegu hädavajalik.
- Lubage andmete teisendus-, koondamis- ja arvutusreeglite kontrollimine.
- ETL-protsess võimaldab näidisandmete võrdlemist lähte- ja sihtsüsteemi vahel.
- ETL-protsess võib teha keerulisi teisendusi ja nõuab andmete salvestamiseks lisaala.
- ETL aitab migreerida andmeid andmelattu. Ühe järjepideva süsteemi järgimiseks teisendage erinevatesse vormingutesse ja tüüpidesse.
- ETL on eelmääratletud protsess lähteandmetele juurdepääsuks ja sihtandmebaasi manipuleerimiseks.
- ETL andmelaos pakub ettevõttele sügavat ajaloolist konteksti.
- See aitab parandada tootlikkust, kuna kodifitseerib ja taaskasutab ilma tehnilisi oskusi vajamata.
ETL protsess andmeladudes
ETL on 3-etapiline protsess
1. etapp) ekstraheerimine
Selles ETL-i arhitektuuri etapis ekstraheeritakse andmed lähtesüsteemist lavastusalasse. Teisendused, kui neid on, tehakse lavastusalal nii, et lähtesüsteemi jõudlus ei halveneks. Samuti, kui rikutud andmed kopeeritakse otse allikast andmelao andmebaasi, on tagasipööramine väljakutseks. Peatusala annab võimaluse ekstraheeritud andmed valideerida enne nende andmelattu kolimist.
Andmeladu peab integreerima süsteeme, millel on erinevad
DBMS, riistvara, Operasüsteemid ja sideprotokollid. Allikad võivad hõlmata pärandrakendusi, nagu suurarvutid, kohandatud rakendused, kontaktpunktiseadmed, nagu sularahaautomaat, kõnelülitid, tekstifailid, arvutustabelid, ERP, muu hulgas tarnijate ja partnerite andmed.
Seetõttu on enne andmete väljavõtmist ja füüsilist laadimist vaja loogilist andmekaarti. See andmekaart kirjeldab seost allikate ja sihtandmete vahel.
Kolm andmete ekstraheerimise meetodit:
- Täielik ekstraheerimine
- Osaline ekstraheerimine - ilma värskendusteateta.
- Osaline ekstraheerimine – koos uuendusteatisega
Olenemata kasutatavast meetodist ei tohiks ekstraheerimine mõjutada lähtesüsteemide jõudlust ega reageerimisaega. Need lähtesüsteemid on reaalajas tootmisandmebaasid. Igasugune aeglustumine või lukustamine võib mõjutada ettevõtte lõpptulemust.
Ekstraheerimise ajal tehakse mõned valideerimised:
- Viige kirjed lähteandmetega kokku
- Veenduge, et rämpsposti/soovimatuid andmeid poleks laaditud
- Andmetüübi kontroll
- Eemaldage igat tüüpi dubleeritud/fragmenteeritud andmed
- Kontrollige, kas kõik võtmed on paigas või mitte
2. etapp) ümberkujundamine
Lähteserverist eraldatud andmed on toored ega ole algsel kujul kasutatavad. Seetõttu tuleb seda puhastada, kaardistada ja muuta. Tegelikult on see põhietapp, kus ETL-protsess lisab väärtust ja muudab andmeid selliselt, et saab luua arusaadavaid BI-aruandeid.
See on üks olulisi ETL-i kontseptsioone, mille puhul rakendate eraldatud andmetele funktsioonide komplekti. Andmeid, mis ei vaja transformatsiooni, nimetatakse kui otsene käik or andmeid läbima.
Teisendamisetapis saate andmetega teha kohandatud toiminguid. Näiteks kui kasutaja soovib müügitulu summat, mida andmebaasis pole. Või kui tabeli ees- ja perekonnanimi on erinevates veergudes. Enne laadimist on võimalik need omavahel ühendada.
Järgnevad andmed Integrity Probleemid:
- Sama isiku erinev kirjapilt nagu Jon, John jne.
- Ettevõtte nime tähistamiseks on mitu võimalust, nagu Google, Google Inc.
- Erinevate nimede kasutamine nagu Cleaveland, Cleveland.
- Võib juhtuda, et ühele kliendile genereerivad erinevad rakendused erinevad kontonumbrid.
- Teatud andmete puhul jäävad nõutavad failid tühjaks
- POS-is käsitsi sisestatuna kogutud kehtetu toode võib põhjustada vigu.
Valideerimine tehakse selles etapis
- Filtreerimine – valige laadimiseks ainult teatud veerud
- Reeglite ja otsingutabelite kasutamine andmete standardimiseks
- Märkide komplekti teisendamine ja kodeeringu käsitlemine
- Mõõtühikute teisendamine, näiteks kuupäeva ja kellaaja teisendamine, valuutade teisendamine, numbrite teisendamine jne.
- Andmete läve valideerimise kontroll. Näiteks vanus ei tohi olla pikem kui kaks numbrit.
- Andmevoo valideerimine etapialast vahetabeliteni.
- Kohustuslikke välju ei tohi tühjaks jätta.
- Puhastamine (näiteks NULL-i vastendamine väärtusele 0 või soole meessoost "M" ja naisele "F" jne)
- Jagage veerg mitmeks ja ühendage mitu veergu üheks veerguks.
- ridade ja veergude ümberpaigutamine,
- Kasutage andmete liitmiseks otsinguid
- Mis tahes keeruka andmete valideerimise kasutamine (nt kui rea kaks esimest veergu on tühjad, lükkab see rea töötlemise automaatselt tagasi)
Samm 3) Laadimine
Andmete laadimine sihtandmelao andmebaasi on ETL-i protsessi viimane samm. Tüüpilises andmelaos tuleb suhteliselt lühikese perioodi (ööd) jooksul laadida tohutu hulk andmeid. Seetõttu tuleks laadimisprotsess jõudluse jaoks optimeerida.
Koormustõrke korral tuleks taastamismehhanismid konfigureerida taaskäivitama tõrkekohast ilma andmete terviklikkuse kadumiseta. Andmelao administraatorid peavad jälgima, jätkama ja tühistama laadimisi vastavalt kehtivale serveri jõudlusele.
Laadimise tüübid:
- Esialgne koormus — kõigi andmelao tabelite täitmine
- Täiendav koormus — jooksvate muudatuste rakendamine vastavalt vajadusele perioodiliselt.
- Täielik värskendus —ühe või mitme tabeli sisu kustutamine ja värskete andmete uuesti laadimine.
Laadi kinnitus
- Veenduge, et võtmevälja andmed ei oleks puudu ega tühised.
- Testige sihttabelite põhjal modelleerimisvaateid.
- Kontrollige, kas kombineeritud väärtused ja arvutatud mõõdud.
- Andmete kontrollimine mõõtmete tabelis ja ajaloo tabelis.
- Kontrollige laaditud faktide ja dimensioonide tabeli BI-aruandeid.
ETL-i tööriistad
On palju ETL tööriistad on turul saadaval. Siin on mõned kõige silmapaistvamad:
1. MarkLogic:
MarkLogic on andmehoidla lahendus, mis muudab andmete integreerimise lihtsamaks ja kiiremaks, kasutades mitmesuguseid ettevõtte funktsioone. See võib teha päringuid erinevat tüüpi andmete kohta, nagu dokumendid, seosed ja metaandmed.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle on valdkonna juhtiv andmebaas. See pakub laias valikus andmelaolahendusi nii kohapealseks kui ka pilveteenuseks. See aitab optimeerida klientide kogemusi, suurendades tegevuse efektiivsust.
https://www.oracle.com/index.html
3. Amazon RedShift:
Amazon Redshift on andmehoidla tööriist. See on lihtne ja kulutõhus tööriist igat tüüpi andmete analüüsimiseks, kasutades standardset SQL ja olemasolevad BI tööriistad. Samuti võimaldab see käivitada keerulisi päringuid petabaitide struktureeritud andmete vastu.
https://aws.amazon.com/redshift/?nc2=h_m1
Siin on kasulike asjade täielik loetelu Andmeladu tööriistad.
ETL-i protsessi parimad tavad
Järgmised on ETL-i protsessi etappide parimad tavad.
Ärge kunagi proovige kõiki andmeid puhastada:
Iga organisatsioon tahaks, et kõik andmed oleksid puhtad, kuid enamik neist ei ole valmis ootamise eest maksma või pole valmis ootama. Selle kõige puhastamine võtaks lihtsalt liiga kaua aega, seega on parem mitte proovida kõiki andmeid puhastada.
Ärge kunagi puhastage midagi:
Plaanige alati midagi puhastada, sest andmelao ehitamise peamine põhjus on pakkuda puhtamaid ja usaldusväärsemaid andmeid.
Määrake andmete puhastamise maksumus:
Enne kõigi määrdunud andmete puhastamist on oluline määrata iga määrdunud andmeelemendi puhastamise maksumus.
Päringu töötlemise kiirendamiseks kasutage lisavaateid ja indekseid:
Salvestuskulude vähendamiseks salvestage kokkuvõtlikud andmed kettalintidele. Samuti on vaja kompromissi salvestatavate andmete mahu ja nende üksikasjaliku kasutamise vahel. Kompromiss andmete detailsuse tasemel salvestuskulude vähendamiseks.
kokkuvõte
- ETL tähistab ekstrakti, teisendust ja laadimist.
- ETL pakub meetodit andmete teisaldamiseks erinevatest allikatest a andmekogus.
- Ekstraheerimise esimeses etapis ekstraheeritakse andmed lähtesüsteemist lavastusalasse.
- Teisendusetapis allikast eraldatud andmed puhastatakse ja teisendatakse.
- Andmete laadimine sihtandmelattu on ETL-i protsessi viimane samm.