etl-hero-background.jpg

ETL

Wat is het en waarom is het belangrijk

ETL is een methode voor data-integratie die bestaat uit drie stappen: extraheren, transformeren en laden. Deze stappen worden gebruikt om data uit verschillende bronnen samen te brengen. ETL wordt vaak toegepast bij het opzetten van een data warehouse. Gedurende dit proces wordt data uit een bronsysteem gehaald (extract), omgezet (transform) naar een formaat dat geschikt is voor analyse, en opgeslagen (load) in een datawarehouse of ander systeem. Extraheren, laden en transformeren (ELT) is een alternatieve aanpak die gericht is op het verplaatsen van de verwerking naar de database om de prestaties te verbeteren.

Geschiedenis van ETL

ETL werd populair in de jaren 70, toen bedrijven verschillende databases begonnen te gebruiken om diverse soorten bedrijfsinformatie op te slaan. Al snel groeide de behoefte om de gegevens te integreren die verspreid waren over deze databases. ETL werd de standaardmethode om gegevens uit verschillende bronnen te extraheren en transformeren, en deze te laden in een doelsysteem of bestemming.

Eind jaren 80 en begin jaren 90 verschenen de datawarehouses. Datawarehouses, een speciaal type database, boden geïntegreerde toegang tot gegevens uit verschillende systemen, zoals mainframe-computers, minicomputers, pc's en spreadsheets. Verschillende afdelingen kozen vaak verschillende ETL-tools voor het werken met diverse datawarehouses. Door fusies en overnames werkten veel organisaties met verschillende ETL-oplossingen die niet geïntegreerd waren.

In de loop der tijd is het aantal dataformaten, -bronnen en -systemen sterk toegenomen. Extraheren, transformeren en laden is tegenwoordig slechts één van de vele methoden die organisaties hanteren om data te verzamelen, importeren en verwerken. ETL en ELT vormen beide belangrijke elementen van de meer uitgebreide data-integratiestrategie van een organisatie.

Waarom is ETL belangrijk?

Bedrijven maken al jarenlang gebruik van het ETL-proces om inzicht te krijgen in de data die ze nodig hebben voor het nemen van betere beslissingen. Deze methode om data uit verschillende systemen en bronnen te integreren, blijft vandaag de dag een cruciaal onderdeel van de toolbox voor data-integratie binnen een organisatie.

Extract Transfrom Load - infographic

ETL wordt gebruikt om gegevens uit diverse bronnen te verplaatsen, te transformeren en naar verschillende bestemmingen te laden, zoals Hadoop.

  • Wanneer ETL wordt toegepast in combinatie met een enterprise datawarehouse ('data at rest'), levert het een uitgebreide historische context voor het bedrijf.
  • ETL maakt het voor zakelijke gebruikers gemakkelijker om relevante data voor hun initiatieven te analyseren en hierover te rapporteren door een overzicht te bieden.
  • ETL helpt dataprofessionals productiever te zijn doordat het processen codeert en herbruikbaar maakt voor het verplaatsen van data, zonder dat technische kennis vereist is om code of scripts te schrijven.
  • ETL heeft zich in de loop der tijd ontwikkeld om te voldoen aan de nieuwe integratie-eisen, zoals die voor streaming data.
  • Organisaties hebben zowel ETL als ELT nodig om data te integreren, de nauwkeurigheid te waarborgen en de benodigde auditing te leveren voor datawarehousing, rapportage en analytics

ETL in de wereld van vandaag

De snelle gegevens van vandaag (streaming data) kunnen direct worden verzameld en geanalyseerd met behulp van streaming analytics. Deze benadering maakt het mogelijk om onmiddellijk te reageren op wat er op dat moment speelt. ETL biedt echter een historisch perspectief waarin data in de juiste context wordt geplaatst. Organisaties krijgen na verloop van tijd een duidelijk beeld van het bedrijf. De twee benaderingen moeten complementair zijn.

