Un'architettura dei dati offre una prospettiva di alto livello di come i diversi sistemi di gestione dei dati lavorano insieme. Questi includono una serie di diversi repository di data storage, come data lake, data warehouse, data mart, database, eccetera. Insieme, possono creare architetture di dati, come data fabric e data mesh, che stanno diventando sempre più popolari. Queste architetture si concentrano maggiormente sui dati come prodotti, creando una maggiore standardizzazione dei metadati e una maggiore democratizzazione dei dati tra le organizzazioni tramite API.
La sezione seguente approfondisce ognuno di questi componenti di storage e i diversi tipi di architettura dei dati:
Tipi di sistemi di gestione dei dati
- Data warehouse: un data warehouse aggrega i dati provenienti da diverse fonti di dati relazionali all'interno di un'azienda in un unico repository centrale e coerente. Dopo l'estrazione, i dati fluiscono attraverso una pipeline di dati ETL, subendo varie trasformazioni per soddisfare il modello di dati predefinito. Una volta caricati nel data warehouse, i dati vengono utilizzati per supportare diverse applicazioni di business intelligence (BI) e di data science.
- Data mart: un data mart è una versione mirata di un data warehouse che contiene un sottoinsieme più piccolo di dati importanti e necessari per un singolo team o un gruppo selezionato di utenti all'interno di un'organizzazione, come il dipartimento delle risorse umane. Poiché contengono un sottoinsieme più piccolo di dati, i data mart consentono a un reparto o a un'unità di business di scoprire insight più mirati in minor tempo rispetto a quando si lavora con il più ampio set di dati del data warehouse. I data mart sono nati originariamente in risposta alle difficoltà incontrate dalle organizzazioni nella creazione di data warehouse negli anni '90. All'epoca, integrare i dati provenienti da tutta l'organizzazione richiedeva molto codice manuale ed era un processo lungo e dispendioso. La portata più limitata dei data mart li ha resi più facili e veloci da implementare rispetto ai data warehouse centralizzati.
- Data lake: mentre i data warehouse archiviano i dati elaborati, un data lake ospita dati non elaborati, in genere nell'ordine dei petabyte. Un data lake può archiviare sia dati strutturati che non strutturati, il che lo rende unico rispetto ad altri repository di dati. Questa flessibilità nei requisiti di storage è particolarmente utile per data scientist, data engineer e sviluppatori, poiché consente loro di accedere ai dati per esercizi di data discovery e progetti di machine learning. I data lake sono stati originariamente creati in risposta all'incapacità del data warehouse di gestire il volume, la velocità e la varietà crescenti dei big data. Sebbene i data lake siano più lenti dei data warehouse, sono anche più economici in quanto richiedono una data preparation limitata o nulla prima dell'acquisizione. Oggi continuano a evolversi nell'ambito delle iniziative di migrazione dei dati al cloud. I data lake supportano un'ampia gamma di casi d'uso, perché gli obiettivi aziendali per i dati non devono essere definiti al momento della raccolta dei dati. Tuttavia, tra i più importanti troviamo l'esplorazione della data science e le attività di backup and recovery dei dati. I data scientist possono utilizzare i data lake per i proof of concept. Le applicazioni di machine learning traggono vantaggio dalla possibilità di archiviare dati strutturati e non strutturati nello stesso luogo, cosa che non è possibile utilizzando un sistema di database relazionale. I data lake possono anche essere impiegati per testare e sviluppare progetti di big data analytics. Una volta sviluppata l'applicazione e identificati i dati utili, questi possono essere esportati in un data warehouse per l'uso operativo e si può applicare l'automazione per rendere l'applicazione scalabile. I data lake possono essere utilizzati anche per il backup and recovery dei dati, grazie alla loro scalabilità a basso costo. Per gli stessi motivi, i data lake sono utili per archiviare dati "per ogni evenienza", per i quali le esigenze aziendali non sono ancora state definite. Memorizzare i dati sul momento significa renderli disponibili in futuro, quando saranno utili per nuove iniziative.
Tipi di architetture dei dati
Data fabric: un data fabric è un'architettura che si concentra sull'automazione dell'integrazione dei dati, del data engineering e della governance in una catena di valore dei dati tra fornitori e consumatori di dati. Un data fabric si basa sulla nozione di "metadati attivi", che utilizza i grafi di conoscenza, la semantica, il data mining e la tecnologia del machine learning (ML) per individuare schemi in diversi tipi di metadati (ad esempio i log di sistema, i social e altro). Poi, applica queste informazioni per automatizzare e orchestrare la catena del valore dei dati. Ad esempio, può consentire a un consumatore di dati di trovare un prodotto di dati e poi fornirglielo automaticamente. L'aumento dell'accesso ai dati tra i prodotti e i consumatori di dati porta a una riduzione dei silos di dati e fornisce un quadro più completo dei dati dell'organizzazione. I data fabric sono una tecnologia emergente con un enorme potenziale e possono essere utilizzati per migliorare la profilazione dei clienti, il rilevamento delle frodi e la manutenzione preventiva. Secondo Gartner, i data fabric riducono i tempi di progettazione dell'integrazione del 30%, i tempi di implementazione del 30% e la manutenzione del 70%.
Data mesh: un data mesh è un'architettura di dati decentralizzata che organizza i dati per dominio aziendale. Utilizzando un data mesh, un'organizzazione deve smettere di pensare ai dati come a un sottoprodotto di un processo e iniziare a considerarli come un prodotto a sé stante. I produttori di dati agiscono come proprietari dei prodotti di dati. In qualità di esperti in materia, i produttori di dati possono utilizzare la loro conoscenza dei principali consumatori dei dati per progettare API per loro. È possibile accedere a queste API anche da altre parti dell'organizzazione, garantendo un accesso più ampio ai dati gestiti.
I sistemi di storage più tradizionali, come i data lake e i data warehouse, possono essere utilizzati come più repository di dati decentralizzati per realizzare un data mesh. Un data mesh può funzionare anche con un data fabric: l'automazione del data fabric consente di creare nuovi prodotti di dati più rapidamente o di applicare la governance globale.