Casi d'uso degli endpoint di analisi SQL di Lakehouse

L'endpoint di analisi SQL è una superficie T-SQL ottimizzata per la lettura sopra i dati Delta in Fabric. Questo articolo spiega il carico di lavoro di data warehousing Fabric con l'endpoint di analisi SQL della casa del lago, e gli scenari per l'uso della casa del lago nel data warehousing.

Cos'è un endpoint di analytics SQL di Lakehouse?

L'endpoint di analisi SQL ti permette di interrogare i dati nel lakehouse utilizzando il linguaggio T-SQL e il protocollo TDS.

  • L'endpoint di analisi SQL espone le tabelle Delta del lakehouse come tabelle SQL che puoi consultare con T-SQL.
  • Ogni tavolo Delta proveniente da una casa sul lago è rappresentato come un unico tavolo. I dati devono essere in formato delta.
  • Ogni lakehouse ha un endpoint di analisi SQL, e ogni workspace può avere più di un lakehouse. Altri elementi Fabric - inclusi magazzini, database speculati, database SQL e Azure Cosmos DB - auto-provisionano anche un endpoint di analisi SQL, così che uno spazio di lavoro può avere più endpoint di analisi SQL rispetto a elementi lakehouse.

Non è necessario creare un endpoint di analisi SQL in Fabric. Un endpoint di analisi SQL viene creato automaticamente per ogni lakehouse, database o database con mirroring. Un endpoint di analisi SQL fornisce funzionalità leggere di data warehousing per i relativi elementi principali, completando l'architettura lakehouse del warehouse. Questa architettura consente al mirroring di Spark o di Fabric di gestire i dati in una struttura di cartelle del lakehouse che può essere visualizzata dall'endpoint di analisi SQL.

Note

In background, l'endpoint di analisi SQL usa lo stesso motore di Warehouse per gestire query SQL a bassa latenza e prestazioni elevate.

Individuazione automatica dei metadati

Un processo semplice legge i log Delta dalla /Tables cartella e garantisce che i metadati SQL per le tabelle, ad esempio le statistiche, siano sempre aggiornati. Non è necessaria alcuna azione da parte dell'utente e non è necessario importare, copiare dati o configurare l'infrastruttura. Per altre informazioni, vedere Schema generato automaticamente nell'endpoint di analisi SQL.

Scenari che la casa del lago consente per il data warehousing

In Fabric offriamo un magazzino.

Il lakehouse, con il suo endpoint di analisi SQL alimentato dal warehouse, può semplificare l'albero decisionale tradizionale di pattern di batch, streaming o architettura lambda. Insieme a un magazzino, il lakehouse consente molti scenari di analisi aggiuntivi. Questa sezione esplora come utilizzare una casa sul lago insieme a un magazzino per una strategia di analisi di livello superiore.

Analytics con lo strato d'oro della tua casa sul lago

Una strategia ben nota per l'organizzazione dei dati in un data lake è l'architettura a medaglioni. Questa strategia organizza i file in strati non elaborati (bronzo), consolidati (argento) e raffinati (oro). È possibile usare un endpoint di analisi SQL per analizzare i dati nel livello gold dell'architettura medallion se i file vengono archiviati in formato Delta Lake, anche se vengono archiviati all'esterno del Microsoft Fabric OneLake.

Usa scorciatoie in OneLake per fare riferimento alle cartelle gold negli account di archiviazione esterni di Azure Data Lake che i motori Azure Synapse Spark o Azure Databricks gestono.

È anche possibile aggiungere magazzini come aree di interesse o soluzioni orientate ai domini per un argomento specifico che può avere requisiti di analisi su misura.

Se scegli di mantenere i tuoi dati in Fabric, sono sempre aperti e accessibili tramite API, il formato Delta e, naturalmente, T-SQL.

Fai query come servizio sui tuoi tavoli Delta da Lakehouse e altri elementi da OneLake

Gli analisti, i data scientist e i data engineer potrebbero dover eseguire query sui dati all'interno di un data lake. In Fabric, questa esperienza completa è interamente basata sul modello SaaS.

