Gegevens worden steeds diverser en meer gedistribueerd, net als de verschillende databronnen en de plekken waarop deze data wordt geconsumeerd. Tegelijkertijd groeit de behoefte aan data analyse en het operationele gebruik van gegevens door de hele onderneming en daarbuiten. Dit alles vereist een moderne infrastructuur voor gegevensbeheer die deze flexibiliteit en diversiteit aan gegevensbehoeften en verbondenheid ondersteunt.
Veel organisaties overwegen daarvoor de implementatie van een datawarehouse of een data lake. Wij merken echter dat er nog steeds grote verwarring tussen deze begrippen bestaat, en dat klanten beide termen als uitwisselbare alternatieven beschouwen. In werkelijkheid heeft elk van deze architectuurelementen een ander primair doel. Wanneer ze worden gecombineerd, kunnen ze steeds complexere, diversere en gedistribueerde workloads ondersteunen.
In dit blog zetten wij de definities van data warehouse en een data lake naast elkaar en bespreken we de 5 belangrijkste verschillen.
Een datawarehouse is een centrale opslagplaats van geïntegreerde en gestructureerde gegevens uit twee of meer verschillende bronnen. Dit systeem wordt voornamelijk gebruikt voor rapportage en data-analyse en wordt beschouwd als een kerncomponent van Business Intelligence. Datawarehouses implementeren vooraf gedefinieerde en herhaalbare analysepatronen die worden gedistribueerd naar een groot aantal gebruikers in de onderneming.
Een Data Lake verzamelt onbewerkte gegevens (dat wil zeggen gegevens in de oorspronkelijke vorm, met beperkte transformatie en kwaliteitsborging) en gebeurtenissen die zijn vastgelegd uit een diverse reeks bronsystemen. Data lakes ondersteunen gewoonlijk gegevensvoorbereiding, verkennende analyse, en Data Science en Machine learning activiteiten met betrekking tot een breed scala aan onderwerpen en onderdelen. De analysepatronen liggen bij een data lake dus niet vast.
Tijdens de ontwikkeling van een datawarehouse wordt veel tijd besteed aan het analyseren van databronnen, het begrijpen van bedrijfsprocessen en het profileren van data. Het resultaat is een zeer gestructureerd datamodel ontworpen voor rapportage. Een groot deel van dit proces omvat het nemen van beslissingen over welke gegevens wel en niet in het data warehouse moeten worden opgenomen. Als gegevens niet worden gebruikt om specifieke vragen of in een gedefinieerd rapport te beantwoorden, kunnen ze over het algemeen worden uitgesloten van het datawarehouse. Dit wordt meestal gedaan om het datamodel te vereenvoudigen en ook om ruimte te besparen op dure schijfopslag die wordt gebruikt om het datawarehouse performant te maken.
Een data lake daarentegen behoudt ALLE gegevens. Niet alleen gegevens die vandaag in gebruik zijn, maar ook gegevens die mogelijk worden gebruikt en zelfs gegevens die misschien nooit worden gebruikt, alleen maar omdat ze op een dag KUNNEN worden gebruikt. Gegevens worden ook voor altijd bewaard, zodat we terug kunnen gaan in de tijd naar elk punt om analyses uit te voeren.
Deze aanpak wordt mogelijk doordat de hard- en software voor een data lake doorgaans sterk verschilt van die voor een datawarehouse. Generieke, kant-en-klare servers in combinatie met goedkope opslag maken het schalen van een data lake van terabytes en petabytes relatief goedkoop.
Datawarehouses bestaan over het algemeen uit gegevens die zijn geëxtraheerd uit transactiesystemen en bestaan uit kwantitatieve metrics en de attributen die ze beschrijven. Niet-traditionele gegevensbronnen zoals webserverlogboeken, sensorgegevens, sociale netwerkactiviteit, tekst en afbeeldingen worden grotendeels genegeerd. Er worden nog steeds nieuwe toepassingen voor deze gegevenstypen gevonden, maar het gebruik en de opslag ervan kan duur en moeilijk zijn.
De data lake-benadering omvat deze niet-traditionele gegevenstypen. In het data lake bewaren we alle gegevens ongeacht bron en structuur. We houden de data in zijn ruwe vorm en we transformeren die pas wanneer die gebruikt wordt. Deze aanpak staat bekend als "schema on read" versus de "schema on write" -benadering die wordt gebruikt in het datawarehouse.
In de meeste organisaties is 80% of meer van de gebruikers 'operationeel'. Ze willen hun rapporten ontvangen, hun belangrijkste prestatiestatistieken zien of elke dag dezelfde set gegevens in een spreadsheet verwerken. Het datawarehouse is meestal ideaal voor deze gebruikers omdat het goed gestructureerd, gemakkelijk te gebruiken en te begrijpen is en het speciaal gebouwd is om hun specifieke vragen te beantwoorden.
De volgende 10% van de gebruikers zijn meer bezig met data analyse. Ze gebruiken het datawarehouse weliswaar als bron voor hun analyses, maar gaan ook vaak terug naar oorspronkelijke bronsystemen om gegevens te krijgen die niet in het data warehouse zijn opgenomen en halen soms gegevens van buiten de organisatie binnen.
Ten slotte voeren de laatste 10% procent van de gebruikers diepgaande analyses uit. Ze kunnen op basis van onderzoek totaal nieuwe gegevensbronnen creëren. Ze combineren veel verschillende soorten gegevens en komen met geheel nieuwe vragen die moeten worden beantwoord. Deze gebruikers kunnen het datawarehouse gebruiken, maar negeren het vaak omdat ze meestal worden gehinderd door de beperkte mogelijkheden ervan. Deze gebruikers zijn onder meer de Data Scientists, zij maken gebruikt van geavanceerde analytische hulpmiddelen zoals statistische analyse en voorspellende modellering.
De data lake-aanpak ondersteunt al deze gebruikers in dezelfde mate. De Data Scientists kunnen gebruik maken van het data lake en met de zeer grote en gevarieerde datasets die ze nodig hebben werken, terwijl andere gebruikers gebruik maken van meer gestructureerde weergaven van de gegevens die voor hun gebruik worden verstrekt.
Een van de belangrijkste klachten over datawarehouses dat het zo lang duurt om ze aan te passen. Tijdens de ontwikkeling wordt veel tijd besteed aan het voorbereiden van de structuur van het datawarehouse. Een goed ontwerp aangepast worden aan veranderingen, maar vanwege de complexiteit van het laden van gegevens en het werk dat wordt gedaan om analyse en rapportage eenvoudig te maken, zullen deze wijzigingen noodzakelijkerwijs ontwikkel resources vergen en enige tijd in beslag nemen.
Veel zakelijke vragen kunnen niet wachten tot het datawarehouse-team hun systeem heeft aangepast om ze te beantwoorden. De steeds toenemende behoefte aan snellere antwoorden heeft geleid tot het concept van selfservice business intelligence.
Aangezien in een Data lake alle gegevens in ruwe vorm worden opgeslagen en altijd toegankelijk zijn, kunnen gebruikers verder gaan dan de structuur van een datawarehouse om gegevens op nieuwe manieren te verkennen en hun vragen sneller te beantwoorden
Als blijkt dat het resultaat van een verkenning nuttig is, en voor herhaling vatbaar is, dan kan er een meer formeel schema op worden toegepast en kan automatisering en herbruikbaarheid worden ontwikkeld om de resultaten voor een breder publiek beschikbaar te maken.
Blijkt het resultaat niet bruikbaar te zijn, dan kan het worden weggegooid en zijn er geen wijzigingen in de gegevensstructuren aangebracht of kostbare ontwikkel resources verbruikt.
Dit laatste verschil is eigenlijk het gevolg van de andere vier. Omdat data lakes alle gegevens en gegevenstypen bevatten en gebruikers in staat stellen toegang te krijgen tot gegevens voordat deze zijn getransformeerd, opgeschoond en gestructureerd zijn, leiden zij tot snellere resultaten van de traditionele datawarehouse aanpak.
Deze snelle toegang tot de gegevens heeft echter een prijs. Het werk dat normaal gesproken door het datawarehouse-ontwikkelingsteam wordt gedaan, wordt voor deze databronnen niet gedaan. Het wordt aan de gebruikers overgelaten om de gegevens naar eigen inzicht te verkennen en te gebruiken.
Echter, de eerste groep zakelijke gebruikers die ik hierboven heb beschreven, wil dat werk misschien wel helemaal niet doen. Ze willen nog steeds alleen beschikken over hun rapportages en KPI’s. In het data lake zullen deze “operationele rapportconsumenten” gebruik maken van meer gestructureerde weergaven van de gegevens in het date lake die lijken op wat ze altijd eerder hebben gehad in het datawarehouse. Het verschil is dat deze weergaven voornamelijk bestaan als metadata die over de gegevens in het data lake worden heen gelegd, in plaats van fysiek rigide tabellen waarvoor men een ontwikkelaar nodig heeft om ze te veranderen.
Het is belangrijk om de verschillen te herkennen tussen datawarehouses en data lakes, en de rol van elk in de infrastructuur. Het is echter ook belangrijk te onderkennen hoe deze structuren vergelijkbaar zijn en een meerwaarde kunnen toevoegen aan een organisatie wanneer ze in combinatie worden gebruikt.
Wil je meer weten over de waarde die Data Science je bedrijf kan bieden? Download dan de klantcase, en lees hoe Agentschap Telecom Data Science technieken inzet om de hoge directe herstelkosten van graafschade te reduceren.
Wil je meer weten over de waarde die Data Science je bedrijf kan bieden? Download dan de klantcase, en lees hoe Agentschap Telecom Data Science technieken inzet om de hoge directe herstelkosten van graafschade te reduceren.