Data Lake: cos’è, a cosa serve e come si differenzia dal Data Warehouse

Business People Analyzing Stock Market Min

Per molto tempo, I Data Warehouse (DWH) hanno rappresentato la principale architettura di Business Intelligence per la gestione dei dati utilizzati nei processi decisionali. Grazie ad un Data Warehouse, è possibile raccogliere l’intero patrimonio dati dell’azienda in un unico punto, mantenendo dati di alta qualità, evitando errori e imprecisioni, e conservando lo storico, in modo che sia a disposizione dei dipendenti e consultabile in tempo reale senza dover sovraccaricare di richieste il reparto IT.

Tuttavia, con l’avvento dell’era dei Big Data, molte più imprese necessitano di architetture in grado di conservare volumi di dati di enormi dimensioni, che spesso includono anche dati non strutturati come immagini, video e file audio. L’insieme di questi dati, strutturati e non strutturati, può raggiungere facilmente dimensioni che superano i diversi Terabyte (TB) di storage e non essere quindi utilizzabile attraverso gli strumenti convenzionali. In tale contesto infatti, i Data Warehouse, ottimi strumenti per la gestione dei dati di business “tradizionali” come ad esempio vendite, clienti e prodotti, potrebbero rivelarsi totalmente inadeguati per gestire dati con volumi notevoli o con caratteristiche che mutano molto rapidamente nel tempo. Per sopperire a tali problemi ecco quindi l’emergere di un nuovo tipo di architettura: il Data Lake.

Che cos’è un Data Lake?

Possiamo definire il Data Lake come una particolare tipologia di repository di informazioni che ha la capacità di archiviare, direttamente nel loro formato nativo, set di dati di grandi dimensioni, di varia tipologia e anche non strutturati (ossia non rappresentabili in come tabelle). Il termine “lake” non è infatti causale, poiché tende a identificare un flusso di dati al suo stato, per così dire, naturale.

I Data Lake offrono dunque una visualizzazione dei dati non ancora elaborata per uno scopo specifico, e che tale rimarrà fino a che il dato non sarà oggetto di una specifica query che lo coinvolge. I dati presenti in un Data Lake sono quindi trasformati esclusivamente al momento della loro analisi attraverso il cosiddetto “schema-on-read”.

È anche importante ricordare che i Data Lake non prevedono nessuna rimozione, trasformazione o filtraggio dei dati prima che venga eseguito il loro storage, e che non esiste alcun vincolo temporale per l’analisi dei dati: essi possono infatti essere utilizzati più volte.

Il principale vantaggio del Data Lake è quindi quello di consentire ai Data Scientist di accedere alle informazioni così come sono per poi analizzarle direttamente in loco, ossia senza necessità di spostare i dati in un altro sistema.

Questa repository di informazioni deve disporre di una governance e dovrà inoltre essere manutenuta in modo costante perché i dati restino sempre accessibili e fruibili. Diversamente, ci si troverebbe di fronte a quella che in gergo viene definita una “data swamp”, ossia una palude di informazioni inservibili.

Le quattro fase di gestione dei dati all’interno di un Data Lake sono le seguenti:

 

  1. Data Ingestion e Storage: identifica la capacità di acquisire dati in batch o real time e quella di conservare/accedere a dati grezzi, semi-strutturati o strutturati nel loro formato originale.
  2. Data Processing: identifica la capacità di lavorare sui dati non strutturai così da renderli pronti per l’analisi con procedure standard, ma anche quella di ingegnerizzare nuove soluzioni di estrazione di valore dei dati.
  3. Data Analysis: identifica la capacità di creare appositi modelli per l’estrazione di informazioni dai dati, sia in tempo reale che su base periodica regolare.
  4. Data Integration: identifica la capacità di collegare la piattaforma di Data Lake ad applicativi che ne consentano l’interrogazione ed estrazione dei dati in formati specifici.

 

L’architettura di un Data Lake, che potrà essere on-premises o su cloud, è tipicamente “piatta”, con dati non strutturati, semi-strutturati o strutturati provenienti dalle fonti più diverse. Sarà inoltre molto scalabile (arrivando fino agli exabyte) perché, a monte, è sempre complesso anticipare l’esatta mole di dati che il Data Lake dovrà trattenere.

 

Data Lake e Data Warehouse: due concetti molto diversi

Data Lake e Data Warehouse non sono sinonimi ma, al contrario, termini che identificano concetti differenti e anche obiettivi molto diversi. Questi due termini hanno solamente un punto un comune, ossia l’essere entrambi repository di storage in cui raccogliere i dati utilizzati per le analisi.

Diversamente dal Data Lake, però, il Data Warehouse offre un modello di dati già strutturato e progettato per i report, mentre il Data Lake archivia dati non strutturati e non ancora definiti, e che dovranno essere elaborati prima di passare a un Data Warehouse, dove la struttura è definita in modo rigoroso (“schema-on-write”).

In termini di applicazione, il Data Lake viene utilizzato prevalentemente dai Data Scientist e Analyst che hanno necessità di effettuare ricerche e analisi su dati non strutturati, applicando di volta in volta i filtri e le metodiche più diverse. Al contrario, i dati presenti su un Data Warehouse tendono a essere oggetto di analisi da parte di utenti aziendali e analisti di business che li utilizzeranno per reportistiche più standard.

Un’altra sostanziale differenza tra un Data Lake e un Data Warehouse consiste nell’hardware utilizzato per lo storage: più economico e di largo consumo per il primo, più dispendioso e complesso per il secondo.

 

Ti serve una consulenza?

Se hai bisogno di una consulenza dedicata su uno o più servizi da noi offerti, non esistare a scriverci.

Contattaci subito

 

I vantaggi del Data Lake

Un Data Lake non è soltanto altamente accessibile e semplice da aggiornare, con costi limitati e storage distribuito che può anche essere espanso su cloud laddove necessario: esistono infatti ulteriori vantaggi garantiti da questo sistema di repository condiviso.

Vediamo insieme i principali.

  • Ampliamento delle informazioni accessibili: grazie a un set potenzialmente illimitato di tipologie di dati. La ricerca all’interno di un Data Lake fa infatti riferimento a tutti i dati disponibili, a prescindere dalla loro sorgente.
  • Riduzione dei costi di archiviazione: diversamente dai Data Warehouse, per i quali dovranno essere previsti in anticipo i diversi utilizzi dei dati e le varie modalità di analisi, il Data Lake offre uno spazio virtualmente infinito grazie a metodiche di conservazione delle informazioni su file system distribuiti.
  • Abbattimento dei costi di consolidamento: il consolidamento dei dati su Data Lake ha costi ridotti perché, grazie ai file system distribuiti, il sistema si trasforma in uno scale-out storage potenzialmente illimitato.
  • Condivisione dell’accesso ai dati: gli insight ottenuti da un Data Lake sono a disposizione di tutti, ossia accessibili a chiunque abbia i permessi (Governance) grazie a una vista unificata.
  • Time-to-market ridotto: diversamente dai progetti di ampliamento dei database, che possono richiedere tempi molto dilatati, il Data Lake offre sempre un accesso immediato e in real-time ai dati.

 

Per approfondire:

Andrea Bergonzi

Andrea Bergonzi

Sono laureato in Economia, Finanza e Mercati Internazionali. Prima di entrare nel mondo della Data Science ho ricoperto il ruolo di analista dei mercati finanziari e research editor. Dal 2020 sono membro di Dataskills, dove mi occupo di Predictive Analytics e Business Intelligence.

Comments are closed.

Iscrivi alla newsletter














    Dichiaro di aver letto ed accetto l’informativa sulla privacy

    Andrea Bergonzi

    Andrea Bergonzi

    Sono laureato in Economia, Finanza e Mercati Internazionali. Prima di entrare nel mondo della Data Science ho ricoperto il ruolo di analista dei mercati finanziari e research editor. Dal 2020 sono membro di Dataskills, dove mi occupo di Predictive Analytics e Business Intelligence.