Hvad er ETL?
ETL er en proces, der ekstraherer data fra forskellige kildesystemer, derefter transformerer dataene (som anvendelse af beregninger, sammenkædninger osv.) Og endelig indlæser dataene i Data Warehouse-systemet. Fuld form for ETL er Extract, Transform og Load.
Det er fristende at tro, at oprettelse af et datalager simpelthen udtrækker data fra flere kilder og indlæses i databasen på et datalager. Dette er langt fra sandheden og kræver en kompleks ETL-proces. ETL-processen kræver aktive input fra forskellige interessenter, herunder udviklere, analytikere, testere, topledere og er teknisk udfordrende.
For at opretholde sin værdi som et værktøj for beslutningstagere, skal datalagersystemet ændre sig med forretningsændringer. ETL er en tilbagevendende aktivitet (dagligt, ugentligt, månedligt) i et datalagersystem og skal være adræt, automatiseret og veldokumenteret.
I denne ETL-tutorial lærer du-
- Hvad er ETL?
- Hvorfor har du brug for ETL?
- ETL-proces i datavarehuse
- Trin 1) Ekstraktion
- Trin 2) Transformation
- Trin 3) Indlæser
- ETL-værktøjer
- Bedste praksis ETL-proces
Hvorfor har du brug for ETL?
Der er mange grunde til at vedtage ETL i organisationen:
- Det hjælper virksomheder med at analysere deres forretningsdata for at tage kritiske forretningsbeslutninger.
- Transaktionsdatabaser kan ikke besvare komplekse forretningsspørgsmål, der kan besvares med ETL-eksempel.
- Et datavarehus har et fælles datalager
- ETL giver en metode til at flytte data fra forskellige kilder til et datalager.
- Når datakilderne ændres, opdateres datalageret automatisk.
- Godt designet og dokumenteret ETL-system er næsten afgørende for succesen med et Data Warehouse-projekt.
- Tillad verifikation af datatransformations-, sammenlægnings- og beregningsregler.
- ETL-processen tillader sammenligning af eksempeldata mellem kilden og målsystemet.
- ETL-processen kan udføre komplekse transformationer og kræver det ekstra område for at gemme dataene.
- ETL hjælper med at migrere data til et datavarehus. Konverter til de forskellige formater og typer for at overholde et ensartet system.
- ETL er en foruddefineret proces til at få adgang til og manipulere kildedata i måldatabasen.
- ETL i datalager tilbyder dyb historisk kontekst for virksomheden.
- Det hjælper med at forbedre produktiviteten, fordi den kodificerer og genbruges uden behov for tekniske færdigheder.
ETL-proces i datavarehuse
ETL er en 3-trins proces

Trin 1) Ekstraktion
I dette trin i ETL-arkitektur ekstraheres data fra kildesystemet til iscenesættelsesområdet. Transformationer, hvis nogen, udføres i iscenesættelsesområdet, så kildesystemets ydeevne ikke forringes. Hvis beskadigede data kopieres direkte fra kilden til datalagerdatabasen, vil tilbageførsel også være en udfordring. Staging-område giver mulighed for at validere udpakkede data, inden de flytter ind i datalageret.
Datavarehus skal integrere systemer, der har forskellige
DBMS, hardware, operativsystemer og kommunikationsprotokoller. Kilder kan omfatte ældre applikationer som Mainframes, tilpassede applikationer, kontaktpunkter som ATM, opkaldsafbrydere, tekstfiler, regneark, ERP, data fra leverandører, partnere blandt andre.
Derfor har man brug for et logisk datakort, før data ekstraheres og indlæses fysisk. Dette datakort beskriver forholdet mellem kilder og måldata.
Tre dataekstraktionsmetoder:
- Fuld ekstraktion
- Delvis udvinding - uden opdateringsmeddelelse.
- Delvis udvinding - med opdateringsmeddelelse
Uanset hvilken metode der anvendes, skal ekstraktion ikke påvirke kildesystemernes ydelse og responstid. Disse kildesystemer er levende produktionsdatabaser. Enhver langsommere eller låsning kan påvirke virksomhedens bundlinje.
Nogle valideringer udføres under ekstraktion:
- Afstem poster med kildedataene
- Sørg for, at der ikke er indlæst spam / uønskede data
- Datatypekontrol
- Fjern alle typer duplikerede / fragmenterede data
- Kontroller, om alle tasterne er på plads eller ej
Trin 2) Transformation
Data, der ekstraheres fra kildeserveren, er rå og kan ikke bruges i sin oprindelige form. Derfor skal det renses, kortlægges og transformeres. Faktisk er dette det centrale trin, hvor ETL-processen tilføjer værdi og ændrer data, så der kan genereres indsigtsfulde BI-rapporter.
Det er et af de vigtige ETL-koncepter, hvor du anvender et sæt funktioner på udpakkede data. Data, der ikke kræver nogen transformation, kaldes som direkte flytning eller videregivelse af data .
I transformationstrin kan du udføre tilpassede operationer på data. For eksempel, hvis brugeren ønsker sum af salgsindtægter, som ikke er i databasen. Eller hvis fornavnet og efternavnet i en tabel er i forskellige kolonner. Det er muligt at sammenkæde dem inden indlæsning.

