Databricks SQL è ora generalmente disponibile su AWS e Azure.
Presentato in anteprima al Data + AI Summit 2020 Europe, Databricks SQL consente di gestire un'architettura lakehouse multi-cloud che offre le prestazioni di un data warehousing con i costi di un data lake. La nostra vision è offrire agli analisti di dati uno strumento semplice e piacevole con cui ottenere e condividere informazioni dettagliate dal proprio lakehouse, grazie a un'interfaccia utente SQL appositamente creata e a un supporto di prim'ordine per i più diffusi strumenti di BI.
Questo blog è il primo di una serie su Databricks SQL che mira a illustrare le innovazioni che introduciamo costantemente per realizzare questa visione: prestazioni, facilità d'uso e governance. Questo blog tratterà le recenti ottimizzazioni delle prestazioni come parte di Databricks SQL per:
<a href="https://www.databricks.com/resources/ebook/rise-data-lakehouse?itm_data=performancedatabrickssql-blog-riselakehousebook" target="_blank">Scopri perché le lakehouse sono l'architettura dei dati del futuro</a> con il padre del data warehouse, Bill Inmon.</p><h2>Prestazioni in condizioni reali oltre alle query di grandi dimensioni</h2><p>La release iniziale di Databricks SQL ha offerto da subito notevoli vantaggi in termini di prestazioni (fino a 6 volte il rapporto prezzo/prestazioni) rispetto ai data warehouse in cloud tradizionali, secondo il benchmark TPC-DS su Scale da 30 TB riportato di seguito. Considerando che il TPC-DS è un benchmark standard di settore definito dai fornitori di data warehousing, siamo davvero orgogliosi di questi risultati.</p><figure><a href="https://www.databricks.com/wp-content/uploads/2021/08/sql-perf-blog-img-1.png" data-lightbox><img class="size-full wp-image-164737" style="width:512px;" src="https://www.databricks.com/wp-content/uploads/2021/08/sql-perf-blog-img-1.png" alt="La release iniziale di Databricks SQL ha offerto notevoli vantaggi in termini di prestazioni, fino a 6 volte il rapporto prezzo/prestazioni, rispetto ai data warehouse in cloud tradizionali secondo il benchmark TPC-DS su Scale da 30 TB." height="329"></a><p> Rapporto prezzo/prestazioni TPC-DS da 30 TB (minore è meglio)</p></figure><p>Sebbene questo benchmark simuli bene query di grandi dimensioni come i carichi di lavoro ETL o i carichi di lavoro di analisi approfondita, non copre tutto ciò che eseguono i nostri clienti. Ecco perché negli ultimi mesi abbiamo lavorato a stretto contatto con centinaia di clienti per fornire prestazioni veloci e prevedibili per i carichi di lavoro di analisi dei dati reali e le query di dati SQL.</p><p>Mentre oggi rendiamo ufficialmente disponibile l'anteprima, siamo molto entusiasti di condividere alcuni dei risultati e dei miglioramenti delle prestazioni che abbiamo ottenuto finora.</p><h2>Scenario 1: carichi di lavoro di analitiche altamente concorrenti</h2><p>Lavorando con i clienti, abbiamo notato che è comune che i carichi di lavoro di analisi ad alta concorrenza vengano eseguiti su set di dati di piccole dimensioni. Intuitivamente, questo ha senso: gli analisti di solito applicano filtri e tendono a lavorare con dati recenti più che con dati storici. Abbiamo deciso di rendere più veloce questo caso d'uso comune. Per ottimizzare la concorrenza, abbiamo utilizzato lo stesso benchmark TPC-DS con un fattore di scala molto più piccolo (10 GB) e 32 stream simultanei. Quindi, abbiamo 32 bot che inviano continuamente query al sistema, il che simula un numero molto più grande di utenti reali perché i bot non fanno pause tra l'esecuzione delle query.</p><p>Abbiamo analizzato i risultati per identificare e rimuovere i colli di bottiglia e abbiamo ripetuto questo processo più volte. Dopo centinaia di ottimizzazioni, abbiamo triplicato la concorrenza. Databricks SQL ora supera le prestazioni di alcuni dei migliori data warehouse in cloud, sia per le query di grandi dimensioni che per quelle di piccole dimensioni con un numero elevato di utenti.</p><figure><a href="https://www.databricks.com/wp-content/uploads/2021/08/Databricks-SQL-Perf-Gain-Blog-img-2.png" data-lightbox><img class="size-large wp-image-163664" style="width:1024px;" src="https://www.databricks.com/wp-content/uploads/2021/08/Databricks-SQL-Perf-Gain-Blog-img-2-1024x588.png" alt="Databricks SQL offre prestazioni migliori di alcuni dei migliori data warehouse in cloud, non solo per le query di grandi dimensioni, ma anche per le query di piccole dimensioni con molti utenti. " height="588"></a><figcaption>Query TPC-DS da 10 GB/ora con 32 stream concorrenti (un valore più alto è migliore)</figcaption></figure><h2>Scenario 2: Gestione intelligente dei carichi di lavoro</h2><p>Tuttavia, i carichi di lavoro reali non riguardano solo query di grandi o piccole dimensioni. In genere includono un mix di query di piccole e grandi dimensioni. Pertanto, anche le funzionalità di accodamento e bilanciamento del carico di Databricks SQL devono tenerne conto. Ecco perché Databricks SQL utilizza un sistema a doppia coda che dà la priorità alle query di piccole dimensioni rispetto a quelle di grandi dimensioni, poiché gli analisti in genere si preoccupano più della latenza delle query brevi rispetto a quelle lunghe.</p><figure><a href="https://www.databricks.com/wp-content/uploads/2021/08/Databricks-SQL-Perf-Gain-Blog-img-3.png" data-lightbox><img class="size-full wp-image-163665" style="width:861px;" src="https://www.databricks.com/wp-content/uploads/2021/08/Databricks-SQL-Perf-Gain-Blog-img-3.png" alt="Databricks SQL utilizza un sistema a doppia coda che dà la priorità alle query di piccole dimensioni rispetto a quelle di grandi dimensioni, poiché gli analisti in genere si preoccupano più della latenza delle query brevi rispetto a quelle lunghe. " height="387"></a><p> Accodamento e bilanciamento del carico di query miste con code doppie</p></figure>
È comune che alcune tabelle in una lakehouse siano composte da molti file, ad esempio in scenari di streaming come l'ingestione di dati IoT, quando i dati arrivano in modo continuo. Nei sistemi legacy, il motore di esecuzione può impiegare molto più tempo a elencare questi file che a eseguire effettivamente la query! I nostri clienti ci hanno anche detto di non voler sacrificare le prestazioni per la freschezza dei dati.
Siamo orgogliosi di annunciare l'inclusione di IO asincrono e altamente parallelo in Databricks SQL. Quando si esegue una query, Databricks legge automaticamente i blocchi di dati successivi dall'archivio cloud mentre il blocco corrente viene elaborato. Questo aumenta notevolmente le prestazioni complessive delle query su file di piccole dimensioni (di 12 volte per file da 1 MB) e anche i casi d'uso di "cold data" (dati non memorizzati nella cache).

