Che cos'è l'object storage?
L'object storage, conosciuto anche come storage basato sugli oggetti, è un'architettura di archiviazione dati progettata per gestire i dati non strutturati su larga scala. Mentre lo storage a blocchi suddivide i dati in blocchi con identificatori univoci e i file system gestiscono i dati gestendo i file in modo gerarchico, l'object storage memorizza i dati come oggetti. Ciascun oggetto, che funge da repository di dati indipendente self-contained, ha tre componenti: un identificativo unico globale utilizzato per indirizzare l'oggetto, i metadati e i dati veri e propri (definiti come payload o dati raw). I metadati contengono informazioni sul payload, ma possono anche contenere dati di sistema quali policy di protezione o metadati personalizzati.
Gli oggetti sono memorizzati con un sistema organizzativo "flat", senza cartelle o strutture gerarchiche solitamente utilizzate in un file system. Analogamente a una coppia di valori chiave nei database, l'object storage utilizza l'identificatore univoco (chiave) di ogni oggetto in riferimento al payload dei dati (valore). I metadati specifici di ciascun oggetto sono personalizzabili e possono includere attributi definiti dall'utente che contribuiscono a semplificare ricerca, query, indicizzazione e analisi dei file.
L'object storage crea namespace che permettono di accedere in modo semplice ai dati memorizzati come oggetti. In un cluster di object storage, un namespace globale forma solitamente un unico portale di accesso logico per utenti e applicazioni. L'object storage consente l'accesso ai dati tramite una varietà di protocolli, compresi S3 e HTTP(S).
Secondo IDC, entro il 2025 l'80% di tutti i dati nel mondo sarà non strutturato. Questo consente di scegliere se archiviare tutti questi dati nel file storage o nell'object storage. L'object storage viene solitamente preferito al file storage quando i dati devono essere conservati in un archivio per un lungo periodo di tempo, come nel caso di dati freddi/inattivi, backup e repliche, dati di conformità, dati analitici, file multimediali, ecc. L'object storage è significativamente più conveniente e scalabile rispetto a quello basato su blocchi e file e viene tipicamente implementato on-premises, come cloud privato o usando un modello pay-per-use su servizio cloud pubblico.
La valutazione delle soluzioni di object storage
Con Eric Burgener di IDC e gli esperti di object storage di DataCore Guarda il webinar
Le funzionalità chiave dell'object storage
Scalabilità
Uno dei motivi principali per cui le organizzazioni utilizzano l'object storage è la sua scalabilità senza precedenti. I cluster di object storage possono essere scalati da Terabyte a Exabyte e sono in grado di memorizzare miliardi di file accessibili da milioni di utenti. Invece di memorizzare i file utilizzando un file system, i documenti vengono memorizzati come oggetti in uno spazio "flat" dedicato agli indirizzi.
Disaccoppiando la gestione dei file dalla gestione dei blocchi di basso livello, ogni disco presente nel cluster di object storage partecipa al namespace e i servizi dati vengono organizzati in livelli superiori. Questo livello di separazione offre un'eccellente gestibilità su larga scala. Inoltre, la gestione estensibile dei dati basata sui metadati semplifica l'accessibilità alle informazioni. Questo rende l'object storage praticamente senza limiti nella gestione di qualsiasi quantità di dati.
Accesso distribuito
L'object storage consente l'accesso ai contenuti da parte di utenti e applicazioni tramite vari protocolli e metodi di accesso, compresi S3, HTTP(S) e REST API. L'accesso distribuito consente a più utenti in posizioni diverse di accedere contemporaneamente ai file.
Se un utente ha bisogno di eseguire una modifica a livello di oggetto, invece di modificare quello esistente ne verrà creata una nuova versione. Il numero di versioni degli oggetti che è possibile creare è spesso configurabile dall'amministratore. È inoltre disponibile una funzionalità aggiuntiva di blocco degli oggetti basata su policy che impedisce la modifica di un oggetto o di un gruppo di oggetti per un determinato periodo o a tempo indeterminato. Questo livello di flessibilità su accesso, modifica e blocco consente un vero accesso distribuito agli utenti finali e un perfetto controllo agli amministratori.
Metadati personalizzati
Nelle soluzioni di object storage, i metadati memorizzano le informazioni sui dati e vengono utilizzati per il loro recupero e la governance. L'object storage consente agli utenti di aggiungere informazioni ai metadati di un file utilizzando un qualsiasi numero di attributi personalizzati.
Questo semplifica la ricerca, l'indicizzazione e l'analisi dei contenuti. I metadati possono essere utilizzati anche per impostare policy a livello di oggetto o di bucket che definiscono come proteggere e archiviare i dati.
Durata dei dati
Mentre la disponibilità dei dati si riferisce ai tempi di uptime del sistema, la durata dei dati si focalizza sulla loro protezione a lungo termine. Le soluzioni di object storage offrono potenti funzionalità di protezione dei dati per garantirne la durata nel tempo ed eliminare i "single point of failure".
- La replica dei dati su uno o più nodi garantisce che le copie vengano replicate in modo sincrono o asincrono all'interno del sistema o esternamente su un sito di DR (Disaster Recovery). In caso di problemi, il sistema di object storage creerà automaticamente copie aggiuntive in base alla policy definita per mantenere la ridondanza dei dati. In caso di problemi al sito, le copie dei dati vengono recuperate anche dal sito di DR.
- L'erasure coding combina i dati con le informazioni di parità e poi li divide in segmenti e li distribuisce nel cluster di object storage. In caso di perdita di dati, questi vengono immediatamente ricostruiti dai segmenti sottoposti a erasure coding ripristinandone lo stato originale.
Immutabilità
Questa è la capacità della piattaforma di object storage di rendere gli oggetti immutabili, cioè impossibili da eliminare o modificare. L'immutabilità aiuta a preservare i record e a mantenere l'integrità dei dati. Quando un utente tenta di modificare un file, viene creata una nuova versione dell'oggetto, mentre quello originale viene conservato così com'è.
In caso di minaccia (per esempio un attacco ransomware) o di eliminazione accidentale o sovrascrittura dei dati, gli amministratori possono facilmente eseguire il rollback dei dati originali. Le normative di conformità richiedono inoltre che i dati vengano memorizzati su supporti non cancellabili e non riscrivibili e che ai file vengono applicati per periodi di tempo specifici dei "blocchi legali". L'immutabilità aiuta a soddisfare tutti questi requisiti e rende l'object storage conforme allo standard WORM (Write-Once-Read-Many).
Gestione intelligente dei dati
Uno dei principali impieghi tipici per l'object storage è come archivio economico; tuttavia, è molto più di uno storage “cheap and deep”. L'object storage può aiutare a gestire il ciclo di vita dei dati, dalla creazione alla modifica, eliminazione, accesso, collaborazione e protezione. L'object storage supporta la creazione di copie dei dati attraverso la replica, il blocco e la crittografia dei file, la protezione dall'eliminazione, l'applicazione di controlli di accesso, la ricerca di file con metadati avanzati, l'integrazione con le applicazioni tramite REST API e altro ancora.
Alcune soluzioni di object storage consentono lo streaming dei contenuti direttamente dal layer di storage senza doverli scaricare su un repository locale. Di solito, un'intuitiva interfaccia utente funge da portale di contenuti per consentire agli utenti di accedere ai file tramite Internet. In questo modo si amplia il tipico impiego dell'object storage, trasformandolo da semplice archivio a piattaforma completa per la gestione e la distribuzione di contenuti.
Multi-tenancy
Per condividere le risorse di un cluster con più tenant (utenti interni o abbonati esterni) può essere utilizzata un'architettura di object storage multi-tenant. Questa è un'implementazione spesso usata dai provider di servizi che ospitano risorse di storage per i loro clienti utilizzando un cluster di storage centralizzato e condiviso, sia in un cloud pubblico che in un cloud privato. Ai tenant vengono assegnati diversi livelli di autorizzazioni di accesso e controlli per accedere ai dati in base al loro livello di abbonamento. Anche all'interno di un'organizzazione, quando diversi reparti devono memorizzare e proteggere i propri dati in base a policy specifiche, è possibile adottare un deployment multi-tenant nel proprio data center.
Tra le caratteristiche principali dell'object storage multi-tenancy ci sono:
- Integrazione con soluzioni di gestione dell'identità come i sistemi AD e LDAP per implementare controlli di accesso e policy di sicurezza
- Limiti e quantificazione della capienza utilizzata per consentire la definizione e la gestione delle modalità d'uso da parte di tenant diversi
- Funzionalità di auditing e reporting per aiutare i service provider a gestire fatturazione e account
- Opzioni self-service per l'utente finale per consentire la gestione a livello di tenant dei dati con controlli di accesso granulari, autorizzazioni utente, limiti, ecc.
Test delle prestazioni dell'object storage
Utilizzando l'ambiente
Super Data Cluster del Science and Technology Facilities Council
Gli impieghi tipici più diffusi dell'object storage
Ecco alcuni dei più diffusi impieghi tipici dell'object storage che soddisfano i requisiti di diversi settori. Nelle organizzazioni e negli ambienti dei provider di servizi ci sono comunque numerose altre applicazioni dell'object storage.
Archivio attivo
Esegue l'offload dei dati dal NAS di storage primario
Storage immutabile per i backup
Protegge da perdite di dati e dai vettori di minacce
Archivio nearline
Supporta i flussi di lavoro dei media digitali sia all'interno della struttura che sul set (edge)
Storage di origine
Per i servizi OTT/VOD e la distribuzione di contenuti
Archivio per immagini sanitarie
Memorizza immagini mediche, PACS e VNA per il settore sanitario
Archivio per la gestione delle risorse digitali
Protegge gli asset, consentendo l'accesso a bassa latenza
Storage per data lake
Gestisce workload di enormi dimensioni nella ricerca, nei big data, nell'IoT e nell'AI/ML
Storage multi-tenant
Facilita le diverse offerte di servizi cloud (per esempio StaaS)
Conservazione dei dati a lungo termine
Protezione dei contenuti a prova di futuro: nessun aggiornamento massiccio necessario
Alternativa al cloud pubblico e ai nastri LTO
Ideale per lo storage dei dati online e on-premise
Le differenze tra block, file e object storage
Vediamo alcune delle principali differenze tra architettura, caratteristiche e applicabilità dello storage a blocchi, file e oggetti.
Storage a blocchi | File Storage | Object storage | |
---|---|---|---|
:Ideale per | Block storage:Dati con elevato numero di transazioni, applicazioni a bassa latenza, database e workload VM | File storage:File sharing e collaborazione distribuiti, file system scalabile | Object storage:Accesso, delivery e archiviazione di contenuti distribuiti |
:Come vengono memorizzati i dati | Block storage:Dati suddivisi in blocchi all'interno di tracce e settori del disco | File storage:File organizzati in cartelle con directory/percorso | Object storage:Oggetti self-contained |
:Struttura dei dati | Block storage:Volume, LUN | File storage:Gerarchicamente | Object storage:Chiave/Valore |
:Protocolli più diffusi utilizzati per l'accesso ai dati | Block storage:iSCSI e Fibre Channel | File storage:NFS e SMB | Object Storage:S3 e HTTP(S) |
:Supporto ai metadati | Block storage:No | File storage:Sì, metadati fissi del file system. Memorizzati separatamente dal file | Object storage:Sì, metadati personalizzati. Memorizzato con l'oggetto stesso. |
:Supporto al namespace | Block storage:No | File storage:Sì | Object storage:Sì |
:Prestazioni | Block storage:Molto elevate | File storage:Elevate | Object storage:Elevate (ottimizzate per il throughput) |
:Scalabilità | Block storage:Relativamente bassa | File storage:Elevate | Object storage:Molto elevata |
:Costo | Block storage:Molto elevate | File storage:Elevate | Object storage:Bassi |
I benefici dell'object storage DataCore Swarm
DataCore Swarm è una soluzione di object storage on-premise che semplifica radicalmente la capacità di gestire, memorizzare e proteggere i dati consentendo l'accesso S3/HTTP(S) a qualsiasi applicazione, dispositivo o utente finale. Swarm trasforma l'archivio dati in una libreria di contenuti flessibile e immediatamente accessibile che consente flussi di lavoro remoti, accesso on-demand e scalabilità massiccia.
Swarm fornisce una piattaforma per la protezione, la gestione, l'organizzazione e la ricerca dei dati su scala enterprise. Non è più necessario migrare i dati su soluzioni diverse per la conservazione, la distribuzione e l'analisi a lungo termine. Consolida tutti i file su Swarm, trova rapidamente i dati che si stanno cercando e riduce il costo totale di possesso grazie all'hardware in continua evoluzione e all'ottimizzazione delle risorse.
Iniziamo con Swarm, il Software-Defined Object Storage
Memorizza i tuoi sempre più numerosi dati su un active archive scalabile e sicuro. Basta con i folli prezzi del cloud!
Unisciti a migliaia di professionisti IT che hanno beneficiato delle soluzioni DataCore.
"La scalabilità è una delle cose più intelligenti di Swarm. Una cosa deliziosa che è stata realizzata con questa piattaforma è che quando si inserisce un nuovo nodo, questo si imposta da solo partendo da zero. Se si vuole aggiungere un nodo da 72 terabyte o petabyte basta semplicemente mettercelo."