Oggi le grandi realtà enterprise e le PMI acquisiscono, preparano e analizzano quantità di dati sempre più importante, provenienti da una grande varietà di fonti. Per semplificare loro la vita, sono nati i software di data virtualization, capaci di aggregare in maniera molto rapida i dati provenienti da fonti multiple, rendendoli disponibili in uno storage unificato di natura logica.

La data virtualization riduce, e in alcuni casi elimina del tutto, la necessità di disporre di una copia dei dati originali, condizione invece necessaria ad esempio nei tradizionali processi ETL (Extract, Transform and Load). In questo modo, le aziende possono ottenere una visibilità molto elevata dei dati di cui dispongono, a fronte di significativi risparmi in termini di tempi e costi per quanto concerne le operazioni necessarie a garantire la loro disponibilità agli utenti finali.

Vediamo cos’è la data virtualization, come funziona, quando viene utilizzata e quali sono i principali vantaggi per le aziende che la implementano nel proprio workflow di gestione dei dati. Chiuderemo la rassegna citando alcune tra le principali piattaforme di data virtualization, prodotte e distribuite da brand specializzati in questo specifico frangente.

Cos’è la data virtualization

La data virtualization è un approccio alla gestione dei dati (data management) che consente di acquisire dati provenienti da più fonti e renderle disponibili in tempo reale come se fossero a tutti gli effetti disponibili attraverso un’unica fonte. In altri termini, la virtualizzazione dei dati rende superflua, ai fini dell’utilizzo, conoscere la posizione in cui i dati si trovano all’origine, o la loro tipologia, in quanto va a creare un’unica rappresentazione dei dati provenienti da più fonti, senza doverli in alcun modo copiare, spostare o modificare nel formato.

I principali software di data virtualization consentono di aggregare fonti di dati strutturati e non strutturati, per consentirne la visualizzazione attraverso una dashboard unificata, supportando funzioni specifiche, in grado di sfruttare i metadati presenti nei file, rendendo tuttavia trasparente all’utente finale tutta la complessità derivante dalla natura del dato stesso, come il formato file o le caratteristiche del sistema di gestione dei dati in cui è fisicamente conservato.

A titolo esemplificativo, tra i principali utilizzi della data virtualization possiamo sintetizzare:

  • Migliorare la comprensione dei processi complessi, aggregando dati e informazioni provenienti da varie fonti, provenienti da realtà anche del tutto differenti tra loro;
  • Monitoraggio e analisi dei risultati di business in tempo reale;
  • Potenziamento delle funzioni di ricerca sui dati correlati;
  • Disponibilità dei dati per il test e il deploy delle applicazioni cloud native;
  • Modernizzazione delle applicazioni, quando si sceglie di effettuare la migrazione in cloud del tradizionale software legacy;
  • Supporto delle procedure che richiedono, per convenienza o normativa, la tracciabilità sullo storico dei dati coinvolti;
  • Tutti i processi che vedono la possibilità di monetizzare grazie ai dati, rendendoli disponibili nei servizi che li impiegano.

Data virtualization vs data federation

Nella letteratura informatica, soprattutto nei riferimenti commerciali, i vendor e i distributori talvolta utilizzano indistintamente i termini data virtualization (virtualizzazione dei dati) e data federation (federazione dei dati). Per quanto siano accomunate da diversi dettagli, le due definizioni non si equivalgono, in quanto differiscono in alcuni obiettivi.

Le tecnologie di federazione dei dati mirano ad aggregare dati provenienti da varie fonti e consentirne la visibilità attraverso un unico pannello di controllo. La virtualizzazione dei dati fa per certi versi le stesse cose, ma il suo principale significato risiede nel rendere trasparente il processo all’utente finale, nascondendo qualsiasi dettaglio di natura tecnica sull’origine e la tipologia del dato.

Per quanto non si tratti, all’atto pratico, di una differenza sostanziale, la corretta adozione di data virtualization e data federation andrebbe facendo esclusivamente riferimento a quanto appena esposto.