OneLake è un singolo data lake logico e unificato per l'intera organizzazione. OneLake è il OneDrive per i dati. OneLake può contenere più aree di lavoro, ad esempio lungo le divisioni dell'organizzazione. Ogni elemento in Fabric rende i dati accessibili tramite OneLake.

I dati in una casa lacustre in Fabric sono fisicamente memorizzati in OneLake con la seguente struttura di cartelle:

  • La cartella /Files contiene file non elaborati e non consolidati (bronze) che i data engineer devono elaborare prima dell'analisi. I file potrebbero trovarsi in diversi formati, ad esempio CSV, Parquet, tipi diversi di immagini e altro ancora.
  • La /Tables cartella contiene dati perfezionati e consolidati (gold) pronti per l'analisi aziendale. I dati consolidati sono in formato Delta Lake.

Un endpoint di analisi SQL può leggere i dati nella cartella /tables all'interno di OneLake. L'analisi è semplice come interrogare l'endpoint di analisi SQL della casa del lago. Insieme al warehouse, ottieni anche query cross-database e la possibilità di passare senza soluzione di continuità da query di sola lettura alla costruzione di logica di business aggiuntiva sopra i dati OneLake con Fabric Data Warehouse.

Ingegneria dei dati con Spark e servizio con SQL

Le aziende basate sui dati devono sincronizzare i propri sistemi back-end e di analisi quasi in tempo reale con le applicazioni rivolte ai clienti. L'impatto delle transazioni deve riflettersi in modo accurato nei processi end-to-end, applicazioni correlate e sistemi di elaborazione delle transazioni online (OLTP).

In Fabric è possibile usare Spark Streaming o Ingegneria dei dati per curare i dati. Puoi usare l'endpoint di analytics SQL di Lakehouse per validare la qualità dei dati e per i processi T-SQL esistenti. Questo può avvenire in un'architettura a medaglione o all'interno di più strati della tua casa sul lago, offrendo dati in bronzo, argento, oro o di scenografia, curati e raffinati. È possibile personalizzare le cartelle e le tabelle create tramite Spark per soddisfare i requisiti aziendali e di ingegneria dei dati. Quando è pronto, un warehouse può servire tutte le tue applicazioni di business intelligence a valle e altri casi d'uso analitici, senza copiare dati, usare Views o perfezionare i dati tramite CREATE TABLE AS SELECT (CTAS), stored procedure e altri comandi DML / DDL.

Integrazione con lo strato d'oro della tua casa aperta sul lago

Un endpoint di analisi SQL non è limitato all'analisi dei dati solo nel lago di Fabric. Utilizzando un endpoint di analisi SQL, puoi analizzare i dati del lago in qualsiasi lakehouse utilizzando Azure Synapse Spark, Azure Databricks o qualsiasi altro motore di data engineering incentrato sul lago. È possibile archiviare i dati in Azure Data Lake Storage o Amazon S3.

Puoi sempre accedere a questa stretta integrazione bidirezionale con il lakehouse in Fabric tramite qualsiasi motore usando API aperte, il formato Delta e ovviamente T-SQL.

Virtualizzazione dei dati di data lake esterni con scorciatoie

Usa scorciatoie OneLake per fare riferimento alle cartelle gold negli account di archiviazione esterni di Azure Data Lake che i motori Azure Synapse Spark o Azure Databricks gestono, così come qualsiasi tabella Delta memorizzata in Amazon S3.

È possibile analizzare qualsiasi cartella a cui viene fatto riferimento da un collegamento da un endpoint di analisi SQL e creare una tabella SQL per i dati a cui si fa riferimento. Usare la tabella SQL per esporre i dati in data lake gestiti esternamente e abilitare l'analisi su di essi.

Questa scorciatoia funge da data warehouse virtuale che puoi utilizzare da un warehouse per ulteriori esigenze di analisi a valle oppure interrogare direttamente.