Benchmark dello scenario di letture altamente parallele su file di piccole dimensioni (n. di righe scansionate/sec) (un valore più alto è migliore)
Una volta calcolati i risultati della query, l'ultimo miglio consiste nell'accelerare il modo in cui il sistema fornisce i risultati al client, in genere uno strumento di BI come PowerBI o Tableau. I data warehouse in cloud legacy spesso raccolgono i risultati su un nodo leader (o driver) e li trasmettono in streaming al client. Questo rallenta notevolmente l'esperienza nel tuo strumento di BI se si recuperano più di qualche megabyte di risultati.
Ecco perché abbiamo reinventato questo approccio con una nuova architettura chiamata Cloud Fetch. Per risultati di grandi dimensioni, Databricks SQL scrive i risultati in parallelo su tutti i nodi compute nell'archiviazione cloud e quindi invia l'elenco dei file utilizzando URL pre-firmati al client. Il client può quindi scaricare in download in parallelo tutti i dati dall'archiviazione cloud. Siamo lieti di annunciare un miglioramento delle prestazioni fino a 10 volte negli scenari reali dei clienti! Stiamo collaborando con i più diffusi strumenti di BI per abilitare automaticamente questa funzionalità.

Questi sono solo alcuni esempi delle ottimizzazioni delle prestazioni e delle innovazioni introdotte in Databricks SQL per offrirvi prestazioni SQL best-in-class sul vostro data lake, pur mantenendo i vantaggi di un approccio aperto. Quindi, come funziona?

Delta Lake open source è la base di Databricks SQL. È il formato di archiviazione dati aperto che porta il meglio dei sistemi di data warehouse nei data lake, con transazioni ACID, provenienza dei dati, versioning, Data Sharing e così via, per dati strutturati, non strutturati e semistrutturati.
Il cuore di Databricks SQL è Photon, un nuovo motore vettorizzato nativo di Databricks scritto per eseguire più velocemente i carichi di lavoro SQL. Leggi il nostro blog e guarda Radical Speed for SQL Queries on Databricks: Photon Under the Hood per saperne di più.
E, ultimo ma non meno importante, abbiamo lavorato a stretto contatto con un gran numero di fornitori di software per assicurarci che i team di dati (analisti, data scientist e sviluppatori SQL) possano utilizzare facilmente i loro strumenti preferiti su Databricks SQL. Abbiamo semplificato la connessione, l'acquisizione dei dati e l'autenticazione tramite single sign-on, aumentando al contempo la velocità grazie ai miglioramenti delle prestazioni relativi alla concorrenza e alle query brevi di cui abbiamo parlato in precedenza.
Questo è solo l'start, poiché prevediamo di continuare ad ascoltare i feedback e ad aggiungere ulteriori innovazioni al servizio. Databricks SQL sta già apportando un enorme valore a molte organizzazioni come Atlassian o Comcast e non vediamo l'ora di ricevere anche il tuo feedback!
Se sei già un utente di Databricks, puoi iniziare a usare Databricks SQL oggi stesso consultando la nostra guida introduttiva per Azure Databricks o AWS. Se non sei ancora un utente Databricks, visita databricks.com/try-databricks per iniziare una prova gratuita.
Infine, se desideri saperne di più sulla piattaforma Databricks Lakehouse platform, guarda il nostro webinar – gestione dei dati, il buono, il brutto, il cattivo. Inoltre, offriamo addestramento online su Databricks SQL per un'esperienza pratica e workshop personalizzati. Contatta il tuo rappresentante di vendita per saperne di più. Ci piacerebbe sapere come usi Databricks SQL e come possiamo rendere ancora più semplice la BI e le analitiche dei dati sul tuo data lake.
Guarda il keynote e la demo di DAIS qui sotto
Produto
June 12, 2024/11 min de leitura
Produto
September 12, 2024/8 min de leitura