Come funziona

In termini di funzionamento, un software di data virtualization agisce come un middleware per consentire ai dati archiviati in vari sistemi di essere aggregati e integrati in maniera virtuale, senza alcuna modifica sui file originali. Si tratta pertanto di piattaforme che si connettono con le varie fonti di dati in maniera del tutto agnostica, per consentire agli utenti autorizzati di accedere ai dati mediante un unico pannello di controllo unificato. Tali piattaforme agevolano in maniera significativa anche il ruolo della governance dei dati, in quanto consentono il totale controllo degli accessi e delle autenticazioni, e molto spesso consentono di farlo in maniera più economica rispetto ai tradizionali sistemi di directory degli utenti, in quanto si riferiscono ad una condizione semplificata rispetto al contesto generico, riferita soltanto ai dati aggregati.

I vantaggi

Una recente ricerca svolta condotta da Forrester Consulting per conto di Denodo, una delle principali soluzioni di data virtualization diffuse sul mercato, ha rivelato come alcune aziende che hanno implementato questa disciplina all’interno dei propri processi, siano riuscite ad ottenere un ritorno dell’investimento (ROI) fino al 408% in soli tre anni.

Tale ordine di grandezza sorprende, soprattutto in prima battuta, ma fino ad un certo punto, se consideriamo come la consapevolezza media delle aziende nei confronti dei dati sia cresciuta a partire dalla pandemia in avanti, dovendo fare di necessità virtù per dare continuità ai loro business. Il successo della data virtualization è stato senza dubbio favorito dalle circostanze e costituisce l’ulteriore riprova che le aziende, nel contesto del loro percorso di trasformazione digitale, stanno diventando sempre più data driven.

Lo studio svolto da Forrester Consulting risulta particolarmente rappresentativo in quanto ha coinvolto quattro dei principali mercati che implementano significativamente i dati digitali all’interno dei loro processi: manufacturing, finance, real estate e life sciences. Oltre la dato più sorprendente, relativo al ROI, l’indagine ha rivelato altre circostanze molto favorevoli alla data virtualization, come la riduzione del time-to-revenue pari all’83%, per via di una maggior efficienza dei processi legati alla visibilità dei dati, con una contestuale riduzione del 67% in merito all’effort necessario per la data preparation (preparazione dei dati), estremamente coerente con la riduzione del 65% del tempo investito nei processi ETL, fino al caricamento dei dati sui loro sistemi di gestione, come i data warehouse.

Dal momento che la data virtualization è il risultato di un’aggregazione virtuale dei dati, le aziende possono risparmiare cifre importanti anche per quanto concerne gli strumenti di integrazione. Alcune realtà hanno stimato una cifra che arriva fino a 300mila dollari all’anno, che può essere investita altrove o ricadere direttamente nel generale aumento dei profitti.

La visione unificata dei dati offerta dalle tecnologie di data virtualization consente dunque di semplificare la gestione complessiva, con ulteriori risparmi dovuti al minor carico di attività delle risorse presenti nel reparto IT e degli specialisti dei dati (data engineer, data scientist, data analyst, ecc.).

L’impiego di tecnologie di Intelligenza Artificiale e Machine Learning consente alla data virtualization di essere molto efficiente anche nella qualità della rappresentazione dei dati, offrendo funzionalità semantiche nel data catalog, nella data preparation e nel data modeling, riducendo ulteriormente la complessità relativa alla gestione dei dati, se confrontati con una tradizionale processo ETL.

