Condividi tramite


Gestione dei carichi di lavoro

Si applica a: Endpoint di analisi SQL e Warehouse in Microsoft Fabric

Questo articolo descrive l'architettura e la gestione del carico di lavoro dietro il data warehousing in Microsoft Fabric.

Elaborazione dati

L'endpoint di analisi di Warehouse e SQL condivide la stessa architettura di elaborazione sottostante. Man mano che i dati vengono recuperati o inseriti, sfrutta un motore distribuito creato per dati di piccole e grandi dimensioni e funzioni di calcolo.

Il sistema di elaborazione è serverless in quanto la capacità di calcolo back-end aumenta e riduce in modo autonomo per soddisfare le esigenze del carico di lavoro.

Diagramma del motore SQL.

Quando viene inviata una query, il front-end SQL esegue l'ottimizzazione delle query per determinare il piano migliore in base alle dimensioni e alla complessità dei dati. Dopo aver generato il piano, viene assegnato al motore DQP (Distributed Query Processing). DQP orchestra l'esecuzione distribuita della query suddividendola in query più piccole eseguite nei nodi di calcolo back-end. Ogni query di piccole dimensioni è denominata attività e rappresenta un'unità di esecuzione distribuita. Legge i file da OneLake, unisce i risultati di altre attività, gruppi o ordini di dati recuperati da altre attività. Per i processi di inserimento, scrive anche i dati nelle tabelle di destinazione appropriate.

Quando i dati vengono elaborati, i risultati vengono restituiti al front-end SQL per il servizio all'utente o all'applicazione chiamante.

Elasticità e resilienza

La capacità di calcolo back-end trae vantaggio da un'architettura di provisioning rapido. Anche se non esiste alcun contratto di servizio per l'assegnazione di risorse, in genere i nuovi nodi vengono acquisiti entro pochi secondi. Con l'aumentare della domanda di risorse, i nuovi carichi di lavoro usano la capacità con scalabilità orizzontale. Il ridimensionamento è un'operazione online e l'elaborazione delle query non viene interrotta.

Diagramma che mostra il provisioning rapido delle risorse.

Il sistema è a tolleranza di errore e se un nodo diventa non integro, le operazioni in esecuzione nel nodo vengono ridistribuite ai nodi integri per il completamento.

L'endpoint di analisi SQL e warehouse offre capacità con burstable che consente ai carichi di lavoro di usare più risorse per ottenere prestazioni migliori e di usare lo smoothing per offrire sollievo ai clienti che creano picchi improvvisi durante i periodi di picco, mentre hanno una grande capacità inattiva inutilizzata. Smoothing semplifica la gestione della capacità distribuendo la valutazione del calcolo per garantire che i processi dei clienti vengano eseguiti in modo uniforme ed efficiente.

Pianificazione e resourcing

L'utilità di pianificazione dell'elaborazione delle query distribuite opera a livello di attività . Le query vengono rappresentate all'utilità di pianificazione come grafico aciclico diretto (DAG) di attività. Questo concetto è familiare agli utenti di Spark. Un DAG consente il parallelismo e la concorrenza come attività che non dipendono l'una dall'altra possono essere eseguite simultaneamente o fuori ordine.

Quando arrivano le query, le attività vengono pianificate in base ai principi FIFO (First-In-First-Out). Se è presente una capacità inattiva, l'utilità di pianificazione potrebbe usare un approccio "più adatto" per ottimizzare la concorrenza.

Quando l'utilità di pianificazione identifica l'utilizzo di risorse, richiama un'operazione di ridimensionamento. Il ridimensionamento viene gestito in modo autonomo e la topologia back-end aumenta man mano che aumenta la concorrenza. Poiché l'acquisizione dei nodi richiede alcuni secondi, il sistema non è ottimizzato per prestazioni di sottosecondo coerenti delle query che richiedono l'elaborazione distribuita.

Quando la pressione diminuisce, la topologia back-end riduce e rilascia nuovamente la risorsa nell'area.

Isolamento inserimento

Si applica a: magazzino in Microsoft Fabric

Nel pool di calcolo back-end di Warehouse in Microsoft Fabric le attività di caricamento vengono fornite l'isolamento delle risorse dai carichi di lavoro analitici. Ciò migliora le prestazioni e l'affidabilità, poiché i processi di inserimento possono essere eseguiti in nodi dedicati ottimizzati per ETL e non competono con altre query o applicazioni per le risorse.

Diagramma che mostra l'isolamento delle attività di inserimento.

Sessioni

L'endpoint di analisi di Warehouse e SQL ha un limite di sessione utente di 724 per area di lavoro. Quando viene raggiunto questo limite, verrà restituito un errore: The user session limit for the workspace is 724 and has been reached.

Nota

Poiché Microsoft Fabric è una piattaforma SaaS, esistono molte connessioni di sistema eseguite per ottimizzare continuamente l'ambiente. Le DMV mostrano sessioni di sistema e utente. Per altre informazioni, vedere Monitorare l'uso di DMV.

Procedure consigliate

L'area di lavoro di Microsoft Fabric fornisce un limite di isolamento naturale del sistema di calcolo distribuito. I carichi di lavoro possono sfruttare questo limite per gestire sia i costi che le prestazioni.

I collegamenti OneLake possono essere usati per creare repliche di sola lettura di tabelle in altre aree di lavoro per distribuire il carico tra più motori SQL, creando un limite di isolamento. Ciò può aumentare in modo efficace il numero massimo di sessioni che eseguono query di sola lettura.

Diagramma che mostra l'isolamento di due aree di lavoro, ad esempio l'area di lavoro Finanza e Marketing.