Premessa: la storia e la teoria che ci sta dietro
Su MokaByte stiamo pubblicando una serie di articoli scritti nello stile del cosiddetto business novel. Si tratta di un genere piuttosto diffuso nel panorama nordamericano dell’editoria specializzata, in cui si affrontano temi di tipo professionale e aziendale non con un saggio, ma con racconti o un romanzo in cui problemi, ipotesi per risolverli, soluzioni adottate e riflessioni teoriche si intrecciano alle vicende dei personaggi, alle loro azioni.
Più che spiegare un tema, si racconta una storia, allo scopo di parlare di argomenti complessi ma con un taglio leggero e vicino all’esperienza, sperando di rendere il tutto più coinvolgente per il lettore.
In questo caso, la nostra storia parla della creazione di ecosistemi digitali e di come le organizzazioni e le aziende adottino dei cambiamenti che portano allo sviluppo di tali ecosistemi digitali.
Per agevolare la comprensione della teoria inserita all’interno del racconto, abbiamo pensato di estrapolare dalla nostra narrazione i concetti teorici e di inserirli in articoli di approfondimento a sé stanti, come quello che state leggendo.
Sia gli articoli narrativi che quelli “teorici” fanno riferimento al mio lavoro di agile coach all’interno dell’azienda di consulenza e coaching per cui opero.
La crescita dei dati: una sfida imponente
Nell’attuale era digitale, i dati rappresentano una delle risorse più preziose per le aziende. L’analisi dei dati offre la possibilità di migliorare i prodotti, ottimizzare le operazioni, comprendere meglio i clienti e prendere decisioni basate su fatti concreti. Tuttavia, l’esplosione dei volumi di dati e la loro crescente complessità stanno rendendo sempre più difficile gestire efficacemente queste preziose informazioni.
Le strutture di gestione dei dati tradizionali, come i data warehouse centralizzati, stanno risentendo della pressione di queste sfide. Questi sistemi, pur avendo avuto successo in passato, non sono più in grado di tenere il passo con l’evoluzione delle esigenze delle aziende. Stiamo assistendo a ritardi nello sviluppo, a problemi di scalabilità, a silos di dati e a una generale mancanza di agilità. È in questo contesto che emerge il concetto di Data Mesh.
Data Mesh: una visione rivoluzionaria
Nel suo libro Data Mesh [1], Zhamak Dehghani introduce una visione radicalmente nuova della gestione dei dati. Il Data Mesh affronta direttamente le sfide che le organizzazioni devono fronteggiare nell’era dei big data, proponendo un modello di gestione dei dati che è scalabile, resistente e altamente efficace.
Il Data Mesh rompe con l’approccio monolitico tradizionale, optando invece per un modello decentralizzato. Al posto di un singolo, gigantesco data warehouse, il Data Mesh suggerisce di avere molteplici “mesh” di dati, ciascuno gestito da un team di dominio specifico.
I principi fondamentali del Data Mesh
Nel suo libro, Dehghani delinea quattro principi fondamentali del Data Mesh.
Domain-Oriented Decentralized Data Ownership and Architecture
I dati dovrebbero essere gestiti da team responsabili di specifici domini di business. Questo principio sposta la responsabilità della gestione dei dati dai team di dati centralizzati a quelli di dominio, promuovendo una maggiore comprensione e utilizzo dei dati.
Data as a Product
I dati sono trattati come prodotti, con i team di dati che agiscono come “proprietari” del prodotto. Questi team sono responsabili della qualità dei dati, della governance, della privacy e della sicurezza.
Self-Serve Data Infrastructure as a Platform
Questo principio enfatizza l’importanza di avere un’infrastruttura dati che consente a tutti i team di utilizzare autonomamente i dati secondo le proprie esigenze. Questo facilita l’accesso ai dati, aumentando l’agilità e l’innovazione.
Federated Computational Governance
La governance dei dati è distribuita tra i diversi team di dati. Questo principio facilita la conformità alle normative, la sicurezza dei dati e la responsabilità, senza sovraccaricare un singolo team.
L’applicazione del Data Mesh: esempi pratici
Per illustrare come questi principi si traducono in pratica, esaminiamo due esempi.
Esempio 1: e-commerce
Un’organizzazione di e-commerce potrebbe avere vari team focalizzati su differenti domini di business, come il marketing, la logistica e il servizio clienti. Secondo l’approccio del Data Mesh, ciascun team gestirebbe i propri dati, responsabilizzandosi per la qualità, la sicurezza e la privacy. Questo permette a ciascun team di rispondere rapidamente alle esigenze del business, senza dover dipendere da un entità centralizzata per i dati.
Esempio 2: azienda biomedica
Un’azienda di tecnologia medica potrebbe utilizzare il Data Mesh per gestire i dati sensibili dei pazienti. I team di dati potrebbero essere dislocati in vari reparti, come la ricerca, lo sviluppo del prodotto e il servizio clienti, ciascuno responsabile per i propri dati. La piattaforma di infrastruttura dati self-service permette a ciascun team di utilizzare i dati per le proprie esigenze, mentre la governance computazionale federata assicura che i dati siano gestiti in modo conforme e sicuro.
Data Mesh e DDD: una differenza fondamentale
Il Data Mesh e il Domain-Driven Design (DDD) sono entrambi approcci rivoluzionari nella gestione dei dati, ma c’è una differenza fondamentale tra i due.
Il Domain-Driven Design, come suggerisce il nome, è un approccio alla progettazione del software che si concentra sui “domini”, o aree di interesse, all’interno di un’organizzazione. DDD si prefigge di creare sistemi software che riflettano la complessità e l’interconnessione di questi domini, utilizzando un linguaggio comune tra sviluppatori ed esperti del dominio.
Il Data Mesh, d’altra parte, estende questo concetto al campo dei dati. Mentre DDD si concentra sulla progettazione del software, il Data Mesh si concentra sulla gestione dei dati. Come DDD, anche il Data Mesh vede l’organizzazione divisa in diversi domini di competenza. Tuttavia, anziché concentrarsi su come progettare il software per ciascun dominio, il Data Mesh si preoccupa di come i dati vengono generati, gestiti e utilizzati all’interno di ciascun dominio.
In sostanza, il Data Mesh applica il concetto di responsabilità di dominio dei dati, una visione in cui i dati non sono più gestiti centralmente, ma piuttosto distribuiti attraverso l’organizzazione, con i team di dominio che diventano responsabili della gestione dei dati correlati alle loro aree di competenza.
Questa decentralizzazione è voluta per risolvere problemi come la latenza, la difficoltà di manutenzione e le limitazioni di scalabilità che affliggono le architetture di dati tradizionali.
Un approccio sociotecnico
L’adozione del Data Mesh non è solo un cambiamento tecnologico, ma richiede anche un cambiamento culturale all’interno delle organizzazioni. È necessario favorire una mentalità di collaborazione tra i team, promuovere la responsabilizzazione dei team di dominio per la gestione dei dati e implementare una governance efficace.
Per questo si parla di approccio “sociotecnico”, perché accanto agli aspetti tecnologici, anche la componente organizzativa e “sociale” dell’azienda diventa cruciale nella implementazione di Data Mesh.
Conclusione
Il Data Mesh rappresenta una prospettiva rivoluzionaria nella gestione dei dati per le organizzazioni moderne, sebbene si basi su idee che sono già in circolo da parecchi anni. I principi del Data Mesh, come la decentralizzazione della proprietà dei dati, il trattamento dei dati come prodotto e l’infrastruttura dati self-service consentono un migliore utilizzo dei dati, promuovendo l’agilità e l’innovazione.
Alla luce delle sfide sempre crescenti che le aziende devono affrontare nella gestione dei dati, l’approccio del Data Mesh si presenta come una soluzione promettente. Implementare i principi del Data Mesh richiede un impegno e una comprensione approfondita, ma può portare a una trasformazione significativa nella gestione dei dati e nella crescita delle aziende nell’era digitale.
Riferimenti
[1] Zhamak Dehghani, Data Mesh: Delivering Data-Driven Value at Scale. O’Reilly Media, 2022
[2] Joydeep Ghosh, Data Mesh: A Paradigm Shift in Data Platform Architecture. Medium, 2020
https://martinfowler.com/articles/data-mesh-principles.html
[3] Benjamin McIlroy et al. Beyond the Data Lake: An Introduction to the Data Mesh. ThoughtWorks Technology Radar, 2020
https://www.thoughtworks.com/radar/techniques/data-mesh
[4] Denise Chen, The Rise of Data Mesh: Managing Data at Scale. Harvard Business Review, 2021
https://hbr.org/2021/07/the-rise-of-data-mesh
[5] Raj Baburajan, Data Mesh: The Next Evolution in Data Architecture. Towards Data Science, 2021
https://towardsdatascience.com/data-mesh-the-next-evolution-in-data-architecture-4a7237f42f3f