Cumandamentu di almacenamiento d'ughjettu S3 Mail.ru Cloud Storage traduttu un articulu nantu à quali criteri sò impurtanti quandu sceglite un almacenamentu d'ughjettu. U seguente hè u testu da a perspettiva di l'autore.
Quandu si tratta di almacenamentu d'ughjettu, a ghjente di solitu pensa solu à una cosa: u prezzu per TB / GB. Di sicuru, sta metrica hè impurtante, ma rende l'approcciu unilaterale è equipaghja l'almacenamiento di l'ughjettu cù un strumentu d'archiviu. Inoltre, stu approcciu riduce l'impurtanza di u almacenamentu di l'ughjettu per a pila di tecnulugia di l'impresa.
Quandu sceglite u almacenamentu di l'ughjettu, duvete attentu à cinque caratteristiche:
prestazione;
scalabilità;
S3 compatible;
risposta à i fallimenti;
integrità.
Queste cinque caratteristiche sò novi metrichi per u almacenamentu di l'ughjettu, cù u costu. Fighjemu tutti.
Produttività
I magazzini d'ughjetti tradiziunali ùn mancanu di prestazione. I fornituri di servizii anu sacrificatu constantemente in cerca di prezzi bassi. Tuttavia, cù u almacenamentu di l'ughjettu mudernu e cose sò diffirenti.
Diversi sistemi di almacenamentu si avvicinanu o ancu superanu a velocità di Hadoop. Requisiti muderni per a velocità di lettura è scrittura: da 10 GB/s per i discu duru, finu à 35 GB/s per NVMe.
Stu throughput hè abbastanza per Spark, Presto, Tensorflow, Teradata, Vertica, Splunk è altri quadri di l'informatica muderni in a pila analitica. U fattu chì e basa di dati MPP sò cunfigurate per u almacenamentu d'ughjettu suggerisce chì hè sempre più utilizatu cum'è almacenamiento primariu.
Se u vostru sistema di almacenamentu ùn furnisce micca a velocità chì avete bisognu, ùn pudete micca aduprà e dati è estrae u valore da questu. Ancu s'è vo ricuperate dati da u almacenamentu di l'ughjettu in una struttura di trasfurmazioni in memoria, avete sempre bisognu di larghezza di banda per trasfirià e dati da è da a memoria. I magazzini di oggetti legacy ùn ne anu micca abbastanza.
Questu hè u puntu chjave: a nova metrica di rendiment hè u throughput, micca a latenza. Hè necessariu per i dati à scala è hè a norma in l'infrastruttura di dati muderna.
Mentre i benchmarks sò un bonu modu per determinà u rendiment, ùn pò micca esse misuratu accuratamente prima di eseguisce l'applicazione in l'ambiente. Solu dopu pudete dì induve hè esattamente u collu di buttiglia: in software, dischi, rete o à u livellu di l'informatica.
Scalabilità
A scalabilità si riferisce à u numeru di petabytes chì si mette in un spaziu di nomi. Ciò chì i venditori dichjaranu hè una scalabilità faciule, ciò chì ùn dicenu micca hè chì quandu scalanu, i sistemi monolitici massivi diventanu fragili, cumplessi, instabili è caru.
A nova metrica per a scalabilità hè u numeru di spazii di nomi o clienti chì pudete serve. A metrica hè presa direttamente da iperscalers, induve i blocchi di custruzzione di almacenamiento sò chjuchi ma scala à miliardi di unità. In generale, questa hè una metrica di nuvola.
Quandu i blocchi di custruzzione sò chjuchi, sò più faciuli d'ottimisà per a sicurità, u cuntrollu di l'accessu, a gestione di pulitica, a gestione di u ciclu di vita è l'aghjurnamenti non disruptive. È, infine, assicurà a produtividade. A dimensione di u bloccu di custruzzione hè una funzione di a cuntrullabilità di a regione di fallimentu, chì hè quantu sò custruiti sistemi altamente resistenti.
A multi-tenancy hà parechje caratteristiche. Mentre a dimensione parla di cumu l'urganisazione furnisce l'accessu à i dati è l'applicazioni, si riferisce ancu à l'applicazioni stesse è a logica di l'isolamentu l'una di l'altru.
Caratteristiche di un approcciu mudernu à multi-client:
In pocu tempu, u numeru di clienti pò cresce da parechji centu à parechji milioni.
I clienti sò completamente isolati l'una di l'altru. Questu li permette di eseguisce diverse versioni di u stessu software è almacenà l'ogetti cù diverse cunfigurazioni, permessi, funzioni, livelli di sicurezza è mantenimentu. Questu hè necessariu quandu scala à novi servitori, aghjurnamenti è geografie.
L'almacenamiento hè elasticamente scalabile, e risorse sò furnite nantu à dumanda.
Ogni operazione hè cuntrullata da una API è hè automatizata senza intervenzione umana.
U software pò esse allughjatu in cuntenituri è utilizate sistemi di orchestrazione standard cum'è Kubernetes.
S3 compatible
L'API Amazon S3 hè u standard de facto per u almacenamentu di l'ughjettu. Ogni venditore di software di almacenamentu d'ughjettu pretende a cumpatibilità cun ellu. A cumpatibilità cù S3 hè binaria: o hè cumplettamente implementata o ùn hè micca.
In pratica, ci sò centinaie o millaie di scenarii di punta induve qualcosa va male quandu si usa u almacenamentu di l'ughjettu. In particulare da i fornituri di software è servizii privati. I so casi d'utilizazione principali sò l'archiviazione diretta o a copia di salvezza, per quessa, ci sò pochi motivi per chjamà l'API, i casi d'usu sò homogeni.
U software open source hà vantaghji significativi. Copre a maiò parte di i scenarii di punta, datu a dimensione è a varietà di applicazioni, sistemi operativi è architetture hardware.
Tuttu chistu hè impurtante per i sviluppatori di l'applicazioni, per quessa, vale a pena pruvà l'applicazione cù i fornituri di almacenamiento. A fonte aperta rende u prucessu più faciule - hè più faciule per capisce quale piattaforma hè adatta per a vostra applicazione. U fornitore pò esse usatu cum'è un puntu unicu di ingressu in u almacenamentu, chì significa chì risponde à i vostri bisogni.
Open source significa: l'applicazioni ùn sò micca ligati à un venditore è sò più trasparenti. Questu assicura un longu ciclu di vita di l'applicazione.
È uni pochi di più note nantu à u fonte apertu è S3.
Sè vo site una applicazione big data, S3 SELECT migliurà u rendiment è l'efficienza per un ordine di grandezza. Face questu utilizendu SQL per ricuperà solu l'uggetti chì avete bisognu da u almacenamiento.
U puntu chjave hè u supportu per e notificazioni di bucket. I notificazioni di bucket facilitanu l'informatica senza servitore, un cumpunente impurtante di qualsiasi architettura di microserviziu chì hè furnita cum'è serviziu. Siccomu l'almacenamiento d'ughjettu hè in modu efficace u almacenamentu in nuvola, sta capacità diventa critica quandu u almacenamentu di l'ughjettu hè adupratu da applicazioni basate in nuvola.
Infine, l'implementazione S3 deve supportà l'API di crittografia di u servitore Amazon S3: SSE-C, SSE-S3, SSE-KMS. Ancu megliu, S3 sustene a prutezzione di tamper chì hè veramente sicura.
Risposta à i fallimenti
Una metrica chì hè probabilmente spessu trascurata hè cumu u sistema gestisce i fallimenti. I fallimenti accadenu per una varietà di motivi, è u almacenamentu di l'ughjettu deve trattà tutti.
Per esempiu, ci hè un unicu puntu di fallimentu, a metrica di questu hè zero.
Sfortunatamente, assai sistemi di almacenamentu d'ughjettu utilizanu nodi speciali chì devenu esse attivati per u cluster per funziunà bè. Questi includenu nodi di nome o servitori di metadata - questu crea un puntu unicu di fallimentu.
Ancu induve ci sò parechji punti di fallimentu, a capacità di resistà à fallimentu catastròficu hè di primura. I dischi fallenu, i servitori fallenu. A chjave hè di creà un software pensatu per trattà u fallimentu cum'è una cundizione normale. Se un discu o un nodu falla, tali software continuarà à travaglià senza cambiamenti.
A prutezzione integrata contr'à l'eliminazione di e dati è a degradazione di dati assicura chì pudete perde quant'è parechji dischi o nodi quant'è avete blocchi di parità - di solitu a mità di i dischi. Solu allora u software ùn serà micca capaci di rinvià i dati.
U fallimentu hè raramente pruvatu sottu a carica, ma tali teste sò obligatorii. A simulazione di un fallimentu di carica mostrarà i costi totali incurru dopu à u fallimentu.
Cuerenza
Un puntu di cunsistenza di 100% hè ancu chjamatu cunsistenza stretta. A cunsistenza hè un cumpunente chjave di qualsiasi sistema di almacenamentu, ma a cuerenza forte hè rara. Per esempiu, Amazon S3 ListObject ùn hè micca strettamente coherente, hè solu coherente à a fine.
Chì significà per una coerenza stretta? Per tutte l'operazioni chì seguitanu una operazione PUT cunfirmata, deve esse u seguente:
U valore aghjurnatu hè visibile quandu leghje da ogni node.
L'aghjurnamentu hè prutettu contra a redundanza di fallimentu di node.
Questu significa chì si tira u plug à mezu à una registrazione, nunda ùn serà persu. U sistema ùn torna mai dati corrotti o obsoleti. Questa hè una barra alta chì importa in parechji scenarii, da l'applicazioni transazzione à a copia di salvezza è a ricuperazione.
cunchiusioni
Quessi sò novi metrichi di almacenamentu di l'ughjettu chì riflettenu i mudelli d'usu in l'urganisazioni d'oghje, induve u rendiment, a coerenza, a scalabilità, i domini di difetti è a cumpatibilità S3 sò i blocchi di costruzione per l'applicazioni in nuvola è l'analisi di big data. I ricumandemu d'utilizà sta lista in più di u prezzu quandu custruisce stacks di dati muderni.