Bestuurders van organisaties willen hun beslissingen nemen op grond van de meest actuele gegevens waarover zij beschikken. Fergal McDonnel van big data specialist Talend geeft in een gesprek weer hoe ontwikkelaars het voor elkaar krijgen om nog sneller data uit hun Hadoop-framework te krijgen.
De Ier Fergal McDonnel is begin januari 2016 aangesteld als regional VP for Emerging Markets bij Talend. Hij moet helpen de Europese expansie van Talend vorm te geven. Nederland is één van de landen waar het Amerikaanse bedrijf zich zeer recent heeft gevestigd.
Talend is in 2005 opgericht in Silicon Valley. Het was de eerste commerciële open source-leverancier van integratiesoftware. Intussen is Talend 6.1 op de markt en integreert de software zo’n beetje alles: data on premise en in de cloud, en biedt het bedrijf databeheer. Tegenwoordig presenteert de onderneming zich als open source big data-specialist.
In ons land is Springg één van de eerste klanten. Dit bedrijf scant de teelaarde digitaal en analyseert deze big data razendsnel, waarmee boeren hun oogsten kunnen verbeteren.
McDonnel vertelt wat je kunt doen om efficiënter met Hadoop om te gaan. Want dan haal je meer uit grote gegevensbestanden – en vooral: sneller.
Verhoog snelheid
Veel data zitten tegenwoordig verborgen in het framework van Hadoop. Alle reden, volgens McDonnell, om ontwikkelaars tips te geven hoe zij Hadoop nog beter kunnen inzetten.
‘Gewoon door data integratie-jobs die met Mapreduce zijn gebouwd te verplaatsen naar Apache Spark lukt het om de jobs 2,5 keer sneller te laten verlopen’, geeft McDonnell een eerste tip. ‘Als je dat hebt gedaan en je voegt er Spark-specifieke componenten voor caching en positionering aan toe, kun je de performance nog eens een factor vijf opkrikken. Als je dat eenmaal hebt gedaan en je vergroot het ram-geheugen op de hardware kun je meer zaken in het geheugen afhandelen en de productiviteit nog eens vertienvoudigen.’
Realtime
‘We hebben veel ervaring om zaken in bulk en als batch-processen af te handelen, maar tegenwoordig zitten bedrijven te wachten op realtime kennis. Je wilt niet weten wat jouw klant gisteren op de website deed, maar wat hij nu doet, zodat je het gedrag kunt beïnvloeden.’
McDonnell: ‘Het mooie van Spark en Spark streaming is dat je nu één toolset hebt om operaties uit te voeren in bulk en batch én realtime. Met Talend is het mogelijk integratielijnen te ontwerpen waarmee je kunt putten uit historische databronnen – van Oracle en Salesforce – en ze te verrijken met realtime streamingdata van websites, mobiele apparatuur en sensoren. De bulk en batch informatie is mogelijk opgeslagen in Hadoop; de realtime informatie mogelijk in een NoSQL-database; je kunt ze allebei analyseren met Spark SQL for mobile, analytic and web apps.’
Wees slim
Helemaal goed is het natuurlijk als je ook nog kunt beschikken over real time analyses. ‘Spark leert automatisch over de machines waarop het draait’, legt McDonnel uit. ‘Bij elektronische handel betekent dit dat je de webinhoud kunt verpersoonlijken en het aantal pageviews kunt verdrievoudigen. Je kunt ook specifieke aanbiedingen doen, en als gevolg daarvan de conversie-rates verdubbelen.’
Hij komt met het voorbeeld van Talend-klant Otto. ‘Zij gebruiken Spark om te voorspellen – met 90 procent nauwkeurigheid – welke klanten op het punt staan hun koopproces te beëindigen. Die krijgen meteen een mooie aanbieding voorgeschoteld. Overigens hoef je niet zo’n groot bedrijf te zijn als Otto; met deze tools kan iedereen over realtime analyses beschikken.’
Stop coderen met de hand
‘Alles waarover ik heb gepraat, kun je programmeren in Spark, in Java of in Scala’, zegt McDonnell, ‘maar er is een betere manier. Als je een visual desing interface gebruikt, kun je de ontwikkelproductiviteit met een factor tien verhogen. Maar niet alleen dat; als je een visual user interface gebruikt, kun je eenvoudiger het werk delen met collega’s. Mensen zien dan wat de integratie job doet. Dit maakt ook hergebruik van code eenvoudiger.’
Het beste leert een mens door iets te doen. Dat geldt ook hiervoor. ‘Je hoeft niet te wachten tot je alles in de puntjes hebt geregeld’, is McDonnels laatste tip. ‘Begin met een big data sandbox. Dat is een virtuele machine waarop Spark is voorgeïnstalleerd, evenals een realtime streaming gebruiksvoorbeeld. Wie dat nodig heeft, kan trouwens beschikken over een eenvoudige gids die je stap voor stap door het proces leidt.’