De meest succesvolle organisaties beschikken over een duidelijke en nauwkeurige strategie, waarbij data-integratie wordt beschouwd als een essentiële factor om zich te onderscheiden van de concurrentie.
–David Loshin, President van Knowledge Integrity Inc.  Het nieuwe landschap van data-integratie: Van ad-hoc-ETL naar een strategie voor data-integratie in bedrijven

 

SAS-oplossingen voor data-integratie

Onze oplossingen voor data-integratie verdelen integratietaken over verschillende platforms en maken virtuele verbinding met iedere bron- of doeldataopslag.

Ontdek meer over de data-integratieoplossingen van SAS.

Hoe wordt ETL toegepast?

ETL- en ELT-tools werken samen met andere data-integratietools en verschillende andere aspecten van datamanagement, zoals datakwaliteit, datagovernance, virtualisatie en metadata. Enkele veelvoorkomende toepassingen zijn:

ETL en traditionele toepassingen

ETL is een bewezen methode die door veel organisaties dagelijks wordt gebruikt, zoals retailers die regelmatig verkoopdata moeten analyseren of zorgverleners die een nauwkeurige weergave van claims wensen. ETL kan transactiedata uit een datawarehouse of andere opslaglocaties combineren en presenteren, zodat het klaar is voor analyse door zakelijke gebruikers in een voor hen begrijpelijk formaat. ETL wordt ook gebruikt om data van verouderde systemen naar moderne systemen te migreren, waarbij andere dataformaten worden gehanteerd. Het wordt vaak ingezet om gegevens van bedrijfsfusies te integreren en om informatie van externe leveranciers of partners te verzamelen en samen te voegen.

ETL met big data – Transformaties en adapters

Wie de meeste data heeft, wint. Hoewel dit niet noodzakelijk waar is, kan het beschikken over gemakkelijke toegang tot een grote hoeveelheid data bedrijven een concurrentievoordeel opleveren. Tegenwoordig hebben bedrijven toegang nodig tot verschillende soorten big data, zoals video's, sociale media, het Internet of Things (IoT), serverlogs, spatial data, open of crowdsourced data, en nog veel meer. ETL-leveranciers breiden hun tools regelmatig uit met nieuwe transformaties om tegemoet te komen aan de opkomende behoeften en gegevensbronnen. Adapters geven toegang tot een breed scala aan databronnen, terwijl tools voor data-integratie samenwerken met deze adapters om gegevens efficiënt te extraheren en te laden.

ETL voor Hadoop en meer

ETL is geëvolueerd om integratie te ondersteunen met veel meer dan alleen traditionele datawarehouses. Geavanceerde ETL-tools kunnen zowel gestructureerde als ongestructureerde data laden en omzetten naar Hadoop. Deze tools lezen en schrijven meerdere bestanden parallel van en naar Hadoop, waardoor het samenvoegen van data in een algemeen transformatieproces wordt vereenvoudigd. Sommige oplossingen bieden bibliotheken met kant-en-klare ETL-transformaties voor transactie- en interactiedata, die uitgevoerd worden op Hadoop. ETL ondersteunt ook de integratie tussen transactiesystemen, operationele gegevensopslag, BI-platforms, MDM-hubs (Master Data Management) en de cloud.

ETL en selfservice gegevenstoegang

Self-service datavoorbereiding is een snelgroeiende trend die zakelijke gebruikers en andere niet-technische dataprofessionals in staat stelt om gegevens te openen, te combineren en te transformeren. Deze ad-hoc-aanpak vergroot de flexibiliteit van de organisatie en ontlast IT van de verantwoordelijkheid om gegevens in diverse formaten beschikbaar te stellen aan zakelijke gebruikers. Hierdoor gaat er minder tijd naar het voorbereiden van data en meer tijd naar het verkrijgen van inzichten. Zo kunnen zowel zakelijke als IT-dataprofessionals hun productiviteit verbeteren, terwijl organisaties data op grotere schaal kunnen inzetten om beter onderbouwde beslissingen te nemen.

