Condividi tramite


queryinsights.sql_pool_insights (Transact-SQL)

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

In queryinsights.sql_pool_insights Microsoft Fabric Data Warehouse monitora l'allocazione delle risorse, traccia le modifiche di configurazione e individua i periodi in cui i pool sono sotto pressione.

Nome della colonna Tipo di dati Description
sql_pool_name nvarchar(128) Nome del pool SQL.
timestamp datetime2 Ora in cui è avvenuto il controllo sanitario o la modifica della capacità.
max_resource_percentage int Percentuale massima di risorse assegnata al pool.
is_optimized_for_reads bit Indica se il pool è configurato per carichi di lavoro ottimizzati per la lettura.
current_workspace_capacity nvarchar(16) Capacità attualmente utilizzata dallo spazio di lavoro.
is_pool_under_pressure bit Indica se la piscina è sotto pressione.

Osservazioni:

In Fabric Data Warehouse, l'isolamento delle risorse viene applicato tra SELECT i pool e NON SELECT e impedisce la contenzione. Due pool sono presenti di default:

  • SELECT: Gestisce le query di lettura ()SELECT ottimizzate per analisi e reportistica.
  • NON SELECT Gestisce la modifica dei dati (INSERT, UPDATE, DELETE), ottimizzata per ETL/ingestione.

Reportage basato su eventi

  • Nuovi record vengono registrati quando la configurazione del pool, la capacità dello spazio di lavoro o lo stato di pressione cambiano.
  • I cambiamenti dello stato di pressione vengono registrati se la pressione è sostenuta per 1 minuto o più.
  • Gli eventi vengono registrati solo quando il magazzino è attivo. Se non c'è attività nel magazzino, gli eventi periodici vengono messi in pausa e ripresi una volta rilevata l'attività. Ciò significa che durante i periodi di inattività, possono esserci pause nel logging degli eventi fino a quando il magazzino non torna attivo.

Permissions

Dovresti avere accesso a un endpoint o a un warehouse di analisi SQL all'interno di uno spazio di lavoro Fabric Capacity con permessi Contributor o superiori, oppure a Viewer con permessi Monitor.

Esempi

Usa questa vista per correlare i problemi di prestazioni delle query con la pressione del pool e le modifiche alla configurazione. Visualizza i periodi di pressione usando funzioni finestra o strumenti esterni. Ecco alcuni esempi:

A. Periodi di pressione nelle ultime 24 ore

Mostra i periodi in cui la SELECT piscina è stata sotto pressione nelle ultime 24 ore:

-- Show periods when the SELECT pool was under pressure in the last 24 hours
SELECT sql_pool_name, timestamp, is_pool_under_pressure
FROM queryinsights.sql_pool_insights
WHERE sql_pool_name = 'SELECT'
  AND timestamp >= DATEADD(hour, -24, GETDATE())
  AND is_pool_under_pressure = 1
ORDER BY timestamp DESC;

Calcola i periodi di pressione consecutivi e gli spazi usando funzioni finestra:

-- Calculate consecutive pressure periods and gaps using window functions
SELECT sql_pool_name,
       timestamp,
       is_pool_under_pressure,
       LAG(timestamp) OVER (PARTITION BY sql_pool_name ORDER BY timestamp) AS previous_event,
       DATEDIFF(minute, LAG(timestamp) OVER (PARTITION BY sql_pool_name ORDER BY timestamp), timestamp) AS minutes_since_last_event
FROM queryinsights.sql_pool_insights
WHERE sql_pool_name = 'SELECT'
ORDER BY timestamp;

Passo successivo