ETL
Hvad det er og hvorfor det er vigtigt
ETL er en type dataintegration, der henviser til de tre trin (udtræk, transformation, indlæsning), der bruges til at samle data fra flere kilder. Det bruges ofte til at opbygge et datalager. Under denne proces tages (udtrækkes) data fra et kildesystem, konverteres (transformeres) til et format, der kan analyseres, og lagres (indlæses) i et datalager eller et andet system. Udtræk, indlæsning, transformation (ELT) er en alternativ, men relateret tilgang, der er designet til at skubbe bearbejdningen til databasen for at forbedre ydeevnen.
Historien om ETL
ETL blev populært i 1970'erne, da organisationer begyndte at anvende flere datalagre, eller databaser, til at lagre forskellige typer forretningsinformation. Behovet for at integrere data, der var spredt på tværs af disse databaser, voksede hurtigt. ETL blev standardmetoden til at trække data fra forskellige kilder og omdanne det, før det indlæses i en bestemt kilde eller destination.
Sidst i 1980'erne og først i 1990'erne dukkede datalagre op på markedet. Som en særlig form for database tilbød datalagre integreret adgang til data fra flere systemer - mainframe-computere, minicomputere, personlige computere og regneark. Men forskellige afdelinger valgte ofte forskellige ETL-værktøjer til brug med forskellige datalagre. Sammen med fusioner og opkøb endte mange organisationer med at have flere forskellige ETL-løsninger, som ikke var integrerede.
Med tiden er antallet af dataformater, -kilder og -systemer vokset enormt. Udtræk, transformation og indlæsning er nu blot en af flere metoder, som virksomheder anvender til at indsamle, importere og bearbejde data. ETL og ELT er begge vigtige dele af en organisations bredere dataintegrationsstrategi.
Hvorfor er ETL vigtigt?
Virksomheder har brugt ETL-processen i mange år til at få et samlet overblik over de data, der sikrer bedre forretningsmæssige beslutninger. I dag er denne metode til at integrere data fra flere systemer og kilder stadig en kernekomponent i en organisations værktøjskasse til dataintegration.
ETL bruges til at flytte og transformere data fra mange forskellige kilder og indlæse dem i forskellige targets, f.eks. i Hadoop.
- Når ETL bruges sammen med virksomhedens datalager (data i hvile), giver det en dyb historisk kontekst for virksomheden.
- Ved at tilbyde et samlet overblik gør ETL det lettere for virksomhedsbrugere at analysere og rapportere om data, der er relevante for deres initiativer.
- ETL kan øge dataprofessionelles produktivitet, fordi det kodificerer og genanvender processer, der flytter data uden at kræve tekniske færdigheder til at skrive kode eller scripts.
- ETL har udviklet sig med tiden til at understøtte nye integrationskrav til for eksempel streaming af data.
- Virksomheder har brug for både ETL og ELT for at samle data, sikre nøjagtighed og levere den revision, der typisk kræves i forbindelse med datalagring, rapportering og analyse.
ETL i dag
Moderne data, der bevæger sig hurtigt (streaming data), kan indsamles og analyseres på farten via streaming-analyse. Denne tilgang giver mulighed for at handle med det samme, baseret på hvad der sker på et givet tidspunkt. Men det historiske overblik, som ETL giver, sætter data ind i en sammenhæng. Til gengæld får virksomhederne en velafrundet forståelse af deres forretning over tid. De to tilgange skal arbejde sammen.
De mest succesfulde virksomheder skal have en klar og præcis strategi på plads, der betragter dataintegration som en grundlæggende hjørnesten i den måde de differentierer sig på i forhold til konkurrenterne.
–David Loshin, formand for Knowledge Integrity Inc. The New Data Integration Landscape: Moving Beyond Ad Hoc ETL to an Enterprise Data Integration Strategy
Løsninger til dataintegration fra SAS
Vores dataintegrationsløsninger distribuerer integrationsopgaver på tværs af alle platforme og opretter praktisk talt forbindelse til alle kilde- og target-datalagre.
Hvordan ETL bliver brugt
Centrale ETL- og ELT-værktøjer arbejder sammen med andre dataintegrationsværktøjer og med forskellige andre aspekter af datastyring - såsom datakvalitet, datastyring, virtualisering og metadata. Populære anvendelser i dag omfatter:
ETL og traditionelle anvendelser
ETL er en gennemtestet metode, som mange virksomheder er afhængige af hver dag - f.eks. detailhandlere, der har brug for at se salgsdata regelmæssigt, eller sundhedsudbydere, der er på udkig efter en nøjagtig beskrivelse af skadesanmeldelser. ETL kan sammensætte og overfladebearbejde transaktionsdata fra et lager eller et andet datalager, så de er klar til at blive præsenteret for forretningsfolk i et format, de kan forstå. ETL bruges også til at migrere data fra ældre systemer til moderne systemer med andre dataformater. Det bruges ofte til at konsolidere data fra virksomhedsfusioner og til at indsamle og sammenføje data fra eksterne leverandører eller partnere.
ETL med big data - transformationer og adaptere
Den, der får flest data, vinder. Det er ikke nødvendigvis sandt, men at have nem adgang til en bred vifte af data kan give virksomhederne en konkurrencefordel. I dag har virksomheder brug for adgang til alle former for big data - fra videoer, sociale medier Internet of Things (IoT), serverlogs, spatiale data, åbne eller crowdsourcede data og meget mere. ETL-leverandører tilføjer ofte nye transformationer til deres værktøjer for at understøtte disse nye krav og nye datakilder. Adaptere giver adgang til et stort udvalg af datakilder, og dataintegrationsværktøjer interagerer med disse adaptere for at udtrække og indlæse data effektivt.
ETL til Hadoop - og meget mere
ETL har udviklet sig til at understøtte integration på tværs af meget mere end traditionelle datalagre. Avancerede ETL-værktøjer kan indlæse og konvertere strukturerede og ustrukturerede data til Hadoop. Disse værktøjer læser og skriver flere filer parallelt fra og til Hadoop, hvilket forenkler, hvordan data flettes ind i en fælles transformationsproces. Nogle løsninger indeholder biblioteker med forudbyggede ETL-transformationer til både transaktions- og interaktionsdata, der kører på Hadoop. ETL understøtter også integration på tværs af transaktionssystemer, operationelle datalagre, BI-platforme, master data management (MDM)-hubs og skyen.
ETL og selvbetjent dataadgang
Self-service data preparation er en hurtigt voksende tendens, der giver forretningsbrugere og andre ikke-tekniske dataeksperter mulighed for at få adgang til, kombinere og transformere data. Denne ad hoc-tilgang øger organisationens fleksibilitet og befrier IT for byrden med at levere data i forskellige formater til forretningsbrugere. Der bruges mindre tid på dataforberedelse og mere tid på at skabe indsigt. Derfor kan både forretnings- og it-datamedarbejdere forbedre produktiviteten, og organisationer kan opskalere måden, de bruger data på, så de kan træffe bedre beslutninger.
ETL og datakvalitet
ETL og andre softwareværktøjer til dataintegration - der bruges til datarensning, profilering og revision - sikrer, at data er troværdige. ETL-værktøjer integreres med datakvalitetsværktøjer og ETL-leverandører inkorporerer relaterede værktøjer i deres løsninger, f.eks. dem, der bruges til datakortlægning og datalinjer.
ETL og Metadata
Metadata hjælper os med at forstå dataenes oprindelse (hvor de kommer fra) og deres indvirkning på andre dataaktiver i organisationen. Efterhånden som dataarkitekturen bliver mere kompleks, er det vigtigt at holde styr på, hvordan de forskellige dataelementer i din organisation bruges og hænger sammen. Hvis du f.eks. tilføjer et Twitter-kontonavn til din kundedatabase, skal du være klar over, hvilke ETL-processer, applikationer eller rapporter der bliver påvirket.
Hvordan det virker
ETL er tæt forbundet med en række andre dataintegrationsfunktioner, -processer og -teknikker. En forståelse af disse giver et klarere billede af, hvordan ETL fungerer.
SQL | "Structured query language" er et programmeringssprog og den mest almindelige metode til at få adgang til og transformere data i en database. |
Transformationer, forretningsregler og adaptere | Efter udtræk af data gør ETL brug af forretningsregler til at transformere dataene til nye formater. De transformerede data læses derefter ind i destinationssystemet. |
Data mapping | Data mapping også kaldet datakortlægning er en del af transformationsprocessen. Kortlægningen giver detaljerede instruktioner til et program om, hvordan det kan hente de data, det skal bearbejde. Den beskriver også, hvilket kildefelt der kortlægges som destinationsfelt. For eksempel kan den tredje attribut fra et datafeed med hjemmesideaktivitet være brugernavnet, den fjerde kan være tidsstemplet for, hvornår aktiviteten fandt sted, og den femte kan være det produkt, som brugeren klikkede på. En applikation eller ETL-proces, der bruger disse data, skal kortlægge de samme felter eller attributter fra kildesystemet (dvs. webstedsaktivitetsdatafeedet) til det format, der kræves af destinationssystemet. Hvis destinationssystemet var et system til styring af kunderelationer, ville det måske gemme brugernavnet først og tidsstemplet som det femte; det ville måske slet ikke gemme det valgte produkt. I dette tilfælde kan der ske en transformation for at formatere datoen til det ønskede format (og i den rigtige rækkefølge) mellem det tidspunkt, hvor dataene læses fra kilden og skrives til destinationssystemet. |
Scripts | ETL er en metode til at automatisere de scripts (sæt af instruktioner), der kører bag kulisserne i forbindelse med flytning og transformation af data. Før ETL blev scripts skrevet individuelt i C eller COBOL når data skulle overføres mellem specifikke systemer. Det resulterede i, at flere databaser kørte mange forskellige scripts. Tidlige ETL-værktøjer kørte på mainframes i en batchproces. Senere migrerede ETL til UNIX- og pc-platforme. I dag bruger organisationer stadig både scripts og metoder til programmatisk databevægelse. |
ETL versus ELT | I begyndelsen handlede det om ETL. Senere tilføjede organisationer den supplerende metode ELT. ELT udtrækker data fra et kildesystem, indlæser dem i et destinationssystem og bruger derefter kildesystemets processorkraft til at udføre transformationerne. Det gør databehandlingen hurtigere, fordi det hele sker der, hvor dataene er. |
Datakvalitet | Før man integrerer dataene, opretter man ofte et transitområde, hvor man kan rense data, standardisere dataværdier (NC og North Carolina, Mister og Mr. eller Matt og Matthew), verificere adresser og fjerne dubletter. Mange løsninger er stadig autonome, men nu kan datakvalitetsprocedurer køres som en af transformationerne i dataintegrationsprocessen. |
Planlægning og bearbejdning | ETL-værktøjer og -teknologier kan levere enten batchplanlægning eller realtidsfunktioner. De kan også bearbejde data i store mængder på serveren, eller de kan overføre bearbejdningen til databaseniveau. Denne fremgangsmåde med at bearbejde data i en database i stedet for i en specialiseret processor gør, at man undgår dataduplikering og ikke behøver at bruge ekstra kapacitet på databaseplatformen. |
Bearbejdning i batches | ETL refererer normalt til en batchproces, hvor man flytter store mængder data mellem to systemer i det, der kaldes et "batch-vindue". I dette tidsrum - f.eks. mellem kl. 12 og 13 - kan der ikke ske noget med hverken kilde- eller destinationssystemet, under synkroniseringen af data. De fleste banker udfører en batchproces om natten for at afvikle transaktioner, der finder sted i løbet af dagen. |
Webtjenester | Webtjenester er en internetbaseret metode til at levere data eller funktionalitet til forskellige applikationer i næsten realtid. Denne metode forenkler dataintegrationsprocesserne og kan levere mere værdi fra data, hurtigere. Lad os f.eks. sige, at en kunde kontakter dit callcenter. Du kan oprette en webtjeneste, der returnerer den komplette kundeprofil med en svartid på under et sekund ved blot at sende et telefonnummer til en webtjeneste, der udtrækker data fra flere kilder eller en MDM-hub. Med større viden om kunden kan kundeservicemedarbejderen træffe bedre beslutninger om, hvordan han skal interagere med kunden. |
Håndtering af stamdata | MDM er processen med at trække data sammen for at få en enkelt visning af data på tværs af flere kilder. Det omfatter både ETL- og dataintegrationsfunktioner for at kombinere data og skabe en " golden record" eller "best record". |
Datavirtualisering | Virtualisering er en effektiv metode til at kombinere data for at få en virtuel visning af data uden at skulle flytte dem. Datavirtualisering adskiller sig fra ETL, for selv om der stadig sker en kortlægning og sammenkobling af data, er der ikke behov for en fysisk staging-tabel til at gemme resultaterne. Det skyldes, at visningen ofte gemmes i hukommelsen og caches for at forbedre ydeevnen. Nogle datavirtualiseringsløsninger, som SAS Federation Server, giver mulighed for dynamisk datamaskering, randomisering og hashing-funktioner for at beskytte følsomme data mod specifikke typer af personer eller grupper. SAS leverer også on-demand datakvalitet, mens visningen genereres. |
Bearbejdning af hændelsesstrømme og ETL | Når datahastigheden stiger til millioner af hændelser i sekundet, kan man anvende processering af hændelsesstrømme til at overvåge datastrømme, bearbejde dem og hjælpe med at træffe mere rettidige beslutninger. Et eksempel inden for energiområdet er at bruge prognostisk analyse af datastrømme til at finde ud af, hvornår en dykpumpe har brug for reparation og dermed reducere både nedetid og omfanget og størrelsen af skader på pumpen. |
Læs mere om dette emne
- Key questions to kick off your data analytics projectsThere’s no single blueprint for starting a data analytics project. Technology expert Phil Simon suggests these 10 questions as a guide.
- What is a data lake & why does it matter?As containers for multiple collections of data in one convenient location, data lakes allow for self-service access, exploration and visualization. In turn, businesses can see and respond to new information faster.
- 5 data management best practices to help you do data rightFollow these 5 data management best practices to make sure your business data gives you great results from analytics.
- Data lineage: Making artificial intelligence smarterLear how data lineage plays a vital role in understanding data, making it a foundational principle of AI.