Hva er ETL?
ETL er en prosess som trekker ut dataene fra forskjellige kildesystemer, deretter transformerer dataene (som å bruke beregninger, sammenkoblinger osv.) Og til slutt laster dataene inn i Data Warehouse-systemet. Full form for ETL er Extract, Transform and Load.
Det er fristende å tenke at det å lage et datalager bare trekker ut data fra flere kilder og lastes inn i databasen til et datalager. Dette er langt fra sannheten og krever en kompleks ETL-prosess. ETL-prosessen krever aktive innspill fra forskjellige interessenter, inkludert utviklere, analytikere, testere, toppledere og er teknisk utfordrende.
For å opprettholde verdien som et verktøy for beslutningstakere, må Data warehouse-systemet endres med forretningsendringer. ETL er en tilbakevendende aktivitet (daglig, ukentlig, månedlig) i et datalagersystem og må være smidig, automatisert og godt dokumentert.
I denne ETL-opplæringen vil du lære-
- Hva er ETL?
- Hvorfor trenger du ETL?
- ETL-prosess i datavarehus
- Trinn 1) Utvinning
- Trinn 2) Transformasjon
- Trinn 3) Laster
- ETL Verktøy
- Beste praksis ETL-prosess
Hvorfor trenger du ETL?
Det er mange grunner til å ta i bruk ETL i organisasjonen:
- Det hjelper selskaper å analysere forretningsdataene sine for å ta kritiske forretningsbeslutninger.
- Transaksjonelle databaser kan ikke svare på komplekse forretningsspørsmål som kan besvares med ETL-eksempel.
- Et datavarehus har et felles datalager
- ETL gir en metode for å flytte dataene fra forskjellige kilder til et datalager.
- Når datakildene endres, oppdateres datalageret automatisk.
- Godt designet og dokumentert ETL-system er nesten viktig for å lykkes med et Data Warehouse-prosjekt.
- Tillat verifisering av datatransformasjons-, aggregerings- og beregningsregler.
- ETL-prosessen tillater sammenligning av eksempeldata mellom kilden og målsystemet.
- ETL-prosessen kan utføre komplekse transformasjoner og krever det ekstra området for å lagre dataene.
- ETL hjelper til med å migrere data til et datavarehus. Konverter til de forskjellige formatene og typene for å følge et konsistent system.
- ETL er en forhåndsdefinert prosess for tilgang til og manipulering av kildedata i måldatabasen.
- ETL i datalager tilbyr dyp historisk sammenheng for virksomheten.
- Det hjelper med å forbedre produktiviteten fordi den kodifiserer og gjenbrukes uten behov for tekniske ferdigheter.
ETL-prosess i datavarehus
ETL er en 3-trinns prosess

Trinn 1) Utvinning
I dette trinnet med ETL-arkitektur blir data hentet fra kildesystemet til iscenesettelsesområdet. Transformasjoner hvis noen blir gjort i iscenesettelsesområdet, slik at ytelsen til kildesystemet ikke blir svekket. Hvis ødelagte data kopieres direkte fra kilden til datalagerdatabasen, vil tilbakestilling også være en utfordring. Staging-området gir en mulighet til å validere utpakkede data før de flytter inn i datalageret.
Datalageret må integrere systemer som har forskjellige
DBMS, maskinvare, operativsystemer og kommunikasjonsprotokoller. Kilder kan omfatte eldre applikasjoner som Mainframes, tilpassede applikasjoner, kontaktpunkter som ATM, samtalebrytere, tekstfiler, regneark, ERP, data fra leverandører, partnere blant andre.
Derfor trenger man et logisk datakart før data ekstraheres og lastes fysisk. Dette datakartet beskriver forholdet mellom kilder og måldata.
Tre datautvinningsmetoder:
- Full utvinning
- Delvis utvinning - uten oppdateringsvarsel.
- Delvis utvinning - med oppdateringsvarsel
Uavhengig av metoden som brukes, bør utvinning ikke påvirke ytelsen og responstiden til kildesystemene. Disse kildesystemene er direkte produksjonsdatabaser. Enhver bremsing eller låsing kan påvirke selskapets bunnlinje.
Noen valideringer gjøres under utvinning:
- Avstem postene med kildedataene
- Forsikre deg om at det ikke er lastet inn spam / uønskede data
- Datatypekontroll
- Fjern alle typer dupliserte / fragmenterte data
- Sjekk om alle nøklene er på plass eller ikke
Trinn 2) Transformasjon
Data hentet fra kildeserveren er rå og ikke brukbar i sin opprinnelige form. Derfor må den renses, kartlegges og transformeres. Faktisk er dette nøkkeltrinnet der ETL-prosessen tilfører verdi og endrer data slik at innsiktsfulle BI-rapporter kan genereres.
Det er et av de viktige ETL-konseptene der du bruker et sett med funksjoner på ekstraherte data. Data som ikke krever noen transformasjon kalles som direkte flytting eller gjennomføring av data .
I transformasjonstrinn kan du utføre tilpassede operasjoner på data. For eksempel hvis brukeren ønsker salgsinntekter som ikke er i databasen. Eller hvis fornavnet og etternavnet i en tabell er i forskjellige kolonner. Det er mulig å sammenkoble dem før lasting.

