CBS experimenteert met Spark om big data succesvol te verwerken
Complexe berekeningen
Spark is een software-laag die ervoor zorgt dat meerdere computers tegelijkertijd aan een opdracht kunnen rekenen, vertelt Marco Puts. Hij is big data-onderzoeker en procesontwikkelaar bij CBS. In combinatie met het Hadoop-filesysteem maakt Spark snelle en nauwkeurige berekeningen met grote hoeveelheden data mogelijk. Martijn Bronsveld, IT-infrastructuur: ‘Met het Hadoop-filesysteem verspreiden we de data voor een rekenopdracht over de machines. De berekeningen worden vervolgens gedaan met Spark. Als de bewerking klaar is, worden de uitkomsten samengevoegd.’ De inzet van Spark is nodig omdat CBS niet alleen over veel data beschikt, maar daarmee ook steeds complexere berekeningen uitvoert én verschillende soorten data combineert. IT-infrastructuurdeskundige Wil van der Maarel: ‘Juist daarvoor is Spark erg geschikt.’
In spelen op actualiteiten
Spark biedt kansen voor CBS. Puts: ‘We kunnen sommige productieprocessen, die nu veel tijd in beslag nemen, sterk versnellen.’ Spark kan bijdragen aan een efficiënte uitvoer van maatwerkprojecten en ervoor zorgen dat reguliere statistieken tijdig gepubliceerd worden. ‘In sommige gevallen kunnen we met Spark real time conclusies trekken uit de data. Dat geeft de mogelijkheid snel in te spelen op actualiteiten.’ Zo ver is het echter nog niet. Op dit moment wordt onderzocht wat er precies mogelijk is met Spark én wat dat kost, in geld en inspanning. Van de Maarel: ‘Om met Spark aan de slag te kunnen moeten statistische onderzoekers en statistiekmakers een andere manier van werken aanleren en conceptueel anders gaan denken. Bovendien is er nog een aantal technische en organisatorische uitdagingen. We bekijken nu eerst op kleine schaal of Spark werkt voor CBS.’
‘Om met Spark aan de slag te kunnen moeten statistische onderzoekers en statistiekmakers een andere manier van werken aanleren en conceptueel anders gaan denken’
Kansen
De resultaten van de proof of concepts (PoC’s) zijn erg hoopvol. In deze eerste testen zijn de berekeningen voor bestaande statistieken met Spark overgedaan. Dat leverde betrouwbare cijfers op. ‘En het kostte me niet veel moeite om het aan het werk te krijgen’, aldus Puts. Bronsveld: ‘De volgende stap is een wat omvangrijkere test. We kunnen daarmee zien of we het systeem net zo gemakkelijk kunnen opschalen als in theorie wordt gesteld. Het idee is dat je bij grotere berekeningen simpelweg computers erbij zet. Dan ben je in dezelfde tijd klaar met rekenen, ook al is je berekening veel groter.’ Mogelijk is het gebruik van Spark ook interessant voor andere statistieken die gebaseerd zijn op veel data en waar veel rekenkracht voor nodig is, zoals de polisadministratie of misschien zelfs de volkstelling.
Werken met Spark
Werkt iedereen binnenkort met Spark? Van de Maarel: ‘Spark is één van de systemen dat een technische oplossing biedt voor het werken met big data. Het is een nieuwe ontwikkeling naast de bestaande statistische programmatuur. Er zijn drie PoC’s uitgevoerd, met verkeerslusdata, met data van het Centrum voor Beleidsstatistiek en met data van de libellenstatistiek voor de afdeling Natuur. Hier hebben we veel van geleerd en die ervaring gebruiken we om eind mei een gedegen advies uit te brengen voor het vervolg van het project en een uitbreiding van het systeem.’