Snel grootschalig analyseren via data shards

BARC-consultant Patrick Keller was één van de inleiders bij de Nederlandse introductiebijeenkomst van IRIS, het nieuwe heterogene dataplatform van Intersystems. Het bedrijf claimt met IRIS een product op de markt te hebben gebracht dat binnen één architectuur onderdak biedt aan zowel data voor transactieverwerking, data voor analytische toepassingen en data ten behoeve van bedrijfsprocessen die real-time worden uitgevoerd.

Voor het snel analyseren van omvangrijke datasets viel tot dusver de keuze vaak op systemen met in-memory databases. Die laten zich niet zonder meer direct opschalen op het moment dat de werkbelasting en de omvang van de datasets toenemen. De keuze voor de maximale omvang van de in-memory database verkleint weliswaar het risico van gebrek aan geheugencapaciteit, maar laat in theorie nog steeds toe dat door een onverwacht tekort aan capaciteit, data verloren gaat. Bovendien is het een heel kostbare oplossing. IRIS werkt met een intelligent mechanisme voor het managen van het cachegeheugen en schrijft na een in-memory uitgevoerde bewerking, automatisch data ook naar geheugen op schijf. Onder geen beding gaan tijdens de operatie gegevens verloren, stelt men.

Een transactie van één record laat zich binnen één microseconde (0,001 milliseconden) verwerken en in-memory plaatsen om van daaruit door een query te worden benaderd. Binnen 20 microseconden staat de transactie bijgeschreven in het logboek en komt daarmee ook terecht op de harde schijf.

Schaalbaarheid ontleent IRIS aan het workload-mechanisme, gebaseerd op het al langer gebruikte Enterprise Cache Protocol (ECP) voor het onderverdelen van één monolithische database naar gedistribueerde databasetabellen in het cachegeheugen. In IRIS is hieraan Intelligent Inter-shard Communication toegevoegd waardoor zeer grote volumes gedistribueerde data sets zijn te analyseren. Zo’n geclusterde sharded omgeving verdeelt de werkbelasting met datasets horizontaal in rijen. De technologie, die onder andere ook Facebook toepast, zorgt ervoor dat datapartities in specifieke, grote tabellen omwille van de snelheid en beheersbaarheid op verschillende servers zijn ondergebracht. Ze worden aangeduid als data shards. Wanneer een veelgebruikte analysetoepassing queries op een geclusterde data-omgeving afvuurt, laat IRIS de shard master de queries opdelen en verspreiden over de data shards voor parallelle uitvoering. Daarna aggregeert de shard master de verschillende resultaten en levert die in zijn geheel terug aan de betreffende analyse-applicatie. Onderling kunnen de shards data uitwisselen zonder de shard master erbij te betrekken.

Data laat zich binnen het platform zowel in een relationele structuur (SQL) opslaan als in een object-georiënteerd model met een synchronisatie-mechanisme tussen die twee omgevingen. Het dupliceren van data kan achterwege blijven, evenals een representatie van het proces (mapping) van object naar relationeel. De mogelijkheid om het meest geschikte formaat en representatiemodel toe te passen, zorgt voor flexibiliteit in de fase van systeemontwikkeling, voor een hoger prestatieniveau tijdens de operationele uitvoering en voor minder complexiteit bij het beheer.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.