6min

Alles wat je moet weten over het inzichtelijk maken en overzichtelijk opslaan van bedrijfsdata in moderne omgevingen.

Steeds meer organisaties willen actief aan de slag met data. Als je de data binnen je organisatie goed in kaart brengt, kan je hier analyses op los laten en betere beslissingen nemen. Of je kan er machine learning modellen mee trainen, zodat je daarmee vervolgens processen kan automatiseren. Om je data inzichtelijk te maken moet je die overzichtelijk opslaan en word je al snel geconfronteerd met termen als data warehouse, data lake en sinds enige tijd ook steeds vaker lakehouse. Wat zijn dat nu precies en wat zijn de verschillen?

Wat is een data warehouse?

Een data warehouse is een gecentraliseerd opslagsysteem dat speciaal is ontworpen voor het opslaan, analyseren en beheren van grote hoeveelheden gestructureerde data. Het is een essentieel onderdeel van de meeste bedrijfsinformatiesystemen. Het wordt vaak gebruikt om zowel historische als actuele data te bewaren en te analyseren. Deze analyses worden vaak gedaan door BI-tools (Business Intelligence). Deze kunnen hier mooie tabellen en grafieken van maken en zijn zeer geschikt voor rapportages. Denk aan Microsoft Power B, Qlik of Tableau.

Lees ook: Tableau wil analytics begrijpelijk maken voor iedereen

Data warehouses maken gebruik van een vooraf gedefinieerd schema, om data op een gestructureerde manier op te slaan. Deze schema’s zorgen ervoor dat data consistent en eenvoudig toegankelijk zijn voor rapportage- en analysehulpmiddelen. Hiervoor wordt vaak de Structured Query Language (SQL) gebruikt. Dit is een eenvoudige taal om data uit de database te selecteren die iedereen kan leren.

Data verzamelen

In tegenstelling tot een data lake, dat zowel gestructureerde als ongestructureerde data kan opslaan, richt een data warehouse zich voornamelijk op gestructureerde data die afkomstig zijn uit verschillende bronnen. Bij de meeste organisaties zijn dit al bestaande transactionele databases en data uit system of records-oplossingen, zoals CRM-systemen en ERP-systemen. Hierin zitten bij veel organisaties de belangrijkste data verstopt die met de juiste analyses veel meer waarde kunnen creëren. De data in een data warehouse worden meestal geëxtraheerd, getransformeerd en geladen (ETL, oftewel Extract, Transform, Load) vanuit de applicaties of applicatiedatabases naar het data warehouse, waar ze worden georganiseerd en geoptimaliseerd voor analyse.

Data warehouses worden vaak gebruikt door organisaties om trends en patronen in hun data te identificeren. Op basis daarvan kunnen ze beter geïnformeerde beslissingen nemen en hun bedrijfsstrategieën verbeteren. Ze zijn met name geschikt voor het uitvoeren van complexe query’s en het genereren van rapporten over historische data, terwijl data lakes meer geschikt zijn voor het verkennen en analyseren van ruwe, ongestructureerde data.

Wat is een data lake?

Bij de uitleg van een data warehouse werd het data lake al een aantal keer genoemd. Een data lake is net als een data warehouse een gecentraliseerd opslagsysteem. Hierin worden grote hoeveelheden gestructureerde maar ook ruwe ongestructureerde data opgeslagen en beheerd. Net als bij een data warehouse wordt data uit verschillende bronnen samengebracht in een data lake. Het grootste verschil is dat een data lake ook overweg kan met ruwe ongestructureerde data. Het belangrijkste doel van een data lake is om die ruwe ongestructureerde data in zijn oorspronkelijke, onbewerkte vorm op te slaan. Dit zorgt ervoor dat deze gemakkelijk en snel toegankelijk is voor toekomstige analyse en verwerking. Bij ruwe ongestructureerde data moet je denken aan afbeeldingen, foto’s, Word-documenten of PDF-bestanden. De data zit opgesloten in die bestanden.

Data lakes maken gebruik van big data-technologieën, zoals Hadoop en Spark, om grote datasets op te slaan en te verwerken. Deze technologieën bieden schaalbare en kostenefficiënte oplossingen om met grote hoeveelheden data om te gaan.

Waar traditionele data warehouses voornamelijk gestructureerde data bevatten kan een data lake dus ook ongestructureerde data opslaan. Dit zonder dat je een vooraf gedefinieerd schema moet opzetten. Dit maakt het mogelijk om snel nieuwe data toe te voegen, want het hoeft niet aangepast te worden om in een bepaald schema te passen. Vervolgens kan je met een data lake de opgeslagen data op verschillende manieren analyseren, afhankelijk van de behoeften van de organisatie.

Data lakes worden vaak gebruikt door datawetenschappers en analisten om waardevolle inzichten en patronen te ontdekken, die kunnen bijdragen aan betere besluitvorming en strategieën.

Wat is een lakehouse?

Een lakehouse, ook wel data lakehouse genoemd, is een relatief nieuw concept in de wereld van data-opslag en -beheer. Het combineert de voordelen van data lakes en data warehouses. Dit om een ​​geïntegreerde oplossing te bieden voor het opslaan, analyseren en beheren van zowel gestructureerde als ongestructureerde data.

Een lakehouse benut de schaalbaarheid, flexibiliteit en kostenefficiëntie van een data lake om grote hoeveelheden ruwe data op te slaan. Tegelijkertijd biedt het de prestaties, betrouwbaarheid en gestructureerde opslag van een data warehouse, waardoor het eenvoudiger is om data te analyseren en rapporten te genereren.

Lakehouses zijn ontworpen met een open architectuur en maken meestal gebruik van open-source technologieën zoals Apache Spark en Delta Lake. Ze bieden de mogelijkheid om op schema te werken (schema-on-write) voor gestructureerde data, net als een traditioneel data warehouse, en schema-on-read voor ongestructureerde data, zoals in een data lake.

De grootste voordelen van een lakehouse

  • Flexibiliteit: een lakehouse biedt meer flexibiliteit, want het kan zowel gestructureerde als ongestructureerde data opslaan en verwerken. Hierdoor is het gemakkelijker om nieuwe databronnen toe te voegen en gevarieerde analytische workloads uit te voeren.
  • Schaalbaar: een lakehouse is schaalbaarder, want het is ontworpen om te werken met big data-technologieën en kan gemakkelijk schalen om grote hoeveelheden data op te slaan en te verwerken.
  • Betrouwbaar: een lakehouse is betrouwbaar, want het biedt ondersteuning voor transacties en versiebeheer, wat zorgt voor betrouwbaarheid en consistentie in de data-opslag.
  • Kostenbesparend: een lakehouse kan kosten besparen. Door het combineren van de functies van data lakes en data warehouses kunnen organisaties kosten besparen door één geïntegreerd systeem te gebruiken in plaats van een afzonderlijk data warehouse en data lake.

Lakehouses zijn vooral geschikt voor organisaties die beschikken over grote hoeveelheden data en behoefte hebben aan een geïntegreerde en flexibele oplossing om hun uiteenlopende behoeftes in dataverwerking te ondersteuning. Van het opslaan van ruwe data tot het uitvoeren van machine learning en doen van geavanceerde analyses en het genereren van rapporten.

Welke lakehouse-aanbieders zijn er allemaal?

We zetten hier enkele aanbieders onder elkaar die inmiddels het lakehouse-principe hebben omarmt. Er zijn ongetwijfeld nog veel meer aanbieders, of er komen nog meer aanbieders. Zie het als een startpunt voor organisaties die op zoek zijn, of meer interesse hebben in een lakehouse-oplossing. Databricks en Snowflake zijn de specialisten op dit gebied, waarbij dit echt hun core-business is. De grote cloudplatformen proberen door verschillende diensten te koppelen ook een lakehouse-principe aan te bieden.

Databricks

Databricks is een van de pioniers op het gebied van lakehouse-architectuur. Ze hebben Delta Lake ontwikkeld, een open-source opslaglaag die wordt gebruikt in combinatie met Apache Spark voor het bouwen van lakehouses. Databricks biedt een Unified Data Analytics-platform dat data-engineering, data science en machine learning in één omgeving integreert, samen met Delta Lake.

Lees ook: Databricks gaat volgende fase in met forse lakehouse Platform-update

Snowflake

Snowflake is een cloudgebaseerd data warehouseplatform dat ook lakehouse-functionaliteit biedt. Het platform ondersteunt het opslaan, verwerken en analyseren van zowel gestructureerde als ongestructureerde data en maakt het mogelijk om data eenvoudig te delen tussen verschillende public cloudomgevingen (AWS, Google Cloud en Azure).

Lees ook: Wat is Snowflake? Wat maakt het zo waardevol?

Google Cloud Platform – BigQuery

Google BigQuery is een serverless, schaalbaar en volledig beheerd data warehouseplatform dat ook lakehouse-achtige functionaliteit biedt. BigQuery ondersteunt zowel gestructureerde als ongestructureerde data en kan worden geïntegreerd met andere Google Cloud-services, zoals Cloud Storage en Dataflow.

Amazon Web Services (AWS): AWS Lake Formation

AWS Lake Formation is een service die helpt bij het bouwen, beveiligen en beheren van data lakes op het AWS-platform. Lake Formation werkt echter samen met andere AWS-services zoals Amazon S3, Redshift, Athena, EMR en Glue om een geïntegreerde oplossing te bieden voor het beheren en analyseren van zowel gestructureerde als ongestructureerde data.

Conclusie

Wat voor jouw organisatie de beste keuze is zal je echt zelf moete bepalen. Als je een moderne organisatie hebt waarbij alle data is opgeslagen in moderne (cloud) applicaties, zal je waarschijnlijk redelijk ver komen met een data warehouse. Zodra je echter ook ongestructureerde data wilt gaan toevoegen, kom je al snel uit op een lakehouse.