Condividi tramite


Linee guida per l'ottimizzazione delle prestazioni per il pool SQL serverless di Azure Synapse Analytics

Si applica a: Azure Synapse Analytics

Questo articolo illustra come migliorare le prestazioni per il pool SQL serverless di Azure Synapse Analytics.

Note

Esaminare l'elenco dei problemi noti attualmente attivi o risolti di recente in Azure Synapse Analytics.

Vedere le sezioni successive per informazioni su come ottenere prestazioni ottimali e prevenire errori correlati ai vincoli delle risorse nei pool SQL serverless di Azure Synapse Analytics.

Procedure consigliate e guide alla risoluzione dei problemi

Le informazioni e le strategie negli articoli seguenti consentono di ottenere prestazioni ottimali dal pool SQL serverless. È consigliabile usare questi articoli per esaminare i casi d'uso e risolvere i problemi comuni.

Informazioni sul ridimensionamento nel pool SQL serverless

I pool SQL serverless non richiedono di selezionare manualmente le dimensioni corrette. Il sistema regola automaticamente le dimensioni in base ai requisiti di query e quindi gestisce l'infrastruttura e seleziona le dimensioni appropriate per la soluzione.

Linee guida per l'ottimizzazione delle prestazioni per i file Delta Lake

Per altre informazioni sull'ottimizzazione delle prestazioni per i file Delta Lake, vedere le risorse seguenti:

Indicazioni per l'ottimizzazione delle prestazioni per i file CSV

Quando si eseguono query su file CSV in un pool SQL serverless, l'attività più importante per garantire prestazioni elevate consiste nel creare statistiche sulle tabelle esterne. Anche se le statistiche vengono create automaticamente nei file Parquet e CSV e accessibili tramite OPENQUERY(), la lettura dei file CSV tramite tabelle esterne richiede di creare manualmente le statistiche.

Per informazioni più dettagliate sul ruolo delle statistiche nell'esecuzione di query su file CSV nei pool SQL serverless, vedere gli articoli seguenti:

Suggerimenti per l'uso di Power BI e altri strumenti di creazione di report

Quando si usa Power BI e altri strumenti di creazione di report, è consigliabile seguire le procedure consigliate seguenti:

  • Controllare sempre la posizione del tenant.
  • Configurare una cache per un'esperienza utente ottimale.
  • Evitare di restituire milioni di record a un dashboard.
  • Usare gli aggiornamenti pianificati per evitare esecuzioni di query parallele che svuotano le risorse del pool sql serverless.
  • Usare Spark per preaggregare query analitiche comuni. Questo approccio "write once/read many" consente di evitare query pesanti che vengono eseguite continuamente.
  • Per i join tra archivi dati diversi: usare i filtri per evitare volumi di Big Data spostati nell'infrastruttura di Azure.
  • Usare Latin1_General_100_BIN2_UTF8 le regole di confronto per i tipi di dati di tipo carattere. Queste regole di confronto evitano il trasferimento di tutti i dati dall'archiviazione al pool SQL serverless eseguendo il push dei filtri quando gli strumenti leggono dall'archiviazione.
  • Usare le dimensioni ottimali, se si esegue il cast o la conversione dei dati in char o varchar durante l'esecuzione di una query. Se possibile, evitare di usare VARCHAR(MAX).
  • L'inferenza automatica converte i tipi di dati in un formato che potrebbe non essere ottimale. Usare la clausola WITH per ottimizzare i tipi di dati.
  • Le risorse del pool serverless di Azure Synapse SQL hanno limiti. L'esecuzione di query contemporaneamente utilizzerà le risorse. È comune vedere i dashboard di Power BI (PBI) che raggiungono i limiti delle risorse quando si verificano più aggiornamenti in parallelo. Gli aggiornamenti pianificati e i test di carico possono aiutare a evitare questo problema. Inoltre, l'uso di più aree di lavoro di Azure Synapse può soddisfare requisiti di concorrenza maggiori.
  • È possibile eseguire la query sys.columns o usare sp_describe_first_result_set e select top 0 from <view> per controllare i tipi di dati dopo aver creato una vista. Questo approccio è più veloce e meno costoso rispetto all'uso SELECT * FROM...di .
  • Usare il generatore di istruzioni per creare automaticamente i formati di colonna ottimali per la query.
  • Usare la OPENJSON funzione per esporre i dati JSON annidati come colonne. Tuttavia, se si usa anche il AS JSON comando , il tipo di colonna deve essere NVARCHAR(MAX). Questo approccio non è ideale per le prestazioni. L'opzione migliore consiste nell'usare la clausola WITH per esporre array annidati come colonne.
  • La chiave di partizione dell'archivio transazionale di Cosmos DB non viene usata nell'archivio analitico. In Collegamento ad Azure Synapse è ora possibile modellare i dati transazionali in modo da ottimizzare l'inserimento dati e le letture di punti.

Indicazioni aggiuntive e procedure consigliate

Categoria Azioni o documentazione consigliate
Esplorazione dei dati Archiviazione di Azure
Archiviare i risultati delle query nell'archiviazione di Azure
Data warehouse logico
OPENROWSET e tabelle esterne Funzione OPENROWSET
Tabelle esterne
Stored procedure
Visualizzazioni
Trasformazioni di dati
Funzionalità T-SQL disponibili nei pool SQL serverless Funzionalità T-SQL nei pool Azure Synapse

Dichiarazione di non responsabilità sulle informazioni di terze parti

I prodotti di terzi citati in questo articolo sono prodotti da società indipendenti da Microsoft. Microsoft non rilascia alcuna garanzia implicita o esplicita relativa alle prestazioni o all'affidabilità di tali prodotti