Cosa sono il block storage ed il object storage? Questa è una domanda molto importante perché va ad entrare in profondità nei concetti del cloud computing ed il suo corretto funzionamento.
Indice dei contenuti
È necessario comprendere come funzionano i prodotti che normalmente adoperiamo per poter garantirci un funzionamento sempre perfetto e qualora ve ne fosse bisogno anche la possibilità di correre ai ripari nel malaugurato caso vi fossero problematiche nel proprio server.
È interessante notare che il block storage e l’object storage sebbene siano due strumenti molto importanti questi rimangono per il grande pubblico abbastanza oscuri.
Vediamo quindi di colmare questa lacuna e scoprire questa tecnologia. Si deve tenere presente che lo storage rappresenta un problema abbastanza serio non solo perché la mole di dari che continuano ad aumentare anno dopo anno ma anche perché c’è il problema di garantire un ottimo livello di sicurezza e di integrità degli stessi.
In effetti si va a parlare di una serie di strumenti che possono andare a creare una serie di operazioni molto utile per conservare i dati nel server.
Block storage e object storage: semplicemente due elementi di un computer cloud
Per comprendere meglio come funzionano questi due strumenti, come accennato in precedenza, è necessario comprendere come funziona il cloud nello specifico.
È importante tenere presente che il cloud computing è composto da praticamente tutte le macchine di questo tipo con il loro processore, la ram, i dischi rigidi e tutte le altre periferiche.
Per esempio le piattaforme IaaS, Infrastruttura come un Servizio, adoperano il block storage e l’object storage per archiviare i dati. Ma è comunque molto importante riuscire a comprendere al meglio le differenze che intercorrono tra questi due prodotti.
La loro importanza è ancora maggiore perché ci offre la possibilità di eseguire un profilo globale di archiviazione. Un punto molto importante è rappresentato proprio da questi due formati e da come vengono adoperati.
Si nota facilmente quindi che è necessario comprendere bene quali sono le differenze tra questi due elementi in modo da poter sviluppare al meglio la politica per l’archiviazione e la protezione dei dati.
Cos’è il Block Sorage?
Dopo aver spiegato per sommi capi l’importanza dello storage nel cloud computing è necessario andare nello specifico per poter spiegare al meglio quali sono gli elementi fondamentali che vanno ad agire nello specifico.
È necessario comprendere il ruolo del block storage all’interno della propria piattaforma. Il primo elemento che salta subito agli occhi è che questi particolari dispositivi di archiviazione a blocchi forniscono lo storage di tipo raw con dimensioni fisse.
La cosa interessante sta nel fatto che ognuno di questi volumi di archiviazione possono essere adoperati in modo individuale.
Si ha quindi la possibilità di far funzionare ogni disco in modo indipendente direttamente amministrato dal sistema operativo del server.
Questo dispositivo a blocchi può essere montato dal sistema operativo ospite proprio come se si trattasse di un disco fisso.
Vi sono molti esempi di questo tipo di dispositivi come SAN, iSCSI e dischi locali in generale.
Questa tipologia di archiviazione è largamente adoperata tanto che vi sono moltissime applicazioni che usano questa tipologia di archiviazione. Di norma vengono formattate con i seguenti filesystem: EXT3, EXT4, NTFS e FAT32.
Block Storage e containers
La flessibilità intrinseca dello storage a blocchi lo rende ideale per i container.
I containers astraggono le applicazioni dai sistemi operativi, proprio come la virtualizzazione astrae i sistemi operativi dall’hardware fisico.
Con l’archiviazione a blocchi, puoi definire e avviare rapidamente i contenitori in modo da avere tutti i file di cui si necessita in pochissimo tempo.
Il trucco è proprio presente nella containerizzazione soprattutto se ci si riferisce ad un ambiente aziendale perché tutti gli host possono in modo nativo montare più blocchi.
Block Storage as a Service: una scelta molto importante
Block Storage as a Service (BSSaaS) rientra nella categoria molto più ampia di Enterprise Storage as a Service (ESaaS), in cui chi cerca l’archiviazione basata su cloud può scegliere tra archiviazione a blocchi, file o oggetti per supportare le proprie esigenze di archiviazione dei dati.
Per la maggior parte, quando si lavora con ESaaS, gli utenti dovranno anche scegliere una soluzione IaaS o PaaS e distribuire applicazioni e server direttamente nel cloud.
Quali sono le applicazioni pratiche di questo tipo di tecnologia?
La cosa interessante è rappresentata dal fatto che questa particolare tecnologia è disponibile per una serie di interessanti scopi che vanno dai database, necessitano di prestazioni I/O coerenti e con la connessione a bassa latenza, l’archiviazione per i volumi di tipo RAID, tutte le applicazioni che hanno necessità di una connessione.
Sono presenti anche i linguaggi lato server tra i quali spiccano il python ed il PHP, il corretto funzionamento di applicazioni come Oracle, SAP ed alcune Microsoft nello specifico l’Exchange e Sharepoint. Nello specifico i casi d’uso principali per l’archiviazione a blocchi sono:
- Archiviazione di database
- Archiviazione per volumi RAID
- Archiviazione dei dati per sistemi critici che influiscono sulle operazioni aziendali
- Archiviazione dei dati come file system per sistemi operativi per fornitori di software di virtualizzazione Le prestazioni relativamente veloci e affidabili dei sistemi di archiviazione a blocchi li rendono la tecnologia preferita per i database.
Per lo stesso motivo per cui l’archiviazione a blocchi funziona bene per i database, fornisce anche un buon supporto per le applicazioni aziendali: basate su transazioni, l’archiviazione a blocchi garantisce che gli utenti siano serviti in modo rapido e affidabile.
Anche i file system delle macchine virtuali (VMFS) come VMware tendono a utilizzare lo storage a blocchi a causa del modo in cui i dati vengono distribuiti su più volumi.
Cos’è l’Object Storage?
Nell’Object Storage va a rappresentare una opportunità interessante per rendere l’infrastruttura informatica decisamente più reattiva alle richieste esterne.
Il problema principalmente del Block Storage va a portare con sé una vera e propria limitazione che può essere anche molto impotante perché va ad agire direttamente sui dischi ed i volumi.
Il problema si crea in sostanza perché questi componenti sono raggiungibili unicamente se sono connessi al sistema operativo.
Questa caratteristica diventa una vera e propria limitazione poiché ne conseguono delle limitazioni nell’uso in modo anche abbastanza importanti.
Proprio per limitare questa problematica stato creato l’Object Storage andando a superare completamente tutte le limitazioni che erano presenti in precedenza.
Il trucco che è stato escogitato per questa soluzione è stato l’inserimento di API create ad hoc che permettono di richiamare i dati velocemente mantenendo comunque un certo livello di sicurezza soprattutto se non si adopera il protocollo http ma il https che per definizione possiede una chiave cifrata decisamente più pesante.
Inoltre è necessario notare che questa particolare tecnologia va a supportare in pratica tutte le tipologie di dati indifferentemente dai video alle immagini.
Non bisogna naturalmente dimenticare i file di registro, elemento estremamente importante per i server, potendo contare su un buon livello di protezione da possibili se non probabili attacchi portati avanti da hacker.
Ma soprattutto la garanzia che i dati non verranno persi. E’ chiaro che questo elemento è molto importante perché i dati in questo tipo di infrastrutture sono l’elemento più importante.
Questo sistema è in grado inoltre di duplicare su un certo numero di data center potendo adoperare una semplice interfaccia web per poter contare il massimo dell’accesso ai file.
Sicuramente questa può essere considerata un’ottima soluzione per coloro che si trovano a lavorare con una grande quantità di dati e che necessitano di scalare il sistema in modo che lo stesso supporti quantità di dati fino al petabyte.
Questa soluzione, per esempio, è molto utile per le piattaforme web che devono contenere una grande quantità di file multimediali.
Quindi la scalabilità e la flessibilità sono due caratteristiche molto importanti per lo storage ad oggetti e che quindi è riuscito ad essere la scelta principale soprattutto per tutte le compagnie che sono in procinto di passare verso le soluzioni cloud.
Il problema che questo sistema nasconde una certa complessità per ciò che concerne lo schema per la denominazione agli oggetti.
Si parla infatti di un’identificatore a 128 bit che non è propriamente appropriato per l’utente medio e l’approccio alla gestione per i metadati.
Questa soluzione potrebbe essere la gestione dei metadati complesso oppure non particolarmente adatto per alcuni casi d’uso. Sono quindi presenti una serie di applicazioni che possono rendere la vita molto più semplice.
Quali sono le caratterisitche specifiche dell’object storage?
Abbiamo già visto come questa soluzione sia molto interessante ma ha dei punti deboli per coloro che non sono particolarmente esperti.
È necessario tenere presente che in confronto alla classica archiviazione dei file in quella ad oggetti possono essere selezionati liberamente.
La cosa molto interessante è rappresentata dal fatto che ogni file possono essere indicati in base a metadati singoli.
L’object storage ha davvero caratteristiche importante andando a rendere questo strumento davvero un elemento eccezionale.
Viene infatti messo nel cassetto la tradizionale modalità di archiviazione delle informazioni con il nome, il tipo di file e la data della creazione oltre ad altri elementi che vanno a formare le informazioni dei file.
Questi possono quindi essere facilmente integrati con altri in modo da ottenere dei file con informazioni più complete.
Con quali modalità si può ottenere l’accesso ai dati con l’object storage?
L’accesso ai dati in effetti è un altro punto molto importante perché si va a stabilire una connessione con la memoria. Questa operazione è molto importante e viene effettuata tramite il protocollo HTTP, Hypertext Transfer Protocol, e con un API REST.
Questa particolare opportunità è molto utile perché va a semplificare di molto la connessione che viene stabilito tra il client e lo stesso object storage.
La forza di questa particolare caratteristica sta nel fatto che tutti i computer moderni sono in grado di gestire molto bene il protocollo HTTP poiché viene usato molto anche per il web. Ma com’è possibile interagire con la memoria?
Vi sono alcuni comandi creati ad hoc per operare sulla memoria. Si parla di comandi molto semplici che vengono adoperati per rendere questo compito per niente complicato, vediamo nello specifico quali sono e come vengono adoperati:
- PUT: mediante questo comando è possibile creare un nuovo oggetto;
- GET: è molto utile per leggere un elemento;
- DELETE: è contrapposto a PUT perché il suo compito è quello di cancellare un oggetto;
- LIST: mediante questo comando è possibile creare una lista di oggetti ed è molto interessante per coloro che operano in questo settore perché aiuta a rendere il sistema più ordinato.
Come scegliere tra Block Storage e Object Storage?
Object Storage contro Block Storage: cosa scegliere? Questi strumenti sono molto importanti soprattutto per il cloud storage che va a creare delle soluzioni informatiche molto interessanti.
Si va a parlare quindi dell’archiviazione a blocchi che, come abbiamo visto in precedenza soprattutto con l’object storage.
Questo componente riesce ad essere molto importante proprio per il fatto che va a supportare anche importanti quantità di memoria ed una scalabilità molto facile.
Quindi si va a parlare della necessità di avere a che fare con un grande numero di dati. La cosa diventa ancora più importante se si va a parlare di dati che gli utenti di una squadra devono modificare molto spesso.
Anche per ciò che concerne l’archiviazione di una raccolta di dati che però ha una certa organizzazione.
La cosa funziona anche se l’accesso deve essere molto rapida in modo da poter intervenire con la massima velocità. Questi sistemi sono molto utili anche se si ha bisogno di unità destinate all’archiviazione in modo da essere facilmente scalabili con dati che non sono strutturati.
Ciò va a rendere l’archiviazione degli oggetti molto più semplice e performante.
Entrambi gli elementi sono molto interessanti anche se come abbiamo visto in precedenza è l’object storage quello in grado di ottenere una migliore prestazione sull’archiviazione dei dati.