Het efficiënter afhandelen van gegevens is een van de grootste uitdagingen op technologisch vlak. Het is ook slechts een van vele facetten waar je mee te maken krijgt. Het werk dat Google heeft verricht met zijn MapReduce-technologie kan een enorme invloed hebben op de manier waarop met data wordt omgesprongen.

In parallel

MapReduce is een framework voor het verbeteren van de verwerking van grotere datasets. Het maakt dan niet uit of die data zich bevindt in databases of in bestandssystemen.

Met MapReduce kun je processen opwaarderen naar parallelle processing, wat de verwerkingstijd enorm kan terugdringen. De technologie hakt een grote taak of probleem in kleine, onafhankelijke stukjes die vervolgens naar de node of het cluster worden gestuurd. Deze kunnen de taken verder opdelen. Deze processen worden door Google aangeduid als 'Map'-functie, en zijn ook onafhankelijk waardoor ze parallel verwerkt kunnen worden.

Als een taak is afgehandeld, geeft elke node een bericht af aan de node waar de taak vandaan kwam. Deze 'parent'-node plakt de verschillende brokken aan elkaar tot een groter geheel, waarna hij het verder doorstuurt in de hiërarchie. Dat gaat door tot de master-node het volledige antwoord in elkaar kan zetten.

Ook dat proces wordt parallel uitgevoerd. Daardoor wordt niet alleen het 'werk' zelf parallel uitgevoerd, maar ook de distributie. Door automatisch te parallelliseren, helpt MapReduce programmeurs zonder dat ze ervaring hoeven te hebben met parallel programmeren.

Vector processing

Het Hadoop-project van Apache maakt dankbaar gebruik van MapReduce. De ontwikkelaars gebruiken nog een andere technologie die furore kan gaan maken in de wereld van de database: VectorWise. Deze technologie past de Wet van Moore toe op zakelijke applicaties en versnelt verwerking flink. VectorWise gebruikt vector processing op datasets. De grootte van elke vector is afgestemd op de grootte van het cachegeheugen van moderne processoren.

Met VectorWise is het volgens CEO Roger Burkhardt van Ingres voor het eerst dat Intel-processors geoptimaliseerd worden voor zakelijke applicaties. “Intel heeft heel veel gedaan voor de gaming-industrie, daar zien we heel veel verbeteringen. Maar dit is de eerste keer dat ze iets dergelijks doen voor de zakelijke wereld.”

De toepassing van VectorWise op bedrijfssystemen is nu al goed merkbaar. “De rekenkosten zijn flink afgenomen”, zegt Burkhardt. “De laatste keer dat ik zoiets zag was toen Linux zijn intrede deed op bedrijfshardware. Dat zorgde indertijd voor kostenbesparingen oplopend tot 75 procent.”

Structuur met XML

Het kan volgens Burkhardt nog veel verder. “Dit gaat zich steeds meer terugbetalen. Chips kunnen complexere taken aan.”

Maar hoe zit het dan met de database zelf? Blijft deze zoals hij is? We zien al aanwijzingen dat de traditionele relationele database aan het veranderen is. De afgelopen jaren hebben we de opkomst gezien van de op XML gebaseerde database, een technologie die de flexibiliteit binnen bedrijven flink ten goede kan zijn.

Lyn Robison van analistenbureau Burton Group voorspelt dat XML-databases een verandering teweeg gaan brengen voor bedrijven. “Het zal vooral nuttig blijken voor bedrijven met content-centrische eisen.” Sommige bedrijven hebben grote hoeveelheden ongestructureerde content die niet beheerd wordt. Dat gaat met XML-databases veranderen, denkt Robison. “Bedrijven kunnen tekstuele gegevens snel laden, zoals de complete werken van Shakespeare. Een XML-database heeft de structuur daarvan direct door.”

Robison wijst de ontwikkeling van XQuery aan als de belangrijkste verandering in de manier waarop tegen databases wordt aangekeken. “XQuery is een W3C-standaard die voortborduurt op twee vorige standaarden die niet wisten aan te slaan, XPath en XLink”, legt hij uit. Maar XQuery lijkt goed onderweg.

De opkomst van een van zijn sleuteluitvoeringen, Mark Logic, is een tegen dat dingen veranderen. Mark Logic overlegt dusdanige prestatieverbeteringen dat het niet kan worden genegeerd, zelfs niet door CIO's die sceptisch waren over XML-databases. “Mark Logic moet twee keer zo goed zijn dan andere XML-databases om potten te breken in het bedrijfsleven. Maar in veel gevallen boekt het een snelheidswinst van factor 50. Dat laat de kracht zien van XML-databases”, zegt Robison.

Het enige probleem dat Robison ziet, is het voorlopige gebrek aan kennis bij ict'ers. Hij adviseert dan ook om XML-databases naast relationele databases te installeren, en om de databasebeheerders een extra cursus te laten volgen.