Forrester Consulting ha isolato quattro principali vantaggi nell’impiego della data virtualization:

  • Flessibilità e agilità dell’organizzazione: la data virtualization ovvia numerose criticità in merito all’integrazione dei dati, essendo del tutto esente da qualsiasi operazione di copia / spostamento / modifica dei file, che continuato ad essere conservati nei loro sistemi di origine, preoccupandosi soltanto di rendere disponibili i dati attraverso una visione unificata. I tradizionali processi ETL invece, per svolgere un’operazione simile, effettuano una replica dei dati che preparano.
  • Soddisfazione dei dipendenti: La semplicità con cui la data virtualization rende possibile disporre e visualizzare i dati, in maniera del tutto trasparente alla complessità tecnologica che ne unifica la visione, consente ai dipendenti di lavorare meglio, portando a compimento i progetti in tempi inferiori, a fronte di una qualità spesso più elevata. I data scientist, attraverso l’impiego di un software di data virtualization, possono costruire i loro modelli logici in tempi molto più contenuti, risparmiando sia nelle fasi di data preparation che nelle pure e semplici ricerche necessarie per individuare i dati necessari per un determinato progetto. L’accesso ai dati mediante un unico pannello di controllo è una comodità a cui pochi, dopo aver toccato con mano i vantaggi che comporta, riescono a rinunciare.
  • Soddisfazione dei clienti: se gli addetti ai lavori riscontrano nella data virtualization una win-win situation, secondo Forrester non vanno in alcun modo trascurati i benefici diretti ed indiretti dei clienti finali, che possono disporre di servizi più efficienti per reagire in maniera più consapevole agli imprevisti e finalizzare le loro attività in tempi inferiori, realizzando ritorni più vantaggiosi.
  • Compliance, sicurezza e governance: se i vantaggi precedentemente elencati risultano in qualche modo il risultato di una maggior efficienza dei processi, altrettanto importanti sono i benefici che i clienti possono ottenere in termini di rispetto delle normative sul trattamento e la conservazione dei dati (GDPR), oltre ad un complessivo miglioramento della sicurezza e della governance dei dati stessi. La data virtualization consente infatti di gestire in maniera estremamente puntuale le autorizzazioni degli utenti e dei dispositivi che accedono ai dati all’interno di un’organizzazione, applicando automaticamente le policy definite dagli amministratori.

Oltre ai benefici in termini di business identificati da Forrester Consulting nella sua analisi sul mercato della data virtualization, ci sentiamo di aggiungere alcuni vantaggi oggettivi, se analizzati da un punto di vista tecnologico:

  • Accesso a qualsiasi fonte di dati: grazie ai connettori che consentono di aggregare i dati dalle fonti più disparate, a prescindere dalla loro tipologia, operazione ben più gravosa e complessa se condotta mediante le procedure tradizionali di data preparation;
  • Trasformazione dei dati: le principali applicazioni di data virtualization consentono disponibili i dati nel formato più utile in funzione delle esigenze operative, risparmiando all’utente finale qualsiasi operazione sui file originali;
  • Trasformazione dei dati non relazionali: Se molti database hanno una natura di tipo relazionale, sono sempre più diffusi i database di tipo non relazionale. I tool di data virtualization consentono di aggregare anche i dati, strutturati e non strutturati, conservati nei database NoSQL;
  • Semplificazione delle interfacce d’uso: i software di data virtualization rendono disponibili i dati aggregati da varie fonti attraverso un unico pannello di controllo, personalizzabile con semplici strumenti visuali. In pochi istanti, sia gli specialisti dei dati che gli sviluppatori tradizionali possono disporre dei dati e delle informazioni necessarie per svolgere le loro mansioni;
  • Performance delle query: le query svolte mediante gli strumenti di data virtualization sono mediamente più veloci rispetto a quelle dei sistemi tradizionali, in quanto questi software, durante la fase di aggregazione, virtualizzano per l’appunto i dati mediante il caching delle loro strutture. In presenza di grandi quantità di dati da analizzare, il caching può generare vantaggi in termini di riduzione dei tempi delle query anche molto rilevanti;
  • Abbattimento dei silos: mediante l’aggregazione dei dati da varie fonti, la data virtualization consente di unificare quei dati che all’origine possono appartenere ai cosiddetti data silos, noti per essere scarsamente accessibili e fruibili al di fuori della linea di business che li ha prodotti;
  • GUI data modeling: la trasformazione dei dati può risultare un processo oltremodo complesso, richiedendo la programmazione di alcune operazioni. I principali software di data virtualization dispongono di tool che consentono di modellare i dati attraverso tool di programmazione visuale, no code e low code, evitando agli utenti di ricorrere alla scrittura di codice attraverso i tradizionali linguaggi di programmazione.

