Je hebt gelijk, ik bedoelde inderdaad 'Infrequent' access.
Ik heb geen idee hoeveel stroom een aantal oude SAN-oplossing in diverse data centra combineren plus de extra netwerk componenten kosten. En of dat opweegt tegen de cloud opslag kosten (~€0.24 per GB per jaar voor active storage incl. 3 tot 9 replica's, voor 'Infrequent' is dat ~ €0,12).
____
Ik ga er inderdaad vanuit dat GitLab in de Twitter post met 'Object Storage' verwijst naar Google Object Storage.
Het hoeft natuurlijk niet met Google Cloud, het kan ook met AWS S3 (Object Storage) en AWS CloudFront (CDN) en S3 Policies (rechten) en Object Lifecycle Management. In combinatie met AWS Lambda Functies die requests kunnen uitvoeren (net zoals Google Function) gebaseerd op het lifecycle event en de cache-control header kan toevoegen aan bestanden op basis van update/put events.
En uiteraard kan in plaats van AWS of Google CDN ook CloudFlare gebruikt worden. Wellicht is zelfs de goedkoopste versie van CloudFlare goed genoeg als CDN functie in deze set-up.
Eventueel kunnen de CloudFlare serverless functions diverse Git functies faciliteren (op AWS kan dat met Lambda@Edge in de N. Virginia regio), maar dat is denk ik niet nodig.
____
Het voordeel van Cloud Object Storage is de multi zone opslag (verschillende duplicaten in meerdere data centra), een betrouwbaarheid met 11-negens, hoge uptime en hoge parallelle netwerk verbinding tot je storage.
Zo heb ik in de praktijk voorbeelden van ruim 8.000 concurrent requests op een net nieuw geupload bestand van 1 GB welke zonder problemen worden afgehandeld, ruim binnen een minuut zijn de ruim 8.000 servers klaar met het lezen en interpreteren van de data. Een gemiddelde snelheid van meer dan 133Gbps.
Terwijl alle andere lees en schrijf acties ook gewoon ongestoord door gaan.
Dat is met de AWS s3 standaard storage class zonder CDN. Voor een lagere storage class kan dat wellicht anders zijn.
___
Even kort uitgerekend stel je besteed 1 miljoen dollar per jaar aan opslagkosten (alleen) voor de goedkoopste versie van FireStore ($0.20 per GB per maand = ~ 400 TB) en je migreert dat naar Standard class Object Storage ($0.02 per GB per maand).
De besparing is dan:
$1.000.000/($0.20 - $0.02) = $900.000,-
Bij Google CDN betaal je voor cache fill per GB $0.01 en niet voor het leven van de cache.
Egress voor CDN is $0.01 per GB en voor Object Storage minimaal $0.03.
Dat betekent dat een CDN bovenop de Object Storage al goedkoper is als slechts de helft van de bestanden wordt opgevraagd voordat ze worden bijgewerkt. Dat lijkt me voor een Git-repo heel normaal. Dus in alle gevallen is het slim om CDN te combineren met Object Storage voor Git.
De FireStore egress kosten zijn gelijk aan de CDN egress kosten.
Dat betekent dat de CDN fill kosten additionele kosten zijn t.o.v. de huidige kosten, dus van de $900.000 besparing moeten worden afgetrokken (want het zijn extra kosten).
Dat betekent dat bij 75 petabytes aan GIT push data per maand (900PB per jaar) object storage met CDN niet meer goedkoper is.
Let wel dit dit alles op basis van list pricing. Ik ga er vanuit dat bij bovenstaande situatie het Google Account team zeker een flinke korting zal aanbieden.
____
Het is daarmee kosteneffectief om de tekstbestanden in een Git push (met content-encoding gzip) niet te decoderen, maar gewoon gzip gecomprimeerd te laten en op te slaan in de object storage en zo ook in CDN te laten landen. Zo zijn de opslag, fill en egress kosten lager.
[Reactie gewijzigd door djwice op 23 juli 2024 00:16]