SOLUZIONI IT

Come costruire un Data Lake, una guida alla scelta delle principali architetture e vendor

Quali sono le caratteristiche principali di questo strumento di archiviazione dei dati, che sta diventando sempre più strategico per le imprese che puntano sugli analytics per identificare opportunità di business. Le migliori offerte sul mercato, tra soluzioni Open Source e prodotti su licenza

Pubblicato il 20 Feb 2023

Data lake

Perché nell’ambito dei sistemi di archiviazione e gestione delle informazioni a supporto delle attività di business si sente sempre più spesso parlare di costruzione di un Data Lake? Il motivo è semplice. Si tratta di uno strumento che consente alle organizzazioni che puntano sugli analytics per identificare opportunità e minacce di agire più velocemente, grazie alla possibilità di prendere decisioni informate a partire da grandi volumi di input.

Un vantaggio enorme soprattutto quando l’obiettivo è quello di operare in real time e in ottica omnichannel: dal settore del retail a quello del manufacturing, le imprese possono infatti essere più vicine ai clienti e aumentare la produttività dei processi in funzione delle variabili di scenario, adottando modelli proattivi nel go-to-market e abilitando logiche predittive rispetto alla manutenzione dei macchinari.

Riuscendo a far convergere i dati provenienti da diverse fonti, a partire dai file di log, dai flussi multimediali, dai social media e dai dispositivi connessi a Internet, i data lake quindi rivoluzionano il modo in cui le imprese riescono a sfruttare il proprio patrimonio informativo

Che cos’è e come funziona un Data Lake

Ma esattamente cos’è un Data Lake? È un sistema di storage che conserva una grande quantità di dati grezzi nel loro formato nativo fino a quando non sono necessari per le applicazioni di analisi. Mentre un Data Warehouse tradizionale archivia i dati in tabelle e dimensioni gerarchiche, un Data Lake utilizza un’architettura orizzontale per salvare e conservare gli input, principalmente in file o oggetti.

In generale, questo approccio offre agli utenti una maggiore flessibilità nella gestione, nell’archiviazione e nell’utilizzo degli input, in una combinazione di dati strutturati, non strutturati e semistrutturati.

Parliamo di ambienti non adatti ai database relazionali, su cui si basa la maggior parte dei Data Warehouse: richiedendo uno schema rigido, sono in genere limitati all’archiviazione dei dati strutturati delle transazioni. I Data Lake supportano, invece, diversi schemi e non richiedono la definizione di alcuno schema a priori. Ciò consente di gestire diversi tipologie di dati in formati separati.

Di conseguenza, i Data Lake sono una componente chiave per abilitare diversi casi d’uso, sempre più importanti nella gestione di business digitali e omnicanale. Le aziende più innovative, infatti, li adottano e li utilizzano principalmente come piattaforma per l’analisi dei Big Data e per altre applicazioni di data science, che richiedono grandi volumi di informazioni e che prevedono tecniche di analisi avanzate, come il data mining, la modellazione predittiva e l’apprendimento automatico.

L’architettura per la costruzione di un Data Lake 

I Data Lake sono spesso associati ai sistemi Hadoop. Nelle implementazioni basate sul framework di elaborazione distribuita, i dati sono caricati nell’Hadoop Distributed File System (HDFS) e risiedono sui diversi nodi di computer di un cluster Hadoop. Sempre più spesso, però, i Data Lake vengono costruiti su servizi di Cloud Object Storage invece che su Hadoop. Anche alcuni database NoSQL sono utilizzati come piattaforme di Data Lake.

Per dare vita a un “lago di dati” si possono utilizzare diverse tecnologie, combinabili in modi differenti. Ciò significa che l’architettura varia spesso da organizzazione a organizzazione.

Bisogna inoltre precisare che non tutti i Data Lake memorizzano solo dati grezzi: alcuni set di dati possono essere filtrati ed elaborati per l’analisi quando vengono ingeriti. In tal caso, l’architettura scelta deve consentire questa operazione e includere una capacità di archiviazione sufficiente per i dati preparati. Molti di essi  integrano pure sandbox di analisi, spazi di archiviazione dedicati che i singoli data scientist possono utilizzare per lavorare con i vari oggetti.

I principi architettonici che distinguono i Data Lake dagli archivi di dati tradizionali

A prescindere dalle considerazioni appena fatte, esiste una serie di principi architettonici che distinguono i Data Lake dagli archivi di dati tradizionali. Innanzitutto, nessun dato deve essere eliminato. Tutto ciò che i sistemi di origine raccolgono può essere caricato e conservato in un “lago” se lo si desidera.

I dati, come detto, possono essere archiviati così come sono stati ricevuti dal sistema di origine e poi trasformati e inseriti in uno schema in base ai requisiti specifici di analisi, un approccio noto come schema-on-read.

Qualunque sia la tecnologia da utilizzare per l’implementazione di un Data Lake, è necessario includere altri elementi per garantire che la soluzione sia funzionale e che i dati in esso non vadano sprecati.

Occorrono una struttura di cartelle comune che preveda una serie di convenzioni rispetto alla denominazione; un catalogo di dati ricercabili per aiutare gli utenti a trovare e comprendere gli input; una tassonomia di classificazione per identificare i dati sensibili, con informazioni riguardanti la tipologia di informazioni, il contenuto, gli scenari di utilizzo e i gruppi di possibili utenti. Servono anche strumenti di profilazione dei dati, per fornire approfondimenti sulla loro classificazione e sull’identificazione dei problemi di qualità, e processi di accesso standardizzati per controllare e tenere traccia di chi li utilizza.

Proteggere in modo passivo le informazioni, mascherandole, crittografandole e abilitando sistemi di monitoraggio automatico dell’accesso non basta: bisogna anche stimolare continuamente la cultura aziendale, in modo da aumentare la consapevolezza sul corretto utilizzo dello strumento.

Costruzione di un Data Lake

Nel ricorrere a una soluzione per la costruzione di un data lake, la prima scelta da operare è quella tra l’approccio open source e l’offerta di software proprietari.

Il software open source può esserescaricato gratuitamente dai portali della Apache Software Foundation e della Linux Foundation per essere poi sviluppato e personalizzato in modo autonomo. Al contrario, i fornitori di prodotti chiavi-in-mano offrono – ovviamente  a pagamento – una moltitudine di versioni commerciali della tecnologia accompagnate da servizi evoluti di assistenza tecnica.

I fornitori di soluzioni

  • Andando in ordine alfabetico, AWS mette a disposizione delle imprese Amazon EMR e S3, e dispone di strumenti di supporto come AWS Lake Formation per la creazione di data lake e AWS Glue per l’integrazione e la preparazione dei dati.
  • La Cloudera Data Platform, d’altra parte, può essere implementata nel cloud pubblico o in ambienti ibridi con il supporto di un servizio ad hoc.
  • Fondata dai creatori di Spark, Databricks offre invece una piattaforma di Data Lakehouse basata su Cloud che combina elementi di Data Lake e Data Warehouse.
  • Dremio commercializza una piattaforma SQL Lakehouse, sulla quale è possibile progettare cruscotti di Business Intelligence per l’interrogazione interattiva di Data Lake.
  • Google Cloud Data Fusion si aggiunge a Dataproc e a Google Cloud Storage per l’integrazione dei dati, offrendo una serie di servizi per il trasferimento dei Data Lake on premise nel Cloud.
  • La piattaforma HPE GreenLake supporta ambienti Hadoop nel Cloud e on premise, con archiviazione di file e oggetti e un servizio di Data Lakehouse basato su Spark.
  • Oltre ad Azure HD Insight e Azure Blob Storage, Microsoft offre Azure Data Lake Storage Gen2, un repository che aggiunge un namespace gerarchico a Blob Storage.
  • Le tecnologie Oracle di Data Lake basate sul Cloud includono un servizio di Big Data per cluster Hadoop e Spark, un servizio di Object Storage e una serie di strumenti di gestione dei dati.
  • La piattaforma cloud-native Qubole offre funzionalità di gestione, ingegnerizzazione e governance dei dati supportando diverse applicazioni di analisi.
  • Sebbene sia nota soprattutto come fornitore di Data Warehouse in Cloud, la piattaforma Snowflake supporta anche i Data Lake e può lavorare con i dati negli Object Store in Cloud.

Valuta la qualità di questo articolo

La tua opinione è importante per noi!

Articoli correlati

Articolo 1 di 4