ETL en datakwaliteit

ETL- en andere softwaretools voor data-integratie – die worden gebruikt voor het opschonen, beoordelen en auditen van data – zorgen ervoor dat data betrouwbaar is. ETL-tools worden geïntegreerd met datakwaliteitstools, en ETL-leveranciers voegen gerelateerde oplossingen toe, zoals tools voor datamapping en datalineage.

ETL en metadata

Metadata biedt inzicht in de herkomst van gegevens (de oorsprong ervan) en toont hoe deze gegevens andere data-assets binnen de organisatie beïnvloeden. Omdat data-architecturen steeds complexer worden, is het essentieel om bij te houden hoe de verschillende data-elementen binnen je organisatie worden gebruikt en met elkaar in verbinding staan. Als je bijvoorbeeld een Twitter-accountnaam toevoegt aan je klantendatabase, is het belangrijk te weten welke onderdelen daardoor beïnvloed worden, zoals ETL-processen, applicaties of rapportages.

Hoe werkt het

ETL is nauw verbonden met verschillende functies, processen en technieken die gericht zijn op data-integratie. Door dit te begrijpen, krijg je een beter inzicht in hoe ETL werkt. 

SQLGestructureerde querytaal is de meest toegepaste techniek voor het opvragen en aanpassen van gegevens in een database.
Transformatie, bedrijfsregels en adapters 
Nadat de gegevens zijn geëxtraheerd, past ETL bedrijfsregels toe om deze om te zetten naar nieuwe formaten. De omgezette gegevens worden daarna in de bestemming geladen.
GegevenstoewijzingGegevenstoewijzing of Data mapping is een essentieel onderdeel van het transformatieproces. Het biedt een gedetailleerde handleiding aan een applicatie over hoe de benodigde gegevens verzameld kunnen worden voor verdere verwerking. Het geeft aan welk bronveld gekoppeld is aan welk bestemmingsveld. Het derde attribuut van een datafeed met websiteactiviteit kan bijvoorbeeld de gebruikersnaam zijn, het vierde attribuut de tijdsaanduiding van de activiteit en het vijfde attribuut het product waarop de gebruiker heeft geklikt. Een applicatie of ETL-proces dat deze gegevens gebruikt, moet dezelfde velden of attributen van het bronsysteem (de datafeed voor website-activiteit) omzetten naar het formaat dat vereist is door het doelsysteem. Als het bestemmingssysteem een klantrelatiebeheersysteem is, kan het de gebruikersnaam als eerste opslaan en de tijdsaanduiding als vijfde. Het is mogelijk dat het geselecteerde product helemaal niet wordt opgeslagen. In dit geval kan een transformatie worden toegepast om de datum te formatteren naar het gewenste formaat (en de juiste volgorde) tijdens het proces van het uitlezen van de brongegevens en het wegschrijven naar het doel.
Scripts  ETL is een methode voor het automatiseren van scripts (reeks instructies) die zorgen voor het verplaatsen en transformeren van data achter de schermen. Voor de komst van ETL werden scripts handmatig in C of COBOL geschreven om gegevens tussen specifieke systemen te verplaatsen. Dit resulteerde in verschillende databases vol met talloze scripts. De eerste ETL-tools werkten op mainframes en werden uitgevoerd als batchprocessen. ETL werd later gemigreerd naar UNIX- en PC-platforms. Organisaties maken nog steeds gebruik van zowel scripts als programmatische methoden voor dataverplaatsing.
ETL versus ELTAanvankelijk was er ETL. Later voegden organisaties ELT toe als een aanvullende methode. ELT haalt gegevens op uit een bronsysteem, laadt deze in een bestemmingssysteem en gebruikt vervolgens de verwerkingscapaciteit van het bronsysteem om de transformaties uit te voeren. Hierdoor verloopt de dataverwerking sneller, omdat deze plaatsvindt op de locatie van de data.
Datakwaliteit   Voorafgaand aan de integratie van data wordt vaak een faseringsgebied ingericht. In deze omgeving kan de data worden opgeschoond, waarden worden gestandaardiseerd (bijvoorbeeld NC en North Carolina, Mister en Mr, of Matt en Matthew), adressen worden gecontroleerd en dubbele gegevens worden verwijderd. Veel oplossingen opereren nog afzonderlijk, maar tegenwoordig kunnen datakwaliteitsprocedures worden geïntegreerd als een van de transformatiestappen binnen het data-integratieproces.
Plannen en verwerken  ETL-tools en -technologieën bieden zowel ondersteuning voor batchverwerking als real-time functionaliteiten. Ze kunnen grote hoeveelheden data verwerken op de server of de verwerking verplaatsen naar het databaseniveau. Deze methode, waarbij gegevens in een database worden verwerkt in plaats van in een gespecialiseerde engine, voorkomt duplicatie van data en elimineert de noodzaak om extra capaciteit op het databaseplatform te benutten.
Batchverwerking  ETL verwijst meestal naar een batchproces waarbij grote hoeveelheden data worden overgezet van het ene systeem naar het andere binnen een zogenaamd "batchvenster." Tijdens deze vastgestelde periode, bijvoorbeeld tussen 12.00 en 13.00 uur, zijn er geen acties mogelijk op het bron- of doelsysteem terwijl de gegevens worden gesynchroniseerd. Veel banken verwerken 's nachts transacties van de dag door middel van een batchproces.
WebservicesWebservices zijn een internetgebaseerde methode om data of functionaliteit vrijwel in real time beschikbaar te stellen aan diverse applicaties. Deze methode vereenvoudigt data-integratieprocessen en stelt je in staat sneller meer waarde uit data te halen. Stel dat een klant contact opneemt met je callcenter. Je kunt een webservice ontwikkelen die binnen een seconde een volledig klantprofiel weergeeft. Dit wordt bereikt door simpelweg een telefoonnummer aan de webservice door te geven, waarna deze de benodigde gegevens ophaalt uit meerdere bronnen of een MDM-hub. Met meer inzicht in de klant kan de klantenservicemedewerker beter afgewogen keuzes maken tijdens de interactie.
Masterdatabeheer 
MDM is het proces waarbij gegevens uit verschillende bronnen worden gecombineerd om een overzicht te creëren. Het biedt zowel ETL-functionaliteiten als data-integratiemogelijkheden om gegevens te combineren en een 'best record' samen te stellen.
DatavirtualisatieVirtualisatie is een flexibele techniek waarmee gegevens worden samengevoegd tot een virtuele weergave, zonder dat de gegevens fysiek hoeven te worden verplaatst. Datavirtualisatie verschilt van ETL doordat het data nog steeds in kaart brengt en samenvoegt, maar zonder een fysieke staging-tabel nodig te hebben om de resultaten op te slaan. De weergave wordt vaak opgeslagen in het geheugen en de cache om de prestaties te optimaliseren. Sommige virtualisatieoplossingen voor data, zoals SAS Federation Server, bieden functies zoals dynamische data-afscherming, randomisatie en hashing om gevoelige informatie te beveiligen tegen toegang door specifieke rollen of groepen. SAS biedt ook on-demand datakwaliteit tijdens het genereren van de weergave.
Event stream processing en ETL  Wanneer de datasnelheid oploopt tot miljoenen gebeurtenissen per seconde, kan event stream processing worden ingezet om datastromen te bewaken, te verwerken en sneller beslissingen te nemen. In de energiesector worden voorspellende analyses toegepast op datastromen om te bepalen wanneer een dompelpomp onderhoud nodig heeft. Dit helpt zowel stilstandtijd als de omvang van eventuele schade aan de pomp te minimaliseren.