Per analizzare i dati negli account di archiviazione data lake esterni, seguire questa procedura:

  1. Creare un collegamento che faccia riferimento a una cartella nell'account Azure Data Lake Storage o Amazon S3. Dopo aver inserito i dati di connessione e le credenziali, viene mostrato un collegamento nella casa sul lago.
  2. Passa all'endpoint di analisi SQL del lakehouse e trova una tabella SQL con un nome corrispondente al nome della scorciatoia. Questa tabella SQL fa riferimento alla cartella in ADLS o S3.
  3. Eseguire una query sulla tabella SQL che fa riferimento ai dati in ADLS o S3. Usare la tabella come qualsiasi altra tabella nell'endpoint di analisi SQL. È possibile unire tabelle che fanno riferimento ai dati in account di archiviazione diversi.

Note

Se la tabella SQL non viene visualizzata immediatamente nell'endpoint di analisi SQL, attendere alcuni minuti. La tabella SQL che fa riferimento ai dati nell'account di archiviazione esterno viene creata con un ritardo.

Analizzare i dati archiviati o cronologici in un data lake

Il partizionamento dei dati è una tecnica di ottimizzazione dell'accesso ai dati nota nei data lake. Archiviare set di dati partizionati in strutture di cartelle gerarchica nel formato /year=<year>/month=<month>/day=<day>, dove year, monthe day sono le colonne di partizionamento. Questa struttura mantiene i dati cronologici separati logicamente e consente ai motori di calcolo di leggere i dati in base alle esigenze con filtri efficienti, anziché leggere l'intera directory e tutti i file e le cartelle all'interno.

I dati partizionati consentono un accesso più rapido se le query filtrano sui predicati che confrontano le colonne del predicato con un valore.

Un endpoint di analisi SQL può leggere facilmente questo tipo di dati senza alcuna configurazione necessaria. Ad esempio, è possibile usare qualsiasi applicazione per archiviare i dati in un data lake, incluso SQL Server 2022 o Istanza gestita di SQL di Azure. Dopo aver partizionato i dati e averli inseriti in un lake per scopi di archiviazione usando tabelle esterne, un endpoint di analisi SQL può leggere le tabelle Delta Lake partizionate come tabelle SQL e consentire all'organizzazione di analizzarle. Questo approccio riduce il costo totale di proprietà, riduce la duplicazione dei dati e illumina Big Data, intelligenza artificiale e altri scenari di analisi.

È anche possibile usare query di spostamento del tempo per eseguire rapidamente query sulle versioni precedenti dei dati. Il viaggio in tempo è una funzionalità a basso costo ed efficiente per eseguire query sugli stati precedenti dei dati con query T-SQL. Per un endpoint di analisi SQL di Lakehouse, il viaggio nel tempo è limitato dalle impostazioni di retention del vuoto. Per iniziare, vedere Procedura: Eseguire query usando il tempo di spostamento a livello di istruzione.

Virtualizzazione dei dati di Fabric con scorciatoie

All'interno di Fabric, le aree di lavoro consentono di separare i dati in base a requisiti aziendali, geografici o normativi complessi.

Un endpoint di analisi SQL ti permette di lasciare i dati in posizione e continuare ad analizzare i dati nel magazzino o nella casa del lago, anche in altri spazi di lavoro Fabric, tramite una virtualizzazione senza interruzioni. Ogni casa sul lago in Fabric memorizza i dati in OneLake.

I collegamenti consentono di fare riferimento alle cartelle in qualsiasi posizione di OneLake.

Ogni warehouse in Fabric memorizza i dati delle tabelle in OneLake. Se una tabella è solo aggiunta, i dati della tabella vengono esposti come i dati di Delta Lake in OneLake. Le scorciatoie ti permettono di fare riferimento alle cartelle in qualsiasi OneLake dove sono esposte le tabelle del magazzino.

Condivisione ed esecuzione di query tra più aree di lavoro

Anche se le aree di lavoro consentono di separare i dati in base a requisiti aziendali, geografici o normativi complessi, a volte è necessario facilitare la condivisione tra queste righe per esigenze di analisi specifiche.

