Nieuwe metrics van objectopslag

Nieuwe metrics van objectopslagFlying Fortress door Nele-Diel

Het team van object S3-opslag Mail.ru Cloud Storage schreef een artikel over welke criteria belangrijk zijn bij het kiezen van objectopslag. Hieronder volgt de tekst van de auteur.

Wanneer het gaat over objectopslag, denken mensen meestal alleen aan ƩƩn kenmerk: de prijs per TB/GB. Natuurlijk is deze metric belangrijk, maar het maakt de aanpak eenzijdig en beschouwt objectopslag slechts als een middel voor archivering. Bovendien vermindert deze benadering het belang van objectopslag in de technologische stack van een bedrijf.

Bij het kiezen van objectopslag is het belangrijk om op vijf kenmerken te letten:

  • prestaties;
  • schaalbaarheid;
  • compatibiliteit met S3;
  • reactie op storingen;
  • integriteit.

Deze vijf kenmerken zijn nieuwe metrics voor objectopslag, naast de kosten. Laten we ze allemaal bekijken.

Prestaties

Traditionele objectopslag biedt geen bijzondere prestaties. Dienstverleners hebben voortdurend in prestaties geĆÆnvesteerd in de zoektocht naar lagere prijzen. Maar met moderne objectopslag is dat anders.

De snelheid van verschillende opslagoplossingen komt in de buurt van Hadoop of zelfs beter. Moderne snelheidseisen voor lezen en schrijven zijn: van 10 GB/s voor harde schijven tot 35 GB/s voor NVMe.Ā 

Die doorvoersnelheid is voldoende voor Spark, Presto, Tensorflow, Teradata, Vertica, Splunk en andere moderne rekenframeworks binnen de analyse-stack. Het feit dat MPP-databases worden geconfigureerd voor objectopslag, geeft aan dat het steeds vaker wordt gebruikt als primaire opslag.

Als uw opslagoplossing de vereiste snelheid niet biedt, kunt u geen gebruik maken van data en daar waarde uit halen. Zelfs als u gegevens uit objectopslag in een in-memory verwerkingsstructuur ophaalt, is er nog steeds doorvoersnelheid nodig om data naar en van geheugen te verzenden. Verouderde objectopslag biedt dat niet voldoende.

Dit is een cruciaal punt: de nieuwe prestatiemetric is doorvoersnelheid, niet latentie. Dit is vereist voor schaalbare data en is de norm in moderne data-infrastructuren.

Hoewel prestatietests een goede manier zijn om de prestaties te bepalen, is het onmogelijk deze precies te meten voordat de applicatie in een omgeving draait. Pas daarna kan worden gezegd waar precies de bottlenecks liggen: in de software, schijven, netwerken of op het niveau van berekeningen.

Schaalbaarheid

Schaalbaarheid verwijst naar de hoeveelheid petabytes die in ƩƩn namespace passen. Leveranciers beweren dat ze eenvoudig schaalbaar zijn, maar verzwijgen dat massale monolithische systemen bij het schalen broos, complex, onbetrouwbaar en duur worden.

Een nieuwe maatstaf voor schaalbaarheid is het aantal namespaces of klanten dat u kunt bedienen. Deze metric komt rechtstreeks van hyperscalers, waar de bouwstenen van de opslag klein zijn maar kunnen opschalen tot miljarden eenheden. Over het algemeen is dit een cloud-metric.

Wanneer standaard bouwstenen klein zijn, zijn ze gemakkelijker te optimaliseren, dat wil zeggen dat ze kunnen zorgen voor beveiliging, toegangscontrole, beleidbeheer, levenscyclus en updates zonder onderbreking van de dienstverlening. Dit resulteert uiteindelijk in betere prestaties. De grootte van de bouwsteen is een functie van het beheersbaarheid van de uitvalzone, zo worden hoogbeschikbare systemen opgebouwd.

Multitenancy heeft vele kenmerken. Hoewel de parameter aangeeft hoe organisaties toegang bieden tot gegevens en applicaties, verwijst het ook naar de applicaties zelf en de logica voor hun isolatie van elkaar.

Kenmerken van de moderne aanpak van multitenancy:

  • In korte tijd kan het aantal klanten groeien van enkele honderden naar miljoenen.
  • Klanten zijn volledig van elkaar geĆÆsoleerd. Dit stelt hen in staat om verschillende versies van dezelfde software uit te voeren en objecten met verschillende configuraties, machtigingen, functies, beveiligingsniveaus en onderhoud te bewaren. Dit is noodzakelijk wanneer nieuwe servers, updates en geografische regio's worden opgeschaald.
  • Opslag schaalt elastisch, middelen worden op aanvraag verstrekt.
  • Elke operatie wordt beheerd via API's en geautomatiseerd zonder menselijke tussenkomst.
  • Software kan in containers worden geplaatst en standaard orkestratiesystemen zoals Kubernetes worden gebruikt.

Compatibel met S3

Amazon S3 API — feitelijk de standaard voor objectopslag. Elke softwareleverancier voor objectopslag claimt compatibiliteit ermee. Compatibiliteit met S3 is binaire: het is ofwel volledig geĆÆmplementeerd of helemaal niet.

