Wanneer gegevensstromen enorm zijn hoeveelheden, het opslaan van alles kan moeilijk of zelfs onmogelijk zijn. Sterker nog, misschien is het niet eens handig om alles op te slaan. Hier zijn enkele cijfers van slechts enkele van wat u kunt verwachten te gebeuren binnen een enkele minuut op internet:
- 150 miljoen e-mails verzonden
- 350.000 nieuwe tweets verzonden op Twitter
- 2. 4 miljoen zoekopdrachten aangevraagd op Google
- 700.000 mensen aangemeld bij hun account op Facebook
Gezien dergelijke volumes lijkt het niet efficiënt om de gegevens de hele dag te verzamelen voor incrementele analyse. Je bewaart het eenvoudigweg ergens en analyseert het op het volgende of op een latere dag (wat de wijdverspreide archiefstrategie is die typisch is voor databases en datawarehouses). Nuttige gegevensvragen hebben echter de neiging om naar de meest recente gegevens in de stream te vragen en gegevens worden minder nuttig wanneer deze ouder worden (in sommige sectoren, zoals financieel, kan een dag veel tijd zijn).
Bovendien kun je verwachten dat nog meer gegevens morgen aankomen (de hoeveelheid gegevens neemt dagelijks toe) en dat maakt het moeilijk, zo niet onmogelijk, om gegevens uit opslagplaatsen te halen terwijl je nieuwe gegevens pusht. Oude gegevens uit de repositories halen naarmate nieuwe gegevens binnenstromen, lijkt op de straf van Sisyphus. Sisyphus ontving, zoals een Griekse mythe vertelt, een vreselijke straf van de god Zeus: gedwongen om een immense kei eeuwig op de top van een heuvel te laten rollen, alleen om hem elke keer weer naar beneden te zien rollen.
Soms kunnen dingen nog moeilijker worden afgehandeld, maar gegevens kunnen zo snel en in zulke grote hoeveelheden aankomen dat het schrijven naar schijf onmogelijk is: nieuwe informatie komt sneller dan de tijd die nodig is om het naar de harde schijf. Dit is een typisch probleem van deeltjesexperimenten met deeltjesversnellers zoals de Large Hadron Collider, waarbij wetenschappers moeten beslissen welke gegevens moeten worden bewaard. Natuurlijk kunt u gegevens tijdelijk in de wachtrij plaatsen, maar niet te lang, omdat de wachtrij snel groeit en onmogelijk wordt om te onderhouden. Als de wachtrijgegevens bijvoorbeeld in het geheugen worden bewaard, leidt dit snel tot een fout die niet in het geheugen is opgeslagen.
Omdat nieuwe gegevensstromen de eerdere verwerking van oude gegevens mogelijk overbodig maken en uitstelgedrag geen oplossing is, hebben mensen meerdere strategieën bedacht om ogenblikkelijk om te gaan met enorme en veranderlijke gegevensbedragen. Mensen gebruiken drie manieren om met grote hoeveelheden gegevens om te gaan:
- Opgeslagen: Sommige gegevens worden opgeslagen omdat dit kan helpen bij het beantwoorden van onduidelijke vragen later. Deze methode is gebaseerd op technieken om deze onmiddellijk op te slaan en later zeer snel te analyseren, ongeacht hoe massief deze is.
- Samengevat: Sommige gegevens worden samengevat omdat het niet logisch is om alles bij elkaar te houden zoals het is; alleen de belangrijke gegevens worden bewaard.
- Verbruikt: de resterende gegevens worden verbruikt omdat het gebruik ervan vooraf is bepaald. Algoritmen kunnen de gegevens direct in informatie lezen, verwerken en omzetten. Daarna vergeet het systeem de gegevens voor altijd.
Als je het hebt over massieve gegevens die binnenkomen in een computersysteem, zul je het vaak horen in vergelijking met water: streaminggegevens, gegevensstromen, data brandslang.
U ontdekt hoe datastromen eruitzien als het consumeren van kraanwater: door de kraan te openen kunt u het water in bekers of drinkflessen bewaren, of u kunt het gebruiken om te koken, voedsel te schrobben, borden te reinigen of handen te wassen. In elk geval is het meeste of al het water weg, maar het blijkt zeer nuttig en zelfs vitaal.