Ottimizzazione del database tramite un carico di lavoro da Query Store con Ottimizzazione guidata motore di database

Si applica a:SQL Server

La funzionalità Archivio query di SQL Server acquisisce automaticamente una cronologia delle query, dei piani e delle statistiche di runtime e conserva queste informazioni nel database. Ottimizzazione guidata motore di database (DTA) supporta una nuova opzione che consente di usare l'archivio query per selezionare automaticamente un carico di lavoro appropriato per l'ottimizzazione. Per molti utenti, questo può eliminare la necessità di raccogliere esplicitamente un carico di lavoro per l'ottimizzazione.

Questa funzionalità è disponibile solo se nel database è attivata la funzionalità Archivio query. Per altre informazioni, vedere Abilitazione di Query Store.

Questa funzionalità è disponibile con SQL Server Management Studio v16.4 o versioni successive.

Come ottimizzare un carico di lavoro dall'archivio query nella GUI di Ottimizzazione guidata motore di Database

Nella GUI di DTA selezionare il pulsante di opzione Archivio query nel riquadro Generale per abilitare la funzionalità (vedere la figura seguente).

DTA workload from query store

Come ottimizzare un carico di lavoro dall'archivio query nell'utilità della riga di comando dta.exe

Dalla riga di comando (dta.exe) scegliere l'opzione -iq per selezionare il carico di lavoro dall'archivio query.

Tramite la riga di comando sono disponibili altre due opzioni che consentono di regolare il comportamento di DTA quando si seleziona il carico di lavoro dall'archivio query. Queste opzioni non disponibili tramite la GUI:

  1. Number of workload events to tune (Numero di eventi del carico di lavoro da ottimizzare): questa opzione, specificata usando l'argomento della riga di comando -n, consente all'utente di controllare il numero di eventi da Query Store ottimizzati. Per impostazione predefinita, DTA usa il valore 1000 per questa opzione. DTA sceglie sempre gli eventi con costo più elevato in termini di durata totale.

  2. Time windows of events to tune (Intervalli di tempo degli eventi da ottimizzare): poiché Query Store può contenere query eseguite molto tempo fa, questa opzione consente all'utente di specificare un intervallo di tempo precedente (in ore) in cui una query deve essere stata eseguita per essere considerata da DTA per l'ottimizzazione. Questa opzione si specifica usando l'argomento della riga di comando -I.

Per altre informazioni, vedere l'argomento sull'utilità dta.

Differenza tra l'uso del carico di lavoro di Query Store e dalla cache dei piani

La differenza tra le opzioni Archivio query e Cache dei piani è che il primo contiene una cronologia più lunga delle query eseguite sul database, conservate tra i riavvii del server. D'altra parte, la cache dei piani contiene solo un subset di query eseguite di recente i cui piani sono memorizzati nella cache. Quando il server viene riavviato, le voci nella cache dei piani vengono eliminate.

Passaggi successivi