Følgende er problemer med dataintegritet:
- Forskellig stavning af den samme person som Jon, John osv.
- Der er flere måder at betegne firmanavn som Google, Google Inc.
- Brug af forskellige navne som Cleaveland, Cleveland.
- Der kan være en sag, at forskellige kontonumre genereres af forskellige applikationer til den samme kunde.
- I nogle data forbliver de krævede filer tomme
- Ugyldigt produkt indsamlet på POS som manuel indtastning kan føre til fejl.
Valideringer udføres i løbet af dette trin
- Filtrering - Vælg kun bestemte kolonner, der skal indlæses
- Brug af regler og opslagstabeller til datastandardisering
- Tegnsæt Konvertering og kodning håndtering
- Konvertering af måleenheder som dato / tidskonvertering, valutakonvertering, numeriske konverteringer osv.
- Valideringskontrol af datatærskel. F.eks. Kan alder ikke være mere end to cifre.
- Validering af dataflow fra mellemstationer til mellemliggende tabeller.
- Nødvendige felter skal ikke efterlades tomme.
- Rengøring (for eksempel kortlægning af NULL til 0 eller Køn Mand til "M" og Kvinde til "F" osv.)
- Opdel en kolonne i multipla og flet flere kolonner i en enkelt kolonne.
- Transponering af rækker og kolonner,
- Brug opslag til at flette data
- Brug af en hvilken som helst kompleks datavalidering (f.eks. Hvis de første to kolonner i en række er tomme, afviser den automatisk rækken fra behandling)
Trin 3) Indlæser
Indlæsning af data i måldatahusdatabasen er det sidste trin i ETL-processen. I et typisk datalager skal enorme mængder data indlæses i en relativt kort periode (nætter). Derfor skal belastningsprocessen optimeres til ydeevne.
I tilfælde af belastningsfejl skal gendannelsesmekanismer konfigureres til at genstarte fra fejlpunktet uden tab af dataintegritet. Data Warehouse-administratorer skal overvåge, genoptage, annullere belastninger i henhold til gældende serverydelse.
Typer af indlæsning:
- Indledende belastning - udfylder alle datavarehustabellerne
- Inkrementel belastning - anvender løbende ændringer efter behov med jævne mellemrum.
- Fuld opdatering - bruger indholdet af en eller flere tabeller og genindlæses med friske data.
Belastningsbekræftelse
- Sørg for, at nøglefeltdataene hverken mangler eller er nul.
- Test modelleringsvisninger baseret på måltabellerne.
- Kontroller, at kombinerede værdier og beregnede mål.
- Datakontrol i dimensionstabel såvel som historiktabel.
- Tjek BI-rapporterne på den indlæste fakta- og dimensionstabel.
ETL-værktøjer
Der er mange data warehousing værktøjer er tilgængelige på markedet. Her er nogle af de mest fremtrædende:
1. MarkLogic:
MarkLogic er en datalagerløsning, der gør dataintegration nemmere og hurtigere ved hjælp af en række forretningsfunktioner. Det kan forespørge på forskellige typer data som dokumenter, relationer og metadata.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle er den brancheførende database. Det tilbyder et bredt udvalg af valg af Data Warehouse-løsninger til både lokale og i skyen. Det hjælper med at optimere kundeoplevelser ved at øge driftseffektiviteten.
https://www.oracle.com/index.html
3. Amazon RedShift:
Amazon Redshift er Datawarehouse-værktøj. Det er et simpelt og omkostningseffektivt værktøj til at analysere alle typer data ved hjælp af standard SQL og eksisterende BI-værktøjer. Det giver også mulighed for at køre komplekse forespørgsler mod petabytes med strukturerede data.
https://aws.amazon.com/redshift/?nc2=h_m1
Her er en komplet liste over nyttige datalagerværktøjer.
Bedste praksis ETL-proces
Følgende er de bedste fremgangsmåder for ETL-processtrin:
Forsøg aldrig at rense alle data:
Hver organisation vil gerne have alle data rene, men de fleste af dem er ikke klar til at betale for at vente eller ikke klar til at vente. At rense det hele ville simpelthen tage for lang tid, så det er bedre ikke at prøve at rense alle data.
Rens aldrig noget:
Planlæg altid at rense noget, fordi den største grund til at oprette datavarehuset er at tilbyde renere og mere pålidelige data.
Bestem omkostningerne ved rensning af dataene:
Før du renser alle de beskidte data, er det vigtigt for dig at bestemme rengøringsomkostningerne for hvert beskidt dataelement.
For at fremskynde behandlingen af forespørgsler skal du have hjælpevisninger og indekser:
For at reducere lageromkostningerne skal du gemme opsummerede data på diskbånd. Der kræves også afvejning mellem mængden af data, der skal lagres, og dens detaljerede anvendelse. Trade-off på niveauet af data for at reducere lageromkostningerne.
Resumé:
- ETLstands for ekstraktion, transformation og belastning.
- ETL giver en metode til at flytte data fra forskellige kilder til et datalager.
- I det første trin ekstraktion ekstraheres data fra kildesystemet til iscenesættelsesområdet.
- I transformationstrinet renses og transformeres de data, der ekstraheres fra kilden.
- Indlæsning af data i måldatawarehuset er det sidste trin i ETL-processen.