Følgende er problemer med dataintegritet:
- Ulike stavemåter for den samme personen som Jon, John, etc.
- Det er flere måter å betegne firmanavn som Google, Google Inc.
- Bruk av forskjellige navn som Cleaveland, Cleveland.
- Det kan være tilfelle at forskjellige kontonumre genereres av forskjellige applikasjoner for samme kunde.
- I noen data er påkrevde filer tomme
- Ugyldig produkt samlet på POS som manuell oppføring kan føre til feil.
Valideringer gjøres i løpet av dette stadiet
- Filtrering - Velg bare bestemte kolonner som skal lastes inn
- Bruke regler og oppslagstabeller for datastandardisering
- Tegnsett Konvertering og koding
- Konvertering av måleenheter som dato / tidskonvertering, valutakonvertering, numeriske konverteringer osv.
- Valideringskontroll for dataterskel. Alder kan for eksempel ikke være mer enn to sifre.
- Validering av datastrøm fra iscenesettelsesområdet til mellomtabellene.
- Nødvendige felt skal ikke stå blanke.
- Rengjøring (for eksempel å kartlegge NULL til 0 eller kjønn hann til "M" og hunn til "F" osv.)
- Del en kolonne i multipler og slå sammen flere kolonner i en enkelt kolonne.
- Transponering av rader og kolonner,
- Bruk oppslag for å slå sammen data
- Ved å bruke en hvilken som helst kompleks datavalidering (f.eks. Hvis de to første kolonnene i en rad er tomme, avviser den automatisk raden fra behandling)
Trinn 3) Laster
Lasting av data i måldatahusdatabasen er det siste trinnet i ETL-prosessen. I et typisk datalager må enorme datamengder lastes inn i en relativt kort periode (netter). Derfor bør belastningsprosessen optimaliseres for ytelse.
I tilfelle belastningsfeil, bør gjenopprettingsmekanismer være konfigurert til å starte på nytt fra feilpunktet uten tap av dataintegritet. Data Warehouse-administratorer må overvåke, gjenoppta, avbryte belastninger i henhold til gjeldende serverytelse.
Typer lasting:
- Initial Load - fyller ut alle datavarehustabellene
- Inkrementell belastning - bruke pågående endringer etter behov med jevne mellomrom.
- Full oppdatering - bruk av innholdet i en eller flere tabeller og lasting med nye data.
Lastverifisering
- Forsikre deg om at nøkkelfeltdataene verken mangler eller er null.
- Test modelleringsvisninger basert på måltabellene.
- Sjekk at kombinerte verdier og beregnede mål.
- Datakontroller i dimensjonstabell samt historiktabell.
- Sjekk BI-rapportene på den lastede fakta- og dimensjonstabellen.
ETL Verktøy
Det er mange datavareverktøy som er tilgjengelige i markedet. Her er noen av de mest fremtredende:
1. MarkLogic:
MarkLogic er en datalagerløsning som gjør dataintegrering enklere og raskere ved hjelp av en rekke forretningsfunksjoner. Det kan spørre om forskjellige typer data som dokumenter, relasjoner og metadata.
https://www.marklogic.com/product/getting-started/
2. Oracle:
Oracle er den bransjeledende databasen. Det tilbyr et bredt utvalg av Data Warehouse-løsninger for både lokale og i skyen. Det hjelper til med å optimalisere kundeopplevelser ved å øke driftseffektiviteten.
https://www.oracle.com/index.html
3. Amazon RedShift:
Amazon Redshift er Datawarehouse-verktøyet. Det er et enkelt og kostnadseffektivt verktøy for å analysere alle typer data ved hjelp av standard SQL og eksisterende BI-verktøy. Det tillater også å kjøre komplekse spørsmål mot petabyte med strukturerte data.
https://aws.amazon.com/redshift/?nc2=h_m1
Her er en komplett liste over nyttige datalagerverktøy.
Beste praksis ETL-prosess
Følgende er de beste metodene for ETL-prosess trinn:
Forsøk aldri å rense alle dataene:
Hver organisasjon vil gjerne ha alle dataene rene, men de fleste av dem er ikke klare til å betale for å vente eller ikke klare til å vente. Å rense det hele tar ganske enkelt for lang tid, så det er bedre å ikke prøve å rense alle dataene.
Rens aldri noe:
Planlegg alltid å rengjøre noe fordi den største grunnen til å bygge datavarehuset er å tilby renere og mer pålitelige data.
Bestem kostnadene for å rense dataene:
Før du renser alle skitne data, er det viktig for deg å bestemme rensekostnaden for hvert skitten dataelement.
For å få raskere behandling av spørringer, ha hjelpevisninger og indekser:
For å redusere lagringskostnadene, lagre oppsummerte data på diskbånd. Avveining mellom volumet av data som skal lagres og detaljert bruk er også nødvendig. Avveie på granularitetsnivået til data for å redusere lagringskostnadene.
Sammendrag:
- ETLstands for Extract, Transform and Load.
- ETL gir en metode for å flytte dataene fra forskjellige kilder til et datalager.
- I første trinns ekstraksjon ekstraheres data fra kildesystemet til iscenesettelsesområdet.
- I transformasjonstrinnet blir dataene hentet fra kilden renset og transformert.
- Lasting av data til måldatahuset er det siste trinnet i ETL-prosessen.