Pool SQL serverless in Azure Synapse Analytics
Ogni area di lavoro di Azure Synapse Analytics include endpoint del pool SQL serverless che è possibile usare per eseguire query sui dati in Azure Data Lake (formati Parquet, Delta Lake, testo delimitato), Azure Cosmos DB o Dataverse.
Il pool SQL serverless è un servizio di query sui dati del data lake. Consente di accedere ai dati tramite le funzionalità seguenti:
- Una sintassi T-SQL familiare per l'esecuzione di query sul posto, senza la necessità di copiare i dati o caricarli in un archivio speciale. Per altre informazioni, vedere la sezione Supporto di T-SQL.
- Connettività integrata tramite l'interfaccia T-SQL, che offre un'ampia gamma di strumenti di business intelligence e query ad hoc, inclusi i driver più diffusi. Per altre informazioni, vedere la sezione Strumenti client. Per altre informazioni, vedere il video con un'introduzione ai pool SQL serverless di Synapse.
Il pool SQL serverless è un sistema di elaborazione dati distribuito, progettato per dati e funzioni di calcolo su vasta scala. Consente di analizzare i Big Data in pochi secondi o minuti, a seconda del carico di lavoro. Grazie alla tolleranza di errore incorporata per l'esecuzione di query, il sistema garantisce un'affidabilità elevata e alte percentuali di successo anche per query a esecuzione prolungata che coinvolgono set di dati di grandi dimensioni.
Poiché questo pool SQL è serverless, non è necessario configurare un'infrastruttura o gestire cluster. Un endpoint predefinito per questo servizio è disponibile in ogni area di lavoro di Azure Synapse, quindi è possibile iniziare a eseguire query sui dati non appena viene creata l'area di lavoro.
Non sono previsti addebiti per le risorse riservate. Vengono addebitati solo i costi dei dati elaborati dalle query eseguite e pertanto si tratta effettivamente di un modello con pagamento a consumo.
Se si usa Apache Spark per Azure Synapse nella pipeline di dati per la preparazione, la pulizia o l'arricchimento dei dati, è possibile eseguire query su qualsiasi tabella esterna Spark creata nel processo, direttamente dal pool SQL serverless. Usare Collegamento privato per inserire l'endpoint del pool SQL serverless nella rete virtuale dell'area di lavoro gestita.
Vantaggi del pool SQL serverless
Se è necessario esplorare dati nel data lake, acquisirne informazioni dettagliate o ottimizzare l'attuale pipeline di trasformazione dei dati, è possibile trarre vantaggio dall'uso del pool SQL serverless. Il servizio è indicato per gli scenari seguenti:
- Individuazione ed esplorazione di base: è possibile ragionare rapidamente sui dati in vari formati (Parquet, CSV, JSON) nel data lake, in modo da pianificare come estrarne informazioni dettagliate.
- Data warehouse logico: è possibile ottenere un'astrazione relazionale su dati non elaborati o disparati senza spostarli e trasformarli, per averne una visualizzazione sempre aggiornata. Altre informazioni sulla creazione di data warehouse logici.
- Trasformazione dei dati: un modo semplice, scalabile e a elevate prestazioni per trasformare i dati nel lake tramite T-SQL, in modo che possano essere inseriti in strumenti di business intelligence e di altro tipo o caricati in un archivio dati relazionale (database di Synapse SQL, Database SQL di Azure e così via).
Diversi ruoli professionali possono trarre vantaggio dal pool SQL serverless:
- Gli ingegneri dei dati possono esplorare il lake, trasformare e preparare i dati usando questo servizio, nonché semplificare le pipeline di trasformazione dei dati. Per altre informazioni, vedere questa esercitazione.
- I data scientist possono ragionare rapidamente sul contenuto e sulla struttura dei dati nel lake, grazie a funzionalità come OPENROWSET e l'inferenza automatica dello schema.
- Gli analisti dei dati possono esplorare i dati e le tabelle esterne Spark creati dai data scientist o dagli ingegneri dei dati usando il linguaggio T-SQL con cui hanno familiarità o i loro strumenti preferiti, che possono connettersi al pool SQL serverless.
- I professionisti di business intelligence possono creare rapidamente report di Power BI sui dati del lake e sulle tabelle Spark.
Come iniziare a usare il pool SQL serverless
L'endpoint del pool SQL serverless è disponibile all'interno di ogni area di lavoro di Azure Synapse. È possibile creare un'area di lavoro e iniziare immediatamente a eseguire query sui dati usando gli strumenti con cui si ha familiarità.
Assicurarsi di applicare le procedure consigliate per ottenere prestazioni ottimali.
Strumenti client
Il pool SQL serverless consente di usare gli attuali strumenti di business intelligence e query ad hoc di SQL per accedere al data lake. Grazie alla familiare sintassi T-SQL, è possibile usare qualsiasi strumento in grado di stabilire connessioni TDS con le offerte SQL per connettersi ed eseguire query su Synapse SQL. È possibile connettersi con Azure Data Studio ed eseguire query ad hoc oppure con Power BI per ottenere informazioni dettagliate in pochi minuti.
Supporto di T-SQL
Il pool SQL serverless offre un'area per l'esecuzione di query T-SQL che per alcuni aspetti è stata leggermente migliorata/ampliata per supportare l'esecuzione di query su dati semistrutturati e non strutturati. Inoltre, alcuni aspetti del linguaggio T-SQL non sono supportati a causa della progettazione del pool SQL serverless. Ad esempio, la funzionalità DML non è attualmente supportata.
- Il carico di lavoro può essere organizzato in base a concetti usuali:
- Database: l'endpoint del pool SQL serverless può includere più database.
- Schemi: all'interno di un database sono presenti uno o più gruppi di proprietà di oggetti denominati schemi.
- Viste, stored procedure, funzioni con valori di tabella inline
- Risorse esterne: origini dati, formati di file e tabelle
La sicurezza può essere applicata tramite:
- Account di accesso e utenti
- Credenziali per controllare l'accesso agli account di archiviazione
- Concessione, negazione e revoca di autorizzazioni per ogni livello di oggetto
- Integrazione di Microsoft Entra
Funzionalità di T-SQL supportate:
- L'intera superficie di attacco SELECT è supportata, inclusa la maggioranza di funzioni SQL
- CETAS - CREATE EXTERNAL TABLE AS SELECT
- Istruzioni DDL correlate solo alle viste e alla sicurezza
Il pool SQL serverless non ha uno spazio di archiviazione locale: nei database sono archiviati solo oggetti metadati. Di conseguenza, le funzionalità di T-SQL correlate ai concetti seguenti non sono supportate:
- Tabelle
- Trigger
- Viste materializzate
- Istruzioni DDL diverse da quelle correlate alle viste e alla sicurezza
- Istruzioni DML
Nota
Per le query del pool SQL serverless è previsto un timeout. Per altre informazioni sul timeout delle query che può influire sul carico di lavoro, vedere i vincoli di sistema del pool SQL serverless. Attualmente non è possibile modificare il timeout.
Estensioni
Per garantire un'esperienza uniforme per l'esecuzione di query sul posto su dati che risiedono nei file in data lake, il pool SQL serverless estende la funzione OPENROWSET con l'aggiunta delle funzionalità seguenti:
Esecuzione di query su più file o cartelle
Eseguire query sul formato di file PARQUET
Eseguire query sul formato DELTA
Archivio analitico di Azure Cosmos DB
Lettura di un sottoinsieme selezionato di colonne
Uso di tipi complessi e strutture di dati annidate o ripetute
Sicurezza
Il pool SQL serverless offre meccanismi per proteggere l'accesso ai dati.
Autenticazione a più fattori di Microsoft Entra e autenticazione a più fattori
Il pool SQL serverless consente di gestire a livello centralizzato le identità dell'utente di database e di altri servizi Microsoft grazie all'integrazione con Microsoft Entra. Questa funzionalità semplifica la gestione delle autorizzazioni e ottimizza la sicurezza. Microsoft Entra ID supporta l'autenticazione a più fattori (MFA) per una maggiore sicurezza di dati e applicazioni, supportando allo stesso tempo un processo Single Sign-On.
Autenticazione
Per autenticazione del pool SQL serverless si intende il modo in cui gli utenti dimostrano la loro identità quando si connettono all'endpoint. Sono supportati due tipi di autenticazione:
Autenticazione SQL
Questo metodo di autenticazione usa nome utente e password.
Autenticazione di Microsoft Entra
Questo metodo di autenticazione usa le identità gestite da Microsoft Entra ID. Per gli utenti di Microsoft Entra, è possibile abilitare l'autenticazione a più fattori. Quando possibile, usare l'autenticazione di Active Directory (sicurezza integrata).
Autorizzazione
Per autorizzazione si intendono le operazioni che l'utente può eseguire in un database del pool SQL serverless, che sono controllate dalle appartenenze ai ruoli del database e dalle autorizzazioni a livello di oggetto dell'account utente.
Se si usa l'autenticazione SQL, l'utente SQL esiste solo nel pool SQL serverless e le autorizzazioni sono limitate all'ambito degli oggetti del pool SQL serverless. L'accesso a oggetti a protezione diretta in altri servizi, ad esempio Archiviazione di Azure, non può essere concesso direttamente all'utente SQL perché esiste solo nell'ambito del pool SQL serverless. L'utente SQL deve usare uno dei tipi di autorizzazione supportati per accedere ai file.
Se si usa l'autenticazione di Microsoft Entra, un utente può accedere al pool SQL serverless e ad altri servizi, come Archiviazione di Azure, e può concedere le autorizzazioni all'utente di Microsoft Entra.
Accesso agli account di archiviazione
Un utente connesso al servizio pool SQL serverless deve essere autorizzato ad accedere ed eseguire query sui file in Archiviazione di Azure. Il pool SQL serverless supporta i tipi di autorizzazione seguenti:
Firma di accesso condiviso: fornisce accesso delegato alle risorse nell'account di archiviazione. Con una firma di accesso condiviso è possibile concedere ai client l'accesso alle risorse nell'account di archiviazione, senza condividere le chiavi dell'account. La firma di accesso condiviso offre un controllo granulare sul tipo di accesso concesso ai client a cui viene assegnata, tra cui intervallo di validità, autorizzazioni concesse, intervallo di indirizzi IP accettabile e protocollo accettabile (HTTPS/HTTP).
Identità utente, nota anche come "pass-through", è un tipo di autorizzazione in cui per concedere l'accesso ai dati si usa l'identità dell'utente di Microsoft Entra che ha eseguito l'accesso al pool SQL serverless. Prima di accedere ai dati, l'amministratore di Archiviazione di Azure deve concedere le autorizzazioni all'utente di Microsoft Entra per l'accesso ai dati. Questo tipo di autorizzazione usa l'utente di Microsoft Entra che ha eseguito l'accesso al pool SQL serverless, pertanto non è supportato per i tipi di utente SQL.
Identità dell'area di lavoro è un tipo di autorizzazione in cui si usa l'identità dell'area di lavoro di Synapse per autorizzare l'accesso ai dati. Prima di accedere ai dati, l'amministratore di Archiviazione di Azure deve concedere le apposite autorizzazioni all'identità dell'area di lavoro.
Accedere ad Azure Cosmos DB
È necessario creare credenziali a livello di server o con ambito database con la chiave di sola lettura dell'account Azure Cosmos DB per accedere all'archivio analitico di Azure Cosmos DB.
Passaggi successivi
Altre informazioni sulla connessione all'endpoint e sull'esecuzione di query sui file sono disponibili negli articoli seguenti: