Datavirtualisatie
De stap naar een flexibel dataplatform Laatst bijgewerkt: 23 november 2018

Het is nogal een promotie die data heeft doorgemaakt de afgelopen decennia: van een restproduct van IT-systemen, nuttig voor verslaglegging, tot hét middel om bedrijfsprocessen slimmer te maken, besluitvorming te verbeteren en producten en diensten te innoveren. Data moet steeds sneller, in grotere volumes op meer plekken beschikbaar zijn voor complexere analyses en dat stelt hoge eisen aan de onderliggende data-architectuur. Veel bedrijven merken dat de grenzen van hun data warehouse oplossing bereikt zijn en zoeken een manier om te migreren naar een geïntegreerd dataplatform dat flexibel kan meegroeien met zowel de bedrijfsambities als de technologische ontwikkelingen. Passend in de gekozen cloud strategie, met maximale schaalbaarheid en tegen beheersbare kosten. In dit artikel introduceren we hiervoor een referentiearchitectuur, waarmee je in slechts drie workshops invulling kunt geven aan een moderne, flexibele, op de cloud gebaseerde data-architectuur.

Fast forward

Is er zoveel veranderd dan? Ja en nee. Het gaat nog steeds om data op de juiste plek beschikbaar stellen, op het juiste moment en in de juiste vorm. Maar de datavolumes zijn explosief gegroeid, data ligt verspreid over een steeds complexere infrastructuur, iedereen in het bedrijf vraagt inmiddels om data, steeds vaker in real time vorm. Gebruikerseisen liggen veel hoger met de opkomst van self service BI en data science en data moet in veel meer vormen beschikbaar worden gesteld: API’s, apps, files etc. Bovendien moet data meer en meer gedeeld worden met klanten, ketenpartners en andere externe partijen, en tussen systemen onderling. De data-architectuur wordt letterlijk het knooppunt voor applicatie-integratie.

Het probleem lijkt misschien niet veranderd, maar de complexiteit is de laatste jaren in sneltreinvaart toegenomen. Terwijl de eisen op het gebied van data governance, security en privacy ook nog eens flink zijn aangescherpt. Vragen over herkomst en gebruik van data moeten snel en betrouwbaar beantwoord kunnen worden en het on-the-fly kunnen anonimiseren van data voor bepaalde gebruikersgroepen wordt een harde eis.

Vele uitdagingen, die vereisen dat je een aantal vastgeroeste principes en werkwijzen loslaat en met een frisse blik naar je data-architectuur kijkt.

Technologie gaat sneller dan ooit

De snelheid waarmee vernieuwende technologieën voor het verwerken, opslaan en analyseren van data beschikbaar komt, ligt hoger dan ooit. Cloud omgevingen als Microsoft Azure en AWS introduceren bijna dagelijks nieuwe functies. Vaak met zulke interessante mogelijkheden voor het vereenvoudigen, versnellen en anderszins verbeteren van je data-architectuur, dat het de moeite waard is het ontwerp van die data-architectuur erop aan te passen. Je nieuwe data-architectuur kan dus niet in beton gegoten zijn, maar moet meebewegen met de technologische ontwikkelingen. Van de architecten in je organisatie vraagt dit een andere benadering en diepgaande kennis van cloud platformen, concepten als datavirtualisatie en nieuwe technologieën als Hadoop, NoSQL, NewSQL en Snowflake.

Data-integratie 3.0

Een modern dataplatform onderscheidt zich op twee belangrijke punten van het traditionele data warehouse. Zo’n platform is allereerst ‘designed for the cloud’ en maakt optimaal gebruik van alle functionele en technische mogelijkheden van het gebruikte cloud platform. Daarnaast wordt er gebruik gemaakt van datavirtualisatie voor het minimaliseren van datareplicatie en maximale ontkoppeling van data en logica. De combinatie van een cloud platform en datavirtualisatie maakt het mogelijk veel sneller nieuwe databronnen aan te sluiten en dataservices in te richten, ook voor real time data. Via datavirtualisatie kun je data in allerlei formaten aanbieden, zonder dat die data steeds gedupliceerd moet worden. Het onderliggende cloud platform zorgt ook bij grote datavolumes voor de gewenste performance. Resources kunnen ieder moment worden op- of afgeschaald.

The data warehouse built for the cloud

Je organisatie heeft misschien al een cloud strategie en het lijkt een logische stap om je bestaande data warehouse ook te migreren naar de cloud. Het perfecte moment om oude denkwijzen los te laten en een ingrijpende architectuurverandering door te voeren. Cloud platformen brengen mogelijkheden binnen bereik waar we vroeger alleen van konden dromen. Een mooi voorbeeld daarvan is Snowflake, een analytische database ontwikkeld voor de cloud, met implementaties op Micrososft Azure en AWS. Met Snowflake krijg je de beschikking over een zeer schaalbare MPP-database die ANSI SQL ondersteunt en nauwelijks beheer nodig heeft. Een enorm krachtige combinatie met de functionaliteit van bijvoorbeeld Microsoft Azure. En schaalbaar van kleine implementaties tot bedrijfsbrede, gedistribueerde data-architecturen.

Ontkoppeling met datavirtualisatie

Bij de migratie naar de cloud moet je wel opletten om niet in oude valkuilen te trappen. Het is niet wenselijk in het nieuwe dataplatform weer allerlei architectuurlagen te creëren waartussen data wordt gerepliceerd. Je weet inmiddels dat dat het ontwikkelproces complex en inflexibel maakt. Daarnaast is het van belang data en logica goed te scheiden, vanwege flexibiliteit en data governance eisen. Dit is waar datavirtualisatie om de hoek komt kijken. Door data niet fysiek te integreren, maar virtueel, wordt het veel eenvoudiger om snel dataservices te ontwikkelen en te testen, in willekeurig welk formaat. Van datasets voor data science en self service BI, tot complete API-bibliotheken. Bovendien biedt een datavirtualisatieplatform je uitstekende mogelijkheden voor data lineage, autorisatie en on-the-fly anonimisatie van data.

De inzet van datavirtualisatie brengt nog een ander voordeel met zich mee. Een migratie naar de cloud zal vaak geleidelijk gaan, waarbij misschien niet alle bestaande databronnen en BI-oplossingen gemigreerd worden. Bovendien gebruik je waarschijnlijk ook data die opgeslagen ligt in (interne of externe) systemen die niet naar de cloud gekopieerd kunnen of mogen worden. Denk aan big data bronnen of privacygevoelige informatie. Met datavirtualisatie kan on-premise data transparant gecombineerd worden met data in de cloud, in één uniform datamodel. Op die manier is er nooit discontinuïteit in de beschikbaarheid van data.

Het dataplatform van de toekomst

Hoe ziet dat er dan uit, zo’n dataplatform? In onderstaande figuur hebben we een referentiearchitectuur uitgewerkt voor Microsoft Azure in combinatie met Snowflake en het Denodo datavirtualisatieplatform.

Deze referentiearchitectuur is gemaakt om mee te kunnen bewegen met de snelle technologische ontwikkelingen. Voor iedere functionele architectuurcomponent wordt steeds de beste technologische fit gezocht, bij voorkeur als een ‘service’ die alleen geconfigureerd hoeft te worden. Als er nieuwe functionaliteit beschikbaar komt, bepaal je hoe die technologie het dataplatform kan verbeteren of verrijken.

Net zoals een traditioneel data warehouse bestaat deze data-architectuur uit twee of meer lagen, ieder met onderscheidende functionaliteit. Niet al deze lagen hoeven echter altijd aanwezig te zijn en bepaalde componenten of volledige lagen kunnen logisch zijn en geen fysieke data bevatten. Bijna iedere component van de referentiearchitectuur is optioneel. Dat maakt de architectuur enorm flexibel en schaalbaar. Afhankelijk van bedrijfsspecifieke wensen kunnen functionaliteiten worden toegevoegd of verwijderd. De referentiearchitectuur onderscheidt de volgende lagen:

Preparatie

In deze laag wordt data in de juiste vorm en met de juiste inhoud benaderd, toegevoegd, gevalideerd en geprepareerd. Deze laag kan ook microservices bevatten om bepaalde data te genereren of transformeren. Data wordt hier altijd ‘modelgedreven’ verwerkt en een metadata repository is dan ook een belangrijk onderdeel van deze laag.

