Un numero sempre maggiore di dati viene trasferito e generato a livello globale come mai prima d'ora. Gli analisti di IDC prevedono che entro il 2025 la quantità di dati globale sarà pari a 163 zettabyte. Si tratta di un aumento di oltre il 1000% dai 16,1 ZB di dati del 2016.
Le ragioni di questa enorme crescita dei dati sono diverse.
Dispositivi e fonti stanno generando molti più dati rispetto a quanto avveniva in precedenza, i sistemi integrati e i dispositivi dell'Internet of Things raccolgono i dati e li trasferiscono alle applicazioni e soluzioni per Big Data per analisi in tempo reale. La tendenza attuale di utilizzare i dispositivi mobili e le piattaforme di social media oltre allo shopping online e l'utilizzo di ogni tipo di applicazione, ovunque e in qualunque momento, sta producendo ogni giorno grandi quantità di dati. Inoltre, le aziende stanno attraversando una fase di trasformazione nell'attività di fornitura dei dati ai propri clienti, al fine di soddisfare la crescente richiesta di informazioni e dati in tempo reale come mai prima d'ora.
Secondo una nuova previsione di Gartner, entro il 2020, più della metà dei principali processi e sistemi di business includerà alcuni elementi dell'IoT (Internet of things, Internet delle cose) nella propria organizzazione. A causa di ciò, la quantità di dati generati, trasferiti e analizzati dalle applicazioni di Big Data (e che dovranno essere archiviati on-premise oppure off-premise) crescerà enormemente.
Per questo è cresciuta drasticamente la richiesta del management e dei rappresentanti dei reparti IT di soluzioni storage che siano in grado di gestire e archiviare, per lunghi periodi di tempo, una maggiore quantità di contenuti digitali, rispetto a quanto avveniva in precedenza.
Tuttavia, non è questione solo della maggior quantità di dispositivi storage ora necessari da un punto di vista hardware (come ad esempio hard disk, SSD o SSHD), ma occorre anche un adeguato file system in grado di gestire questa crescita dei Big Data. Questo perché anche se non tutti i dati vengono archiviati sui dispositivi di storage, lo sono sicuramente i dati più importanti e i risultati delle analisi. Questo comporta una maggiore richiesta di spazio storage. Inoltre, gran parte di questa richiesta di storage verrà gestita dalle imprese sia internamente sia facendo ricorso ai servizi Cloud, tramite Amazon S3 o Microsoft Azure.
Il vecchio concetto dello storage con file storage e storage a blocchi non funzionerà in futuro per questa crescita dei dati, né per le imprese né per i fornitori di servizi Cloud. La soluzione per la futura archiviazione di queste grandi quantità di dati è lo storage a oggetti (chiamato anche storage basato su oggetti).
Quali sono le differenze e cosa rende lo storage a oggetti più adatto a gestire l'esplosione dei dati rispetto alle soluzioni precedenti?
Per comprendere i vantaggi offerti dallo storage a oggetti, occorre per prima cosa analizzare le precedenti tecnologie, file storage e storage a blocchi, dato che sono molto diverse.
Le differenze tra file storage, storage a blocchi e storage a oggetti
Il file storage e lo storage a blocchi sono metodologie utilizzate per archiviare i dati su sistemi storage NAS e SAN.
Su un sistema NAS, lo storage è presentato come file system di rete. Quando i dispositivi sono collegati a un sistema NAS (Network Attached Storage), viene visualizzato un file system montabile e gli utenti possono accedere ai propri file con diritti di accesso adeguati. Per questo un sistema NAS deve gestire i privilegi utente, il blocco dei file e altre misure di sicurezza, in modo che diversi utenti possano accedere ai file. L'accesso al sistema NAS è gestito tramite protocolli NFS e SMB/CIFS. Come per qualsiasi server o soluzione storage, un file system è responsabile del posizionamento dei file nel sistema NAS. Ciò funziona molto bene per centinaia di migliaia o perfino milioni di file, ma non per miliardi di file.
Lo storage a blocchi funziona in modo simile, ma a differenza della tecnologia file storage in cui i dati sono gestiti a livello di file, in questo caso i dati vengono archiviati in blocchi. Diversi blocchi (per esempio in un sistema SAN) formano un file. Un blocco consiste in un indirizzo e l'applicazione SAN ottiene il blocco, se effettua una SCSI-Request a questo indirizzo. A questo punto l'applicazione storage decide dove devono essere archiviati i blocchi di dati all'interno del sistema e su quale specifico disco o supporto di storage. L'applicazione storage decide anche come combinare i blocchi e come accedervi. I blocchi in una SAN non dispongono di metadati che sono correlati al sistema storage o all'applicazione. In altre parole: i blocchi sono segmenti di dati senza descrizione, associazione né proprietario. Viene tutto gestito e controllato dal software SAN. Per questo i sistemi SAN e lo storage a blocchi sono spesso utilizzati per applicazioni che richiedono ottime prestazioni come i database o per transazioni, perché è possibile accedere, modificare e salvare i dati.
Entrambi i metodi di archiviazione dei dati hanno funzionato bene per anni. Perché c'è quindi la necessità di un'altra tecnologia? Perché entrambe le soluzioni devono implementare delle funzionalità per i diritti di accesso degli utenti in modo da poter apportare modifiche ai dati.
Ciò che osserviamo è che molti dei dati prodotti sono “murati” o dati non strutturati. Contenuti o materiali che non verranno più modificati. Ed è in questo caso che entra in gioco lo storage a oggetti.
Gli oggetti nello storage a oggetti sono "dati in bundle" (un file) con i corrispondenti metadati. Questo oggetto ottiene un ID univoco (identificatore), che viene generato indipendentemente dal contenuto del file e dai metadati. Le applicazioni identificano l'oggetto tramite questo ID. I numerosi oggetti all'interno di un sistema di storage a oggetti sono archiviati nei dischi di storage disponibili. Nella sua forma pura, lo storage a oggetti può salvare "solo" una versione di un file (oggetto). Se un utente apporta una modifica, un'altra versione dello stesso file viene archiviata come un nuovo oggetto. Per questo motivo uno storage a oggetti è un'opzione perfetta per una soluzione di backup o archiviazione. Oppure, per esempio, per le soluzioni di storage in cui sono archiviate grandi quantità di video o filmati che vengono solo visualizzati ma non modificati, come per esempio i siti di streaming online o i video su youtube.com.
La differenza principale con le altre soluzioni consiste nel fatto che gli oggetti sono gestiti tramite la stessa applicazione che supporta lo storage a oggetti. Ciò significa che non è necessario un vero file system, è un'opzione obsoleta. Un'applicazione che utilizza lo storage a oggetti invia una richiesta alla soluzione per la posizione in cui archiviare l'oggetto. All'oggetto viene quindi assegnato un indirizzo all'interno dell'enorme spazio storage e viene salvato dall'applicazione stessa.
Considerata la semplicissima gestione dei dati (senza un reale file system), le soluzioni di storage a oggetti possono essere scalate in verticale in modo molto più semplice rispetto ai sistemi di file storage o di storage a blocchi. È sufficiente aggiungere dei dischi alla soluzione e non sono più necessarie altre attività di gestione per ottenere più spazio storage. Si tratta di un grande vantaggio, in particolare in momenti di crescita esponenziale dei dati.
Pertanto, lo storage a oggetti è una soluzione perfetta per enormi quantità di dati e quindi molto utilizzata da grandi fornitori di servizi cloud, come Amazon, Google e altri.