Un endpoint di analisi SQL Lakehouse può consentire una facile condivisione dei dati tra reparti e utenti, permettendo a un utente di portare con sé la propria capacità e il proprio magazzino. Le aree di lavoro organizzano reparti, business unit o domini analitici. Utilizzando scorciatoie, gli utenti possono trovare i dati di qualsiasi magazzino o casa del lago. Gli utenti possono eseguire immediatamente analisi personalizzate dagli stessi dati condivisi. Oltre ad agevolare gli addebiti interni tra reparti e l'allocazione dell'uso, questo approccio fornisce una versione zero-copy dei dati.

L'endpoint di analisi SQL consente l'esecuzione di query su qualsiasi tabella e una facile condivisione. È possibile aggiungere controlli usando ruoli dell'area di lavoro e ruoli di sicurezza per soddisfare requisiti aziendali aggiuntivi.

Per abilitare l'analisi dei dati tra aree di lavoro, seguire questa procedura:

  1. Creare un collegamento OneLake che faccia riferimento a una tabella o a una cartella in un'area di lavoro a cui è possibile accedere.
  2. Scegli una casa sul lago o un magazzino che contenga una tabella o una cartella Delta Lake che vuoi analizzare. Quando selezioni una tabella o una cartella, appare una scorciatoia nella casa del lago.
  3. Passa all'endpoint di analisi SQL della casa del lago e trova la tabella SQL con un nome corrispondente al nome della scorciatoia. Questa tabella SQL fa riferimento alla cartella in un'altra area di lavoro.
  4. Eseguire una query sulla tabella SQL che fa riferimento ai dati in un'altra area di lavoro. È possibile usare la tabella come qualsiasi altra tabella nell'endpoint di analisi SQL. È possibile unire le tabelle che fanno riferimento ai dati in aree di lavoro diverse.

Per altre informazioni sulla sicurezza nell'endpoint di analisi SQL, vedere Sicurezza di OneLake per gli endpoint di analisi SQL.

Note

Se la tabella SQL non viene visualizzata immediatamente nell'endpoint di analisi SQL, attendere alcuni minuti. La tabella SQL che fa riferimento ai dati in un'altra area di lavoro viene creata con un ritardo.

Analizzare i dati partizionati

Il partizionamento dei dati è una tecnica di ottimizzazione dell'accesso ai dati nota nei data lake. I set di dati partizionati vengono archiviati in strutture di cartelle gerarchica nel formato /year=<year>/month=<month>/day=<day>, dove year, monthe day sono le colonne di partizionamento. I set di dati partizionati consentono un accesso più rapido ai dati se le query usano predicati che filtrano i dati confrontando le colonne del predicato con un valore.

Un endpoint di analisi SQL può rappresentare degli insiemi di dati Delta Lake partizionati come tabelle SQL e consentire di analizzarli.

Per altre informazioni ed esempi sull'esecuzione di query su dati esterni, vedere Eseguire query su file data lake esterni usando Fabric Data Warehouse o endpoint di analisi SQL. Per un esempio e un caso d'uso per interrogare file Parquet partizionati, vedi Query sui dati partizionati.

Analizza i dati nella casa sul lago, nel magazzino o nella casa degli eventi

Le pagine principali di Lakehouse e Warehouse includono l'endpoint Eventhouse come parte del menu Analizza dati con. L'endpoint Eventhouse offre un'esperienza di query basata su Eventhouse direttamente sui dati di Lakehouse e Warehouse, senza duplicazione dei dati o sincronizzazione manuale.

Screenshot del pulsante Analizza dati con espanso per visualizzare le opzioni endpoint di analisi SQL e Endpoint Eventhouse.

Quando si abilita l'endpoint Eventhouse, una Eventhouse e un database KQL vengono creati automaticamente come elementi figlio del Lakehouse o Warehouse di origine, con la sincronizzazione dello schema gestita sullo sfondo. L'endpoint riflette sempre lo schema corrente dei dati di origine, abilitando l'accesso analitico quasi in tempo reale.

Questa integrazione rende Eventhouse un'estensione naturale dell'origine dati, anziché un sistema separato da configurare e gestire. Per ulteriori informazioni sull'endpoint Eventhouse, vedere Abilitare l'endpoint Eventhouse per Lakehouse e Warehouse.