Opslag en transport

Deze laag bevat alle functionaliteiten voor opslag, tranformatie en transport van data. Afhankelijk van het type data vind je hier een plek om alle soorten data op te slaan, databases voor het verwerken van grote hoeveelheden gestructureerde data en functionaliteiten om (complexe) data te bewerken.

Datavirtualisatie

Dit is de plek waar data uit verschillende bronnen geïntegreerd wordt. Bijvoorbeeld het real time combineren van gestructureerde en ongestructureerde data, vanuit zowel on-premise systemen als uit de cloud. Door alleen in deze laag business logica toe te passen zonder data fysiek te repliceren, ontstaat een enorme flexibiliteit en een veel eenvoudiger architectuur. Het beheer wordt eenvoudiger en nieuwe data kan veel sneller toegevoegd en geleverd worden.

Publiceren via het dataloket

Via het dataloket stel je data beschikbaar voor ieder type gebruik. Zo bevat deze laag tools om data klaar te zetten in (virtuele) tabellen of kubussen, of via bestanden en API’s voor gebruik door applicaties en systemen. Deze laag bevat ook een data catalog waarmee eindgebruikers snel inzicht en overzicht krijgen in alle beschikbare data.

Gebruik

Deze laag bevat functionaliteiten voor het daadwerkelijke gebruik van data via het dataloket. Denk aan apps, dashboards en visualisatietools, maar bijvoorbeeld ook een data science lab om analytische modellen te ontwikkelen en testen.

Beveiliging

Deze belangrijke architectuurlaag bevat functionaliteit om gegevens, toepassingen en infrastructuur te beveiligen en continu veranderende risico’s snel te identificeren. Daarnaast kan hier met verschillende tools de toegang van gebruikers tot in detail geregeld worden, geïntegreerd over de hele data-architectuur.

 

Blog Kadenza

 

Zien is geloven

De hier beschreven referentiearchitectuur biedt eindeloze mogelijkheden en functies die je met een druk op de knop kunt activeren en uitproberen. Je kunt nieuwe toepassingen bovendien eenvoudig op- en afschalen. Zo kun je makkelijk, in een vroeg stadium, ontdekken of een toepassing of technologie ook echt bruikbaar is. Eerst zien, dan geloven!

We kunnen de verschillende componenten van de architectuur (en in de toekomst ook nieuwe mogelijkheden) eenvoudig met je uitproberen in een representatieve proof of concept. Het cloud platform geeft ons alle ruimte om tegen lage kosten te bepalen of nieuwe functionaliteit van waarde is voor je architectuur. Vooraf denken we natuurlijk wel goed na wat je wil bereiken met het toevoegen van een component, want er komt bijna dagelijks nieuwe functionaliteit beschikbaar en het is niet zinvol om alles uit te proberen. Door goed de samenhang van de architectuur te bewaken, voorkomen we dat initiatieven verzanden in allerlei losse experimenten zonder duidelijk einddoel en rode draad.

Een uitwerking in drie workshops

Het ontwerpen van een nieuwe data-architectuur hoeft geen weken of maanden te duren. Met behulp van de referentiearchitectuur kunnen we, samen met je team, in drie workshops invulling geven aan een dataplatform dat past bij jullie organisatie, ambitie en applicatielandschap en een aanpak die gedragen wordt binnen je hele organisatie:

  1. In de eerste workshop inventariseren we, samen met een goed gekozen kernteam, de dataconsumptieprocessen, de eisen en wensen, en de mogelijke risico’s en uitdagingen.
  2. Tijdens de tweede workshop geven we invulling aan alle componenten van de doelarchitectuur, functioneel en technisch.
  3. In de laatste workshop werken we de belangrijkste use cases uit, om vervolgens een stappenplan te maken voor de realisatie.

Met de flexibiliteit van de referentiearchitectuur, het cloud platform en datavirtualisatie kunnen we je vervolgens helpen om in snelle, kort cyclische stappen invulling te geven aan de use cases en te starten met de bouw van jouw dataplatform in de cloud.

Hoelang voldoet jouw data warehouse nog aan de toenemende eisen om meer data sneller en flexibeler beschikbaar te stellen? 


eBook: een LDW op Microsoft Azure
DOWNLOAD