Data Temperature e bucket storage: ottimizza i costi di archiviazione

8 minutes Leggi
09 Marzo 2023

In un mondo sempre più interconnesso, i dati diventano continuamente più importanti. La capacità di prendere decisioni data‑driven è infatti un fattore decisivo per la competitività delle aziende. La gestione dei dati in un’organizzazione è quindi un tema di massima importanza: la definizione del data model, del paradigma da adottare, del tipo di database, e molti altri fattori possono avere un grosso impatto sulla capacità di sfruttare adeguatamente i dati.

Da tempo in Mia‑Platform insistiamo sull’importanza dei Fast Data, ovvero quei dati che devono essere aggiornati e disponibili in tempo reale 24/7. Abbiamo sviluppato Mia‑Platform Fast Data, un prodotto che permette di gestire facilmente questo tipo di dati e di costruire il proprio Digital Integration Hub, e dopo averlo migliorato con funzionalità low code adesso abbiamo introdotto un’importante novità, ossia un supporto per bucket storage.

Prima di approfondire la nuova funzionalità, però, facciamo un passo indietro e introduciamo il tema della data temperature. Questo aspetto ci permetterà infatti di spiegare meglio come funziona il bucket storage e perché l’abbiamo introdotto.

 

Che cos’è la data temperature e perché è importante

La data temperature si riferisce alla frequenza di accesso al dato: più un dato è utilizzato, più alta è la sua temperatura. Come vedremo nel dettaglio più avanti, secondo questa logica si possono suddividere i dati in tre categorie: Hot Data, Warm Data e Cold Data. Alcune organizzazioni riducono le categorie alle sole Hot e Cold Data, considerando freddi tutti i dati che non sono strettamente caldi.

Prima di proseguire è importante fare una precisazione. In letteratura gli Hot Data sono quelli salvati in RAM, mentre i Cold Data sono tutti gli altri dati archiviati su database. In questo articolo tuttavia, analizzeremo soltanto questa seconda categoria di dati. Infatti, nonostante siano archiviati su database, questi dati non sono tutti uguali: il loro utilizzo può essere molto diverso e suddiviso in ulteriori sottotemperature rispetto alla macrodivisione tra RAM e database. È quindi importante tenere a mente che la data temperature di cui parliamo in questo articolo deve essere contestualizzata all’interno dei dati salvati su database.

La data temperature non è quindi di una proprietà intrinseca del dato, ma è una qualità che gli viene assegnata in base al suo utilizzo nel tempo. Alcuni dati possono mantenere invariata la loro temperatura nel tempo, mentre altri che sono considerati Hot Data un giorno possono diventare Warm Data dopo un determinato periodo, e completare successivamente la transizione a Cold Data. A seconda del tipo di dato, si può anche avere il passaggio direttamente da Hot a Cold Data.

Perché è importante stabilire la data temperature dei propri dati? Dal momento che la temperatura dipende direttamente dalla frequenza di accesso al dato, stabilendo la corretta data temperature è possibile impiegare diversi tipi di database, ottimizzando in questo modo la capacità di storage e l’utilizzo di risorse.

 

Hot Data

Nell’ambito dei dati archiviati su database, gli Hot Data sono i dati a cui si accede e che vengono utilizzati molto di frequente. Spesso gli Hot Data sono resi disponibili in tempo reale, e pertanto hanno bisogno di essere salvati su database ad altissime prestazioni. Gli Hot Data in senso stretto sono i dati salvati in RAM, ma, come menzionato sopra, l’analisi in questione si riferisce ai dati su database.

Esempi di Hot Data sono l’inventario in real‑time di un magazzino, la posizione attuale di un veicolo, gli utenti attivi su un determinato servizio.

 

Warm Data

I Warm Data sono dati che vengono utilizzati meno frequentemente rispetto agli Hot Data, ma comunque devono essere disponibili con una certa velocità. Questo tipo di dati è generalmente salvato su database performanti, in modo da garantire l’accesso in tempi ridotti.

 

Cold Data

I Cold Data sono invece dati che vengono utilizzati di rado. Per questo motivo sono solitamente salvati su bucket storage o database meno potenti in termini di performance, ma che offrono grandi capacità di storage. I file di backup dei sistemi sono un ottimo esempio di Cold Data, in quanto devono essere conservati per ragioni di auditing e sicurezza ma vengono usati raramente e non hanno necessità di essere resi disponibili velocemente.

 

Data temperature e bucket storage

Avendo definito cos’è la data temperature e i diversi tipi di dati, risulta più semplice spiegare perché abbiamo introdotto il supporto per il bucket storage all’interno di Mia‑Platform Fast Data. Il nostro prodotto si occupa di raccogliere i dati dai vari sistemi aziendali in uso (detti anche Systems of Records o SoR), li organizza in Single Views secondo le logiche di business definite, e li rende disponibili in real‑time ai sistemi esterni. Questi dati sono per lo più Hot Data, che vengono richiesti, visualizzati e aggiornati molte volte: per questo motivo sono salvati su un database ad elevate prestazioni come MongoDB.

Una volta che questi dati si raffreddano, però, viene meno la necessità di averli salvati su supporti altamente performanti, in quanto lo spazio su questi database è generalmente limitato e costoso. Per raccogliere questi dati (che possono essere sia Warm che Cold Data) abbiamo introdotto il supporto al bucket storage, una grande novità che aiuta a ottimizzare le risorse e ridurre i costi.

 

Che cos’è un bucket storage

Un bucket storage è un contenitore di oggetti ottimizzato per la gestione di grandi quantità di dati. Non si tratta di un vero e proprio database perché la capacità di aggiornare un dato è generalmente inferiore rispetto a un database, ma offre molto più spazio di archiviazione.

Inoltre, un bucket storage è un’ottima soluzione per archiviare dati grezzi non strutturati, dando così la possibilità di rimandare la loro organizzazione in un secondo momento, laddove sia necessaria.

 

Mia‑Platform Fast Data e il supporto per bucket storage

Come funziona il supporto al bucket storage di Mia‑Platform Fast Data? Nella fase di ingestion, quando cioè i dati vengono raccolti per essere inviati alle istanze MongoDB di Mia‑Platform Fast Data, gli stessi dati vengono inviati al bucket storage in forma grezza. Il supporto introdotto consente anche di organizzare e strutturare i dati grezzi in un secondo momento rispetto alla loro scrittura: questa funzionalità permette di separare i dati grezzi da quelli strutturati, salvandoli in cartelle diverse o eventualmente anche su un secondo bucket storage.

A seconda delle esigenze, l’archiviazione può avvenire in parallelo (la scrittura su MongoDB e sul bucket storage avviene nello stesso momento tramite due azioni distinte), oppure in sequenza. In questo secondo caso la scrittura sul bucket storage avviene prima di quella su MongoDB, ma con una latenza trascurabile che non impatta le performance di Mia‑Platform Fast Data. La scelta dell’architettura in parallelo garantisce una minore latenza ma potrebbe causare problemi di inconsistenza tra i dati sul bucket storage e quelli su MongoDB, mentre l’architettura in sequenza garantisce che non ci siano inconsistenze tra i due storage ma aumenta, benché in modo trascurabile, la latenza.

Attualmente sono supportati i Bucket Cloud Storage di Google e tutti i bucket che adottano il protocollo S3, come ad esempio Amazon S3 e Oracle Object Storage.

 

I vantaggi del bucket storage

In un’ottica di Composable Architecture, il bucket storage può essere utilizzato indipendentemente da Mia‑Platform Fast Data, come uno spazio di archiviazione da utilizzare ogni qualvolta sia necessario. I principali vantaggi di un bucket storage in generale comprendono:

  • Fornisce uno spazio di archiviazione di grandi dimensioni a costi ridotti;
  • Diventa uno storico facilmente accessibile per ragioni di backup e compliance;
  • Permette di esporre in modo semplice i dati a tool di Business Intelligence (BI).

Inoltre, quando viene usato insieme a Mia‑Platform Fast Data, ci sono ulteriori vantaggi sui quali si può contare:

  • Permette di lasciare su MongoDB soltanto i dati strettamente necessari, lasciando spazio libero per altri dati;
  • Favorisce il disaccoppiamento dai Systems of Records (SoR), ovvero i sistemi da cui vengono raccolti i dati, in quanto i dati sono replicati nel bucket storage;
  • Aumenta la velocità di reingestion dei dati in Mia‑Platform Fast Data, se questa operazione fosse necessaria.

L’unico limite dei bucket storage riguarda la frequenza di aggiornamento dei dati: questa è una caratteristica generale di questo tipo di strumento, in quanto i bucket storage permettono di eseguire un numero limitato di operazioni rispetto a un database altamente performante come MongoDB. Tuttavia, il supporto introdotto in Mia‑Platform Console prevede una funzionalità che permette di mitigare questo limite: è infatti possibile raggruppare gli aggiornamenti per ogni file e applicare così una sola volta l’aggiornamento più recente, mantenendo ovviamente anche lo storico dei singoli cambiamenti.

 

Conclusione

Conoscere la data temperature dei propri dati è molto importante. Non tutti i dati infatti hanno sempre bisogno di essere archiviati su database altamente performanti: ciascun dato può essere archiviato su diversi tipi di supporto a seconda delle esigenze specifiche, ottimizzando le risorse e riducendo i costi.

Per questo motivo abbiamo introdotto il supporto al bucket storage, cioè uno spazio di archiviazione ottimizzato per raccogliere grandi quantità di dati, in modo da poter archiviare i Warm e i Cold Data su un supporto adeguato al loro utilizzo. Inoltre, grazie al bucket storage è possibile liberare spazio su Mia‑Platform Fast Data per aggiungere altri dati e ottenere un totale disaccoppiamento dai sistemi di origine.

Se ancora non hai familiarità con Mia‑Platform Fast Data leggi questo articolo per approfondire, mentre se già lo utilizzi e vuoi aggiungere questa nuova funzionalità puoi far riferimento alla documentazione.

New call-to-action
Torna all'inizio ↑
INDICE
Che cos’è la data temperature e perché è importante
Data temperature e bucket storage
Che cos’è un bucket storage
Mia‑Platform Fast Data e il supporto per bucket storage
I vantaggi del bucket storage
Conclusione