Buckets of Bits

De ‘bit-emmer’ was de informele naam van de bak waar de kleine perforaties van papier van ponsmachines werden opgevangen. De term ‘bit-emmer’ werd ook gebruikt als grap voor de plaats waar ‘verdwenen data’ of ‘nutteloze bits’ terecht kwamen. Het werd zelfs als computer-concept bekend als het nulapparaat of /dev/null: de bitstroom die geen computerbronnen zoals CPU of geheugen gebruikt. Alle data die daarop wordt ‘geschreven’, mag uiteindelijk als onnodig worden weggegooid (System.IO.Stream.Null). 

Ook werd het vaak gebruikt in allerhande grappen om een data-opslagplek aan te duiden waar niets met de data zou worden gedaan. Zoals ‘stuur alstublieft uw klachten naar /dev/null’. Op 1 april 1972 werd zelfs WORN gepresenteerd, de ‘bit-emmer’ voor: ‘Write Once, Read Never’.

Emmertjes data

Als we over data-opslag spreken, is ‘buckets of bits’ een analogie. Bits van een dataset worden als file – fysiek gezien – in een emmertje bewaard. Die emmertjes worden ‘ergens’ neergezet en bewaard. Of gedupliceerd, gelabeld, over meer emmers verdeeld etc. Vooral voor niet data-onderlegde personen zijn ‘buckets of bits’ een mooie analogie om data-opslag en -replicatie concepten en om het begrip metadata uit te leggen. Mijn vorige blog ging over content addressable storage, een cryptografisch concept waarbij de ‘inhoud’ van het emmertje de hashcode en dus de ‘identificatie’ op het label aan het hengsel bepaalt: de metadata van de file.

Dataopslag kan men vergelijken met het slim bij elkaar houden in een omhulling van een set bits, hier dus de emmer. Zo’n emmer kan klein zijn, maar ook grotere proporties aannemen. Voordeel van een emmer is dat het de inhoud op een simpele wijze bij elkaar houdt, zich aan de hengsel laat optillen en vervoeren en men de inhoud ook over andere emmers kan verdelen of overgieten. Nadeel van een emmer is dat je kunt morsen, hij kan omvallen, de inhoud vervuilt of wordt gestolen. Je moet er voorzichtig mee omgaan. Daarnaast kun je emmers met identieke inhoud niet makkelijk uit elkaar houden; welke is de master en welke de slave? 

Emmers dubbelen 

Om het gevaar van omvallen te verminderen, kan een tweede identieke emmer met dezelfde inhoud op een andere plek worden weggezet. De kans dat beide emmers tegelijkertijd omvallen, is een stuk geringer. Bij twijfel kan zelfs een derde emmer worden toegevoegd. In feite doen we dit met onze data ook. We repliceren realtime het emmertje met data en zetten het in een tweede datacentrum in de buurt. Financiële instellingen maken zelfs een derde emmer die ze op honderden kilometers afstand plaatsen. 

Natuurlijk moet zo’n emmertje wel voorzichtig naar de locatie worden vervoerd waar hij vervolgens wordt opgeslagen. Datareplicatie staat en valt bij een goed geregeld vervoer. Daarvoor ontstonden speciale storage netwerken. We onderscheiden hierbij SAN (Storage Area Network) en NAS (Network Attached Storage) om betrouwbaar emmertjes over grotere afstanden uit te wisselen, te gebruiken en te repliceren. Een SAN werkte met een FC (fibre channel) protocol, NAS met een IP (Internet) protocol, in feite technische afspraken over de wijze waarop we emmertjes uitwisselden. Tegenwoordig is het met nieuwe protocollen mogelijk geworden beide vormen van replicatie over hetzelfde netwerk te laten gaan. In dat kader is het met de komst van internet allemaal wat makkelijker geworden, hoewel een bericht van bewezen data-ontvangst nog steeds essentieel is voor de kwaliteit.

Gestructureerd of ongestructureerd

Een emmertje met data is lastig te herkennen. De storage systemen nummerden daarom de emmertjes zelf en registreerden waar ze het emmertje opborgen. Als een emmertje weer werd opgevraagd, kon het systeem het op die wijze terugzoeken.  Echter het bleven voor het storage systeem ‘anonieme’ emmertjes met onbekende inhoud. De applicatie, die het emmertje had gevuld, wist natuurlijk wel wat in het emmertje zat, het storage systeem niet. We noemen dit ook wel ‘gestructureerde data’. Data die bij een specifieke applicatie hoort. 

In het begin was bijna alle data gestructureerd. Dat wil zeggen dat de inhoud een serie velden van een database was, die door een applicatie op een specifieke volgorde was weggeschreven. Dus eigenlijk was er weinig behoefte om de inhoud van de emmer te kennen, want de inhoud was alleen voor de gebruikte applicatie leesbaar.  Maar in de loop der tijd ontstond meer en meer ongestructureerde data. Informatie die in generiekere applicaties werd gecreëerd en bepaalde herkenbare interne structuren kent. Denk aan tekstverwerking, spreadsheets, e-mails, presentaties en allerlei social media applicaties. Informatie waarvan een deel of alles door iedereen te lezen is. Tegenwoordig is bijna alle data ongestructureerde data, volgens het recente IDC onderzoek over datagroei zelfs meer dan 90%.

Labels aan het hengsel

Maar voor een storage systeem blijft een emmertje een emmertje, ongeacht de data die men erin heeft gestopt. Ook in ongestructureerde data blijft het lastig zoeken. Het ‘hoort’ niet bij een applicatie en aan de buitenkant is ook weinig verschil te zien. De oplossing hiervoor – beslist niet nieuw – is aan elke emmer een label te hangen met informatie over de inhoud. We noemen dat meta-data: data over de data. Dat vraagt wel weer discipline en inspanning. Het liefst vóórdat men een emmertje gaat vullen, zou je het hoe, wat en waarom van dat emmertje willen weten. Is het projectinformatie? Welk project? Wie heeft het gemaakt? Is het beveiligde data? Is het gekoppeld in een workflow? Kortom, alle relevante informatie op het label van het emmertje opdat we in de dataopslag makkelijker die data kunnen terugvinden. 

Document management of content management systemen zijn gebaseerd op het aanmaken en bijhouden van deze meta-data tijdens de levenscyclus van een emmertje data. Een garantie dat een emmertje data aan bepaalde compliance eisen voldoet. Want op basis van het label weet men precies waar die data vandaan komt en wat er met die data gebeurd is. Wat men er wel en niet mee mag doen. Hoewel Content Management Systemen al ruim 30 jaar bestaan, zien we de laatste jaren weer een opbloei. Wereldwijde governance en compliance dwingen steeds meer organisaties tot het gecontroleerd maken, opslaan, beheren en gebruiken van hun data. 

Datacentrisch transformeren

Data in al die emmertjes is de basis voor informatie en kennis voor specifieke gebruikers. Met applicaties, algoritmes en workflows zorgen we dat de juiste data tot de gewenste informatie wordt gevormd. Of dat nu data vanuit een centrale cloud, een decentrale node, een edge-device of uit een data-sensor is, maakt niet uit. Informatie management is die juiste data, samengesteld tot informatie op het gewenste moment bij de specifieke gebruiker te krijgen. Het beheren en managen van al die emmertjes data is daarvoor wel een must. Niet alleen van de actuele data, maar ook de (tijdelijk) slapende data en formeel gearchiveerde data. 

Soms val ik in presentaties nog wel eens terug op het ‘oude’ verhaal van de data-emmertjes. Informatietechniek is ingewikkeld en abstract. Virtualisatie, multi-cloud en decentralisatie maakt het allemaal nog diffuser. Soms is het goed om met beide benen op de grond te staan en het te hebben over hoe en wat van die simpele ‘buckets of bits’ die altijd ‘ergens’ zullen moeten staan. In je eigen datacenter, in een eigen server, in een cloud van derden of verdeeld over verschillende nodes in een grid. Decentralisatie, edge-computing en grid-computing maakt dat data weer makkelijker niet in verre clouds, maar dichtbij in bekende nodes wordt opgeslagen. Maar het blijven emmertjes, dichtbij of ver weg en op één plek of verspreid. Dat blijft de basis van data management: ‘ergens‘ staat uw data in emmertjes hopelijk veilig opgeslagen . . . 

Photo by Joel Muniz on Unsplash