Wat is streaming data en hoe verwerk je dat op een slimme manier?

Streaming data is een wildwaterrivier vol informatie waar je waardevolle inzichten uit kunt halen. Maar dan moet je wel weten hoe je dat aanpakt. In deze blog lees je hoe je streaming data op een slimme en efficiënte manier verwerkt.

Bij veel organisaties druppelt data binnen vanuit verschillende bronnen. Die data verzamelen ze in een datawarehouse om het vervolgens op een later moment te kunnen analyseren. Dat gaat vrij gemoedelijk, als een rustig databeekje dat uitkomt op een kalm datameer. Maar als je precies wil weten wat er op een bepaald moment gebeurt omdat je snel actie wil kunnen ondernemen, dan gaat zo’n beekje veel te langzaam. In zo’n situatie heb je data nodig dat snel en non-stop binnenstroomt. Wat je nodig hebt, is streaming data.

Wat is streaming data?

Stel je even voor: smeltwater vloeit vanaf verschillende berghellingen naar beneden en komt in het dal samen. Daar vormen al die beekjes een massale en kolkende rivier. Zo kun je streaming data ook zien; het is een wildwaterrivier van grote volumes data. Afkomstig uit verschillende bronnen en gegenereerd in verschillende formaten. Denk bijvoorbeeld aan data van sensoren in locomotieven, waarmee een railtransportbedrijf de status van die locomotieven continu kan monitoren en zo preventief onderhoud kan inplannen. Of een financiële instelling die de veranderingen op de aandelenmarkt volgt zodat ze aandelenportefeuilles van klanten automatisch daarop kunnen laten meebewegen.

Stuur de rivier de juiste kant op

Streaming data biedt enorme kansen om snel actie te ondernemen. Maar de uitdaging van dit type data is dat het nergens wordt opgeslagen. Als je niets doet om die wildwaterrivier ergens naartoe te leiden en op te vangen, dan zie je de gegevens nooit meer terug. Je moet dus een manier vinden om deze data te verwerken en wél op te slaan, zodat je het daadwerkelijk kunt gebruiken voor analysedoeleinden. Daar kun je de Lambda-architectuur voor gebruiken.

Zo werkt de Lambda-architectuur

De Lambda-architectuur is een concept om de continue rivier aan data te temmen. Met deze architectuur splits je de datastroom op in twee richtingen: de Speed Layer en de Batch Layer.

In de Speed Layer laat je de wildwaterrivier non-stop voorbijrazen. Deze layer kun je direct visualiseren in een Analytics Client, zoals Microsoft Power BI. Op die manier kun je tot op de seconde nauwkeurig volgen wat er gebeurt.
In de Batch Layer laat je de rivier tot rust komen. Op gezette tijden gaat er een sluis open van de bron naar de Batch Layer waar je alle (historische) data opslaat. De Batch Layer bevat de masterdataset die niet gewijzigd of verwijderd kan worden; het wordt alleen met nieuwe data aangevuld. Zowel de Speed Layer als de Batch Layer komen uiteindelijk in de Serving Layer terecht. De Serving Layer staat op zijn beurt in verbinding met de Analytics Client, zodat je ook de opgeslagen data kunt visualiseren en analyseren.

Als je deze architectuur grafisch weergeeft, ziet dat er zo uit:

streaming data lambda architectuur

Met de Lambda-architectuur benut je streaming data ten volle. Enerzijds profiteer je van een bijna real-time inzicht in je data, wat snel handelen mogelijk maakt. En anderzijds weet je de data te vangen en op te slaan, zodat je het ook op een later moment nog kunt raadplegen.

Meer van dit in je mailbox?

We sturen je circa 6x per jaar een email met handpicked cases, blogs en tips.

Beginnen met streaming data? Houd hier rekening mee

Als je met streaming data aan de slag wil, zijn er een paar zaken waar je op moet letten:

1 Zoek de juiste cloud provider uit

Voor het werken met streaming data heb je veel compute nodig. Dus met een hyperscaler, zoals Microsoft Azure, Google Cloud of AWS, zit je goed. Je kunt dan gemakkelijk op- en afschalen als je meer of minder capaciteit nodig hebt. En je betaalt enkel voor wat je gebruikt, waardoor je optimale controle hebt over je kosten. Bovendien worden onderhoud en updates voor je geregeld.

2 Kies geschikte tools voor je bronnen

De herkomst van de streaming data bepaalt welke tools je moet gebruiken. Komt de data uit sensoren? Dan werk je bijvoorbeeld de Azure IoT Hub, een oplossing speciaal voor sensordata. Komt de data uit een kassasysteem? Dan kun je aan de slag met een API.

3 Bepaal je analysedoeleinden

Heb je bijna real-time inzichten nodig of mag er wat vertraging inzitten? En wil je er op een later moment nog iets meedoen of is alleen een vluchtig inzicht voldoende? Je analysedoeleinden bepalen hoe je streaming data het beste kunt verwerken, bijvoorbeeld via de Lambda-architectuur.

4 Zorg voor een eenduidige schema registry

Streaming data komt binnen in verschillende formaten. Om die data gemakkelijk te ontsluiten én te verwerken, heb je één standaard nodig. Daarom moet je voor alle databronnen een eenduidige schema registry overeenkomen.

5 Stel monitoring en alerts in

Gaat er iets mis met het ontsluiten of verwerken van je data? Dan wil je daar meteen een melding van krijgen, bijvoorbeeld via een e-mail of appje. Op die manier kun je direct ingrijpen indien nodig.

Neem een duik in streaming data

Met behulp van streaming data kun je onvoorstelbaar snel handelen om cruciale beslissingen te nemen die jouw organisatie ten goede komen. En hoewel die wildwaterrivier intimiderend kan lijken, hoeft het dat niet te zijn. Met de Lambda-architectuur kun je op een snelle manier tot een bruikbare en overzichtelijke oplossing komen. Dus wees niet bang en duik die rivier in!

Robert Mansour

Geschreven door

Riviq

info@riviq.nl
+31 (0)70 40 60 966

Op de hoogte blijven van de laatste ontwikkelingen en webinars?

Schrijf je dan in voor de nieuwsbrief en ontvang circa 6x per jaar een selectie van blogs, cases, webinars en nieuws in je mailbox.

Meer over dit onderwerp