ETL
Vad det är och varför det är viktigt
ETL är en form av dataintegration som syftar på de tre stegen (extrahera, transformera, ladda) som används för att förena data från olika källor. Det används ofta för att bygga upp datalager. Under processens gång plockas (extraheras) data från ett källsystem, omvandlas (transformeras) till ett format som kan bli analyserat, för att sedan förvaras (laddas) i ett informationslager eller annat system. Extrahera, ladda, transformera (ELT) är en alternativ men besläktad metod som är utformad för att flytta hanteringen till databasen för att förbättra prestandan.
ETL:s historia
ETL växte i popularitet under 1970-talet när organisationer började att använda flera centralkataloger, eller databaser, för att förvara diverse företagsinformation. Behovet av att integrera data som var utspridd över de olika databaserna ökade snabbt. ETL blev standardmetoden för att ta data från olikartade källor och transformera dem innan de laddades in i en målkälla, eller destination.
I slutet av 1980-talet och början av 1990-talet började informationslager användas. Det var en distinkt sorts databas som erbjöd integrerad åtkomst till data från olika system – stordatorer, minidatorer, persondatorer och kalkylprogram. Det var dock vanligt att olika avdelningar valde att använda olika ETL-verktyg för olika informationslager. Tillsammans med sammanslagningar och förvärv ledde det till att många organisationer använde flera olika ETL-lösningar som inte var integrerade.
Med tiden har antalet dataformat, källor och system ökat något kolossalt. Extrahera, transformera, ladda är nu bara en av många metoder organisationer använder för att samla in, importera och hantera data. ETL och ELT är båda viktiga delar i en organisations övergripande strategi för dataintegration.
Varför ETL är viktigt
Företag har förlitat sig på ETL-processen i flera år för att få en enhetlig överblick av den data som driver bättre affärsbeslut. Än idag är den här metoden av att integrera data från olika system och källor en viktig komponent i en organisations verktygslåda för dataintegration.
ETL används för att flytta och omvandla data från många olika källor och ladda dem i olika mål, till exempel Hadoop.
- När det används med ett företagsdatalager (data i vila), erbjuder ETL en djupgående historisk kontext för företaget.
- Genom att erbjuda en enhetlig vy gör ETL det enklare för företag att analysera och rapportera data som är relevant för deras initiativ.
- ETL kan öka produktiviteten för dataexperter då det kodifierar och återanvänder processer som flyttar data utan att kräva tekniska färdigheter i att skriva kod eller skript.
- Med tiden har ETL utvecklats till att stödja nya integrationskrav för saker så som strömmad data.
- Organisationer behöver både ETL och ELT för att sammanföra data, upprätthålla precision och erbjuda den revision som vanligtvis krävs för lagring, rapportering och analysering av data.
ETL idag
Dagens snabba data (strömmad data) kan fångas och analyseras i farten med streaminganalys. Metoden gör det möjligt att agera omgående, baserat på vad som händer vid en viss tidpunkt. ETL erbjuder en historisk vy som placerar data i kontext, där organisationer får en heltäckande förståelse av verksamheten över tid. De två metoderna måste fungera ihop.
De mest framgångsrika organisationerna kommer att använda en tydlig och noggrann strategi som värdesätter dataintegration som en grundläggande hörnsten i det som gör dem konkurrenskraftiga.
–David Loshin, vd för Knowledge Integrity Inc. The New Data Integration Landscape: Moving Beyond Ad Hoc ETL to an Enterprise Data Integration Strategy
Lösningar för dataintegration från SAS
Våra lösningar för dataintegration fördelar integrationslösningar på alla plattformar och kan koppla upp sig mot alla käll- och måldatabaser virtuellt.
Hur ETL används
De centrala ETL- och ELT-verktygen arbetar tillsammans med andra verktyg för dataintegration, samt med flera andra aspekter av datahantering, så som datakvalitet, dataförvaltning, virtualisering och metadata. Populära användningsområden i dagsläget inkluderar:
ETL och traditionellt användande
ETL är en beprövad metod som många organisationer förlitar sig på varje dag, däribland återförsäljare som regelbundet behöver se över försäljningsdata och vårdgivare på jakt efter en korrekt skildring av yrkanden. ETL kan slå samman och putsa data från informationslager eller andra databaser till ett format som är begripligt för alla i organisationen. ETL används även för att flytta data från äldre system till modernare system med andra dataformat. Det används ofta för att förena data vid sammangående av företag, samt för att samla in och föra samman data från externa leverantörer och partner.
ETL med big data – omvandlingar och adaptrar
Den som samlar in mest data vinner. Det kanske inte stämmer helt men att ha enkel åtkomst till stor mängd data gör företag konkurrenskraftiga. I dagens samhälle behöver företag ha tillgång till alla sorters big data, från videor och sociala medier till sakernas internet (IoT), serverloggar, spatial data, öppen eller crowdsourced data med mera. ETL-leverantörer lägger regelbundet till nya omvandlingar till sina verktyg för att stödja de nyuppkomna kraven och nya datakällorna. Adaptrar ger tillgång till ett brett utbud av datakällor och verktyg för dataintegration interagerar med adaptrarna för att effektivt extrahera och ladda data.
ETL för Hadoop – med mera
ETL har utvecklats till att stödja integrationer långt mycket mer än traditionella informationslager. Avancerade ETL-verktyg kan ladda och konvertera strukturerade och ostrukturerade data till Hadoop. De här verktygen läser och skriver flera filer i tandem till och från Hadoop, vilket simplifierar hur data slås samman till en gemensam transformeringsprocess. Vissa lösningar utnyttjar bibliotek av förbyggda ETL-omvandlingar för både transaktions- och interaktionsdata på Hadoop. ETL stödjer även integration över transaktionella system, operativa databaser, BI-plattformar, hubbar för hantering av masterdata (Master Data Management, MDM) och molnet.
ETL och Self-Service Data Access
Self-service data preparation är en snabbväxande trend som gör det möjligt för affärsanvändare och andra icke-tekniska dataproffs att komma åt, förena och transformera data. Metoden är till för ändamålet i fråga och gör företag mer flexibla samtidigt som det frigör it-avdelningen från uppgiften av att tillhandahålla data i olika format för affärsanvändare. Mindre tid läggs på dataförberedelse och mer tid läggs på att ta fram insikter. På så sätt kan både affärsmän och dataproffs öka sin effektivitet och organisationer kan utöka sin användning av data för att fatta bättre beslut.
ETL och datakvalitet
ETL och andra programvaruverktyg för dataintegration, som används för rensning, profilering och revision av data, försäkrar att datan är pålitlig. ETL-verktyg integrerar med verktyg för datakvalitet och ETL-leverantörer lägger till likartade verktyg i sina lösningar, så som de som används för kartläggning av data och datahärkomst.
ETL och metadata
Metadata ger oss insikt i datahärkomst och datas påverkan på andra datatillgångar i verksamheten. Då dataarkitektur blir alltmer avancerad är det viktigt att spåra hur olika dataelement i er verksamhet används och är besläktade. Om ni till exempel lägger till användarnamnet för en Twitterprofil i er kunddatabas behöver ni veta vad som kommer att påverkas, så som ETL-jobb, applikationer eller rapporter.
Hur det fungerar
ETL är nära besläktat med ett antal andra funktioner, processer och tekniker för dataintegration. Att förstå dessa ger en bättre förståelse för hur ETL fungerar.
SQL | Strukturerat frågespråk (Structured Query Language) är den vanligaste metoden som används för att komma åt och transformera data inom databaser. |
Omvandling, affärsregler och adaptrar | Efter att data har extraherats använder ETL affärsregler för att omvandla datan till nya format. Den omvandlade datan laddas sedan in i målet. |
Kartläggning av data | Kartläggning av data är en del av omvandlingen. Kartläggning ger applikationen detaljerade instruktioner om hur den ska få tag i den data som ska behandlas. Det förklarar även vilket källfält som hör ihop med vilket målfält. Exempelvis kan det tredje attributet från en webbplats dataflöde vara användarnamnet, det fjärde kan vara tidsstämpeln för när aktiviteten ägde rum, medan det femte kan vara produkten som användaren klickade på. En applikations- eller ETL-process som använder den datan skulle behöva koppla de här fälten eller attributen från källsystemet (d.v.s. webbplatsens dataflöde för aktiviteter) till det format som krävs av målsystemet. Om målsystemet är ett system för Customer Relationship Management (kundvård) lagrar det kanske användarnamnet först och tidsstämpeln som det femte. Den valda produkten lagras kanske inte över huvud taget. I fall som detta kan en omvandling för att formatera data till det förväntade formatet (och i rätt ordning) ske från stunden datan läses av i källan till dess den skrivs in i målet. |
Skript | ETL är en metod för att automatisera skripten (instruktionerna) som jobbar bakom kulisserna för att flytta och omvandla data. Innan ETL fanns skrevs individuella skript i C eller COBOL för att överföra data mellan specifika system. Det ledde till att flertalet databaser körde flera skript. De första ETL-verktygen kördes på stordatorer i satsvisa processer. ETL övergick senare till UNIX- och PC-plattformar. Idag använder organisationer metoder för både skript och programmatisk dataförflyttning. |
ETL kontra ELT | Från början fanns ETL. Senare lade organisationer till ELT som ett komplement. ELT extraherar data från ett källsystem, laddar in det i ett målsystem för att sedan använda källsystemets datorkapacitet för att utföra omvandlingarna. Det påskyndar databearbetningen då bearbetningen sker där datan finns. |
Datakvalitet | Innan data integreras skapas ofta en samlingsplats där den kan rensas, datavärden kan standardiseras (GBG och Göteborg, herr och hr eller Alex och Alexander), adresser kan bekräftas och dubbletter kan tas bort. Många lösningar är fristående, men procedurer för datakvalitet kan nu köras som en av omvandlingarna i processen för dataintegration. |
Schemaläggning och bearbetning | ETL-verktyg och teknologier kan möjliggöra batchschemaläggning eller realtidsmöjligheter. De kan även hantera stora volymer av data i servern, alternativt flytta ner bearbetning till databasnivå. Genom att bearbeta i databasen i stället för i en specialmotor undviker man datadubbletter och förebygger behovet av att använda extra kapacitet på databasplattformen. |
Batchbearbetning | ETL syftar vanligtvis på en batchbearbetning där man flyttar stora datavolymer mellan två system under ett så kallat ”batch window”. Under den tidsperioden – säg från kl. 12.00 till kl. 13.00 – kan inga händelser utföras på vare sig käll- eller målsystemet då data synkroniseras. De flesta banker gör en batchbearbetning nattetid för att lösa transaktioner som skett under dagen. |
Webbtjänster | Webbtjänster är en internetbaserad metod för att tillhandahålla data eller funktionalitet till diverse applikationer i närapå realtid. Metoden simplifierar processer vid dataintegration och kan leverera mer värde från data, snabbare. Säg till exempel att en kund kontaktar er kundtjänst. Bara genom att skicka kundens telefonnummer till en webbtjänst som extraherar data från flertalet källor eller en MDM-hubb skulle ni kunna få fram kundens fullständiga profil med en nanosekunds responstid. Med större kunskap om kunden kan kundtjänstsarbetaren fatta bättre beslut om hur de ska interagera med kunden. |
Hantering av masterdata | MDM är en process där man samlar data för att skapa en enhetlig vy av data från flera olika källor. Både ETL och dataintegrationsmöjligheter kombineras för att ge full affärskontroll. |
Datavirtualisering | Virtualisering är en flexibel metod för att kombinera data för att skapa en virtuell vy av data utan att flytta den. Datavirtualisering skiljer sig från ETL, även om kartläggning och sammanfogning av data fortfarande sker finns det inget behov av att lagra resultaten i en fysisk samlingstabell. Det beror på att vyn ofta lagras i cacheminnet för att förbättra prestandan. Vissa lösningar för datavirtualisering, så som SAS Federation Server, erbjuder dynamisk datamaskering, randomisering samt funktioner för beräkning av hashvärden för att skydda känsliga data från särskilda roller eller grupper. SAS erbjuder dessutom datakvalitet på begäran medan vyn genereras. |
Event stream processing och ETL | När datahastigheten ökar till flera miljoner händelser per sekund kan bearbetning av händelseströmmar användas för att övervaka och bearbeta dataströmmar, samt hjälpa till att fatta beslut i rätt tid. Ett exempel inom energiområdet är predikativ analysering av dataströmmar för att upptäcka när en undervattenspump behöver lagas, vilket minskar driftstopp och skadans omfattning och storlek. |
Läs mer om ämnet
- Data quality management: What you need to knowData quality isn’t simply good or bad. Data quality management puts quality in context to improve fitness of the data you use for analysis and decision-making.
- The importance of data quality: A sustainable approachBad data wrecks countless business ventures. Here’s a data quality plan to help you get it right.
- 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.