In een eerder blog hebben we ons gebogen over de energie-afhankelijkheid van blockchain. Deze keer kijken we naar de opslagvereisten van blockchain. De gedistribueerde datastructuur van blockchain resulteert in een aanzienlijk hogere dataopslag in vergelijking met traditionele gecentraliseerde databases. Centrale systemen hebben echter vaak te maken met een gebrek aan vertrouwen, wat resulteert in "verborgen" datasilo's en vaak extra arbeidskosten. Dit wordt hieronder uitgewerkt middels een praktijkvoorbeeld waarin een centraal beheerd systeem wordt vergeleken met een toekomstig op blockchain-gebaseerd systeem.
De use-case
Drie producenten van restwarmte leveren aan een energienetwerk. De netwerkeigenaar is als zodanig de beheerder die ervoor moet zorgen dat de producenten worden betaald op basis van de hoeveelheid geleverde energie. Hiertoe controleert en registreert hij de energie-input van elke producent. Omdat alle partijen belang hebben bij een correcte administratie en er geen echt onderling vertrouwen is, houdt elke producent ook zijn eigen leveringen bij. Anders gezegd, als gevolg van een gebrek aan vertrouwen in het gecentraliseerde systeem worden door de producenten extra datasilo's gecreëerd. De behoefte aan opslagruimte neemt hierdoor toe.
Gecentraliseerd gegevensbeheer
De data die nodig is voor correcte facturering bestaat uit datapunten met een tijdstempel per uur en daarbij de hoeveelheid geproduceerde thermische energie in megawattuur. De bestandsgrootte van de spreadsheet met deze gegevens is 430 KB. Daarnaast heeft elke producerende partij zijn eigen kleinere gegevensbestand waardoor de totale opslagbehoefte 1,08 MB wordt. Zijn er verschillen tussen de datasets van het netwerk en die van een producent, dan zal de opslagbehoefte stijgen. Dan worden e-mails met bestandsbijlagen heen en weer gestuurd waarna de verschillende bestanden moeten worden vergeleken en worden opgeslagen. Uiteindelijk zullen dergelijke verschillen leiden tot meerdere e-mailwisselingen met diverse gegevensbestanden als bijlagen waardoor de oorspronkelijk benodigde opslagcapaciteit bij elke uitwisseling makkelijk wordt verdubbeld.
Dit scenario toont aan dat centrale databases vaak meer opslagruimte nodig hebben dan op het eerste oog lijkt. Daarbij is het niet te zeggen of er fouten zullen optreden en hoeveel iteraties er nodig zullen zijn om deze op te lossen. Wel kan gezegd worden dat de resulterende benodigde opslagcapaciteit altijd veel lager zal zijn dan wat nodig is voor een gedistribueerde database. Dat zal hieronder ook blijken. Het punt is dat fouten door mensen moeten worden opgelost, wat resulteert in relatief hoge extra arbeidskosten en nieuwe kansen op nieuwe fouten. En zelfs als er geen dataconflicten zijn, dan nog heeft elke partij een eigen datastrategie nodig wat sowieso kostbaar personeel vereist voor implementatie en onderhoud.
Een blockchain-implementatie
In onze blockchain case hebben alle belanghebbenden hun eigen open source blockchain node in hun eigen omgeving draaien waarmee men deelneemt aan het consensusalgoritme om de gegevens te valideren. Elke node draait een identieke toepassing met alle regels die bepalen hoe transacties tussen nodes worden opgelost. De datastructuur die gebruikt wordt om autonome dataconsensus te bereiken, bestaat uit verschillende componenten. De totale opslagvereiste voor deze componenten is 42 MB per node. In onze use case betekent dit 42 MB opslagcapaciteit per deelnemer, wat resulteert in een totale opslagbehoefte van 168 MB. Dit is een indrukwekkende toename ten opzichte van wat de gecentraliseerde database nodig heeft.
Deze toename is echter niet geheel ongerechtvaardigd. Om te beginnen zijn de resulterende gegevens In het geval van blockchain 100% foutvrij en door alle deelnemers gevalideerd en dus niet vatbaar voor tijdrovende conflicten. Bovendien wordt bij de onderzochte blockchainimplementatie gebruik gemaakt van geavanceerde versleuteling om ongewenste datalekken te voorkomen. Hierdoor neemt de totale opslagbehoefte ook aanzienlijk toe. En aangezien de deelnemers consensus bereiken over een identieke kopie van de data en terug kunnen vallen op een ander als er iets fout gaat met hun node, is er ook niet langer sprake van een single point of failure. Dataredundantie is een ingebouwd kenmerk van blockchain en vereist geen extra middelen om te onderhouden. Tot slot wordt veel ruimte in beslag genomen door het autonome proces van het bereiken van consensus over de data. Dit proces zal na verloop van tijd zelfs extra opslag vergen ook zonder dat er nieuwe data aan de blockchain wordt toegevoegd.
Conclusie
We kunnen concluderen dat een blockchainnetwerk, zoals verwacht, veel meer opslagruimte nodig heeft dan wanneer data centraal wordt beheerd – zelfs in een situatie waarin in een systeem zonder vertrouwen veel fouten moeten worden opgelost. Maar met een gestaag dalende gemiddelde prijs per GB lijkt dit een lage prijs voor een Trustless* databron met autonome conflictoplossing en zonder single point of failure. Daar waar de opslagkosten wel een probleem vormen, is een gecentraliseerde oplossing efficiënter, maar zal er altijd een betrouwbare derde partij (oplossing) nodig zijn om deze te implementeren.
Uiteindelijk bevat het blockchainsysteem veel meer dan alleen de ruwe gegevens; het bevat ook alles wat nodig is om consensus te bereiken en de data toegankelijk te houden voor alle deelnemers. Als het systeem complexer wordt, bijvoorbeeld door het toevoegen van nieuwe marktspelers, neemt ook de dataopslagbehoefte toe. Echter, dat geldt ook voor de kosten die voortvloeien uit het oplossen van conflicten in een gecentraliseerde oplossing. In geval van een blockchain-implementatie blijven die kosten daarentegen constant en beperkt. Al met al is er meer af te wegen als het gaat over het al dan niet implementeren van blockchain dan alleen het aspect data-opslag. De keuze voor implementeren of niet moet altijd worden gemaakt na een zorgvuldige afweging van alle voors en tegens, zoals het geval is met alle technologieën.
CGI is van mening dat blockchain een bijdrage kan leveren aan de energietransitie of deze zelfs te versnellen. Lees onze White paper over de kansen van blockchain voor utilities of deze thesis over het gebruik van blockchain in decentrale energiesystemen voor meer inzicht in en onze visie op blockchain.
* Blockchain creëert niet noodzakelijkerwijs een betrouwbaar systeem. Het vermindert de behoefte aan vertrouwen van de individuele deelnemers. Lees voor meer informatie het artikel "Wat bedoelen we met "blockchains zijn Trustless?".