In de praktijk zijn er honderden en duizenden grensscenario's waarbij er iets misgaat bij het gebruik van objectopslag. Dit is vooral het geval bij leveranciers van proprietaire software en diensten. De belangrijkste gebruiksscenario's zijn directe archivering of back-up, zodat er weinig redenen zijn om de API aan te roepen; de gebruiksmogelijkheden zijn homogeen.

Open source software heeft aanzienlijke voordelen. Het dekt de meeste grensscenario's, rekening houdend met de grootte en variƫteit van applicaties, besturingssystemen en hardwarearchitecturen.

Dit alles is belangrijk voor applicatieontwikkelaars, dus het is de moeite waard om de werking van de applicatie te testen met de opslagleveranciers. Open source vereenvoudigt het proces — het is gemakkelijker te begrijpen welke platform geschikt is voor uw applicatie. De leverancier kan fungeren als het enige toegangspunt tot opslag — wat betekent dat hij aan uw behoeften zal voldoen.Ā 

Open source betekent: applicaties zijn niet gebonden aan een leverancier en zijn transparanter. Dit zorgt voor een lange levenscyclus van de applicatie.

En een paar opmerkingen over open source en S3.Ā 

Als u een applicatie voor big data uitvoert, verhoogt S3 SELECT de prestaties en efficiƫntie aanzienlijk. Dit gebeurt door SQL te gebruiken om alleen de objecten uit de opslag op te halen die u nodig hebt.

Een belangrijk punt is de ondersteuning van bucket-notificaties. Bucket-notificaties vereenvoudigen serverless computing — een belangrijk onderdeel van elke microservicesarchitectuur die als een dienst wordt aangeboden. Aangezien objectopslag feitelijk cloudopslag is, wordt deze functie cruciaal wanneer cloudapplicaties gebruikmaken van objectopslag.

Ten slotte moet de implementatie van S3 de Amazon S3 API-interfaces voor server-side encryptie ondersteunen: SSE-C, SSE-S3, SSE-KMS. Nog beter is het als S3 bescherming tegen ongeautoriseerde toegang biedt die echt veilig is.Ā 

Reactie op storingen

Een indicator die waarschijnlijk vaak over het hoofd wordt gezien, is hoe het systeem omgaat met storingen. Storingen kunnen om verschillende redenen optreden en de objectstorage moet ze allemaal kunnen verwerken.

Bijvoorbeeld, er is een enkel punt van falen, de metriek daarvan is nul.

Helaas maken veel objectstorage-systemen gebruik van speciale knooppunten die geactiveerd moeten worden voor een goede werking van het cluster. Dit omvat naamknooppunten of metadata-servers, wat een enkel punt van falen creƫert.

Zelfs waar meerdere punten van falen zijn voorzien, is het cruciaal dat het systeem in staat is om catastrofale storingen te weerstaan. Schijven vallen uit, servers falen. Het is essentieel om software te ontwikkelen die is ontworpen om storingen als een normale staat te behandelen. Wanneer een schijf of knooppunt faalt, blijft deze software functioneren zonder veranderingen.

Ingebouwde bescherming tegen gegevensverlies en degradatie garandeert dat: je kunt zoveel schijven of knooppunten verliezen als je pariteitsblokken hebt - meestal is dat de helft van de schijven. Pas dan kan de software geen gegevens terughalen.

Een storing wordt zelden onder belasting getest, maar dergelijke tests zijn essentieel. Het simuleren van een storing onder belasting zal de totale kosten laten zien die na de storing zijn gemaakt.

Consistentie

Een consistentiegraad van 100% wordt ook wel strikte consistentie genoemd. Consistentie is een cruciaal onderdeel van elk opslag systeem, maar strikte consistentie komt vrij zelden voor. Amazon S3 ListObject is bijvoorbeeld niet strikt consistent; het is alleen consistent op het moment van de uiteindelijke bevestiging.

Wat wordt bedoeld met strikte consistentie? Voor alle bewerkingen na een bevestigde PUT-bewerking moet het volgende gelden:

  • De bijgewerkte waarde is zichtbaar bij het lezen vanaf elk knooppunt.
  • De update is beschermd tegen een knooppuntfout.

Dit betekent: als je de stekker er middenin trekt, gaat er niets verloren. Het systeem retourneert nooit beschadigde of verouderde gegevens. Dit is een hoge standaard die belangrijk is voor veel scenario's: van transactie-applicaties tot back-up en herstel.

Conclusie

Dit zijn nieuwe metrics voor object storage die de gebruikspatronen in moderne organisaties weerspiegelen, waar prestaties, consistentie, opschaalbaarheid, foutdomijnen en compatibiliteit met S3 de bouwstenen zijn voor cloudapplicaties en big data-analyses. Ik raad aan deze lijst naast de prijs te gebruiken bij het creëren van moderne datastacks. 

Over object storage van Mail.ru Cloud Solutions: S3-architectuur. 3 jaar evolutie van Mail.ru Cloud Storage.

Wat verder te lezen:

  1. Voorbeeld van een event-driven toepassing op basis van webhooks in de object S3-opslag van Mail.ru Cloud Solutions.
  2. Meer dan Ceph: block storage van de cloud MCSĀ 
  3. Werken met Mail.ru Cloud Solutions object S3 storage als een bestandssysteem.
  4. Ons Telegram-kanaal met nieuws over updates van het S3-storage en andere producten.Ā 

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster