Pubblicato in precedenza su information-age.com.
Sia il data lake che il data warehouse all'interno di cloud hanno i loro vantaggi. Sebbene i data lake consistano in lagune non organizzate e prive di categorie, sono ottimi per gli scienziati dei dati per analizzare diversi tipi di dati contemporaneamente.
I due tipi di archiviazione dei dati si differenziano anche per gli strumenti a cui è possibile accedere.
"In generale, per quanto riguarda Redshift, Snowflake, Azure, SQL Data Warehouse, una delle cose più importanti quando si parla di data warehouse è l'accessibilità agli strumenti che sono disponibili oggi e con cui le persone hanno familiarità", ha dichiarato Craig Stewart, CTO di SnapLogic.
"Può trattarsi di qualcosa come Microstrategy o Tableau, oppure di qualcosa come AWS Insights o Microsoft Power BI, tutti in grado di parlare in SQL con quell'archivio dati.
"È proprio questo che differenzia il data warehouse dal data lake. L'accessibilità a questi strumenti, così come la capacità di interrogazione in forma SQL, rende il tutto più democratico, in modo che chiunque sia in grado di usare SQL possa usare queste cose, mentre se si parla di un data lake, si ha un insieme molto più diversificato di funzionalità, le API per gestire i file come Parquet, eccetera. Questo è molto più aperto e generalmente tende a richiedere una conoscenza molto più approfondita".
Differenze di capacità
Secondo Stewart, il modo migliore per archiviare i dati dipende dal fornitore utilizzato.
"Le cose che Amazon e Microsoft stanno facendo con S3 e i diversi file system che Amazon ha prodotto, è interessante che la piattaforma Microsoft Azure abbia ora tre diversi file system, che confondono un po' gli utenti, ma quello che stanno facendo è iterare i file system per dare la migliore funzionalità per quello che le persone stanno cercando di fare".
"Quindi, nel contesto di un data warehouse, l'ultimo file system, Azure Data Lake Storage Gen2, è particolarmente adatto al data lake e all'accesso che si deve avere da elementi come Spark, per ottenere le migliori prestazioni.
"L'aspetto positivo del mondo Amazon è che l'S3 è stato coerente per molti anni, quindi non c'è stato bisogno di troppe iterazioni. Stanno fornendo alcune funzionalità aggiuntive, aggiornamenti alla sicurezza e cose che si possono iterare, ma non un cambiamento totale dell'API come quello che ha avuto l'ambiente Azure. Ma ovviamente, oltre a questo, è una questione di formato di archiviazione.
"Sicuramente nel mondo dei data warehouse, Parquet è diventato il formato preferito per la sua natura compatta e, se partizionato, per la velocità relativamente elevata che si può ottenere".
Vantaggi di un data warehouse cloud
Il CTO di SnapLogic ha poi individuato due vantaggi in particolare nell'utilizzo delle piattaforme di data warehouse cloud .
"In primo luogo, si tratta di una devoluzione di ciò che facevamo alcuni anni fa quando cercavamo di scaricare le query dai sistemi transazionali aziendali, ovvero ciò che chiamiamo 'query offloading'", ha detto Stewart. "Prendiamo i dati e li mettiamo da un'altra parte, in un altro database, in modo da poterli interrogare senza impattare sul sistema operativo.
"Ora tutto questo è scomparso. I database on-premise utilizzano ora i data warehouse cloud . Questo è ciò che le persone cercano di fare, e trovano che questo offra loro un valore".
Il secondo vantaggio offerto dal data warehouse cloud , secondo Stewart, riguarda la sua scalabilità.
"Invece di dover costruire l'intera scala che si desidera in qualsiasi momento, come si faceva una volta, ora i data warehouse di cloud hanno la capacità di scalare on-demand", ha affermato.
"Quando vado a fare il mio resoconto di giornata, settimana o fine mese e ho bisogno di più forza da applicare a questo, posso farlo per il periodo di ore in cui voglio farlo, e per il resto del mese posso ridimensionarlo a livelli di tipo business as usual".
"Questo offre ai clienti innanzitutto un vantaggio in termini di costi, ma anche la possibilità di non bruciare più tutti quei combustibili fossili per alimentarli. La scalabilità elastica di cloud si sta realizzando nel mondo dei data warehouse di cloud in modo più significativo rispetto alla maggior parte degli altri settori".
Le sfide
Naturalmente, la gestione di un data warehouse cloud non è priva di difficoltà, e non si tratta solo dei livelli inferiori di diversità dei dati rispetto ai data lake.
Una sfida affrontata da Stewart è stata quella dei costi legati allo spostamento dei dati su cloud.
"C'è l'idea che si possa spostare tutto in cloud", ha spiegato. "È possibile, ma c'è un costo associato, senza dubbio, non solo in termini di spostamento dei dati in quell'ambiente, ma anche di mantenimento in quell'ambiente".
"Uno dei vantaggi di un data lake rispetto a un data warehouse cloud è che il data lake è molto più incentrato sull'archiviazione passiva rispetto al data warehouse cloud , in cui si provvede attivamente alla manutenzione delle diverse tabelle.
"Quando si cerca di trovare il giusto equilibrio, un data warehouse cloud costerà molto di più del semplice storage di base, e capire l'equilibrio tra ciò che dovrei mettere nel mio data warehouse e ciò che dovrei tenere solo nello storage, e il vantaggio di spostare i dati su richiesta nel data warehouse cloud ".
Una seconda sfida, per il CTO di SnapLogic, deriva dall'interrogazione dei dati e dalla comunicazione tra IT e decisori.
"Utilizzando Redshift Spectrum, le tabelle esterne vengono essenzialmente definite nel data warehouse cloud , ma quando si esegue una query, in realtà, in background, viene eseguita anche una query su questi file nativi, senza essere conservata direttamente in memoria", ha affermato Stewart.
"Quindi, capire qual è l'equilibrio tra questi elementi è una parte importante del data warehouse cloud e, dal punto di vista di Snaplogic, il modo in cui si ottengono i dati è la sfida che stiamo affrontando, facendo sì che questo compito possa essere svolto dalla line of business piuttosto che dal team IT, e credo che questo sia un aspetto importante.
"Se all'interno di un'organizzazione vogliono essere in grado di essere agili, ottenere i dati interrogabili e utilizzabili in un breve lasso di tempo, hanno bisogno di quella capacità di dire 'Non possiamo aspettare che l'IT sposti i nostri dati perché l'IT ha generalmente un arretrato e si occupa della gestione quotidiana del business, piuttosto che dei processi più agili che la linea di business sta cercando di ottenere per essere in grado di fare queste cose, come cambiare le linee di prodotto, cambiare i prezzi, ed essere in grado di capire queste cose'".