Gli strumenti per fare data virtualization

Gli strumenti di data virtualization più diffusi sul mercato sono prodotti e distribuiti dai big tech e da alcuni brand specializzati in questo tipo di soluzioni. Oltre ai colossi come IBM, SAP, Oracle, Microsoft e Red Hat, ritroviamo infatti prodotti come il già citato Denodo, TIBCO Data Virtualization, Actifio Sky e Informatica PowerCenter.

Denodo

Denodo può essere eseguito in locale sui server on-premise o negli ecosistemi cloud Microsoft Azure e AWS e si avvale di un sistema di elaborazione del caching nella memoria che consente di ottimizzare in maniera dinamica la performance delle query.

L’interfaccia di Denodo garantisce la disponibilità degli strumenti necessari agli utenti finali e agli admin, ad esempio per quanto concerne la selezione delle fonti di dati e la gestione delle autenticazioni.

Denodo è compatibile con gli standard OAuth 2.0 Security Assertion Markup Language, OpenAPI e Open Data Protocol e può essere eseguito anche nei container Docker.

TIBCO Data Virtualization

TIBCO Data Virtualization si distingue per il supporto ad una grande varietà di fonti e tipologie di dati ed è disponibile su Microsoft Azure, AWS e Google Cloud. TIBCO risulta molto completo nelle sue funzioni, nell’ambito della modellazione e della trasformazione dei dati, oltre all’ottimizzazione delle query.

Tra le funzioni che lo caratterizzano ritroviamo la sua gestione della directory aziendale, che semplifica notevolmente la condivisione e il riutilizzo dei dati da parte degli utenti che vi accedono, grazie a specifici tool per la ricerca e la classificazione dei dati stessi.

Actifio Sky

Actifio Sky è una soluzione di data virtualization concepita per essere eseguita come macchina virtuale su VMware e Hyper-V, oltre ad essere disponibile per gli ecosistemi cloud di Microsoft, Amazon, Google, Oracle, IBM e del colosso cinese Alibaba. Actifio Sky si differenzia dalle principali piattaforme di data virtualization in quanto consente la copia dei file, anziché limitarsi ad aggregarli a livello logico.

Actifio Sky consente infatti agli utenti autorizzati di effettuare una copia dei dati virtualizzati, attraverso semplici ed intuitive procedure self service, impedendo tuttavia che le fonti originali vengano irrimediabilmente compromesse, attraverso una soluzione proprietaria di security and compliance.

Operando direttamente sulle copie dei dati aggregati, Actifio Sky dispone anche di una soluzione di disaster recovery, da utilizzare per recuperare i dati in modalità point-in-time, a partire dalle proprie copie, abbattendo drasticamente il recovery time rispetto alle soluzioni tradizionali, oltre a lasciare totalmente immutati i data storage originali.

Informatica PowerCenter

La nostra breve rassegna esemplificativa dei prodotti distribuiti da brand specializzati nella data virtualization si chiude con Informatica PowerCenter, una soluzione focalizzata soprattutto sugli aspetti relativi alla trasformazione dei dati, grazie ad una serie di comodissimi preset che, a partire dai connettori ai tipi di dati più diffusi, consentono di eseguire automaticamente una notevole varietà di trasformazioni. Informatica PowerCenter automatizza anche le procedure di validazione dei dati, rendendo disponibili agli utenti la possibilità di eseguire i test senza dover scrivere una singola riga di codice.