Oggetto SQL Statistics di SQL ServerSQL Server, SQL Statistics Object

L'oggetto SQLServer:SQL Statistics di SQL ServerSQL Server fornisce contatori per il monitoraggio della compilazione e del tipo di richieste inviate a un'istanza di SQL ServerSQL Server.The SQLServer:SQL Statistics object in SQL ServerSQL Server provides counters to monitor compilation and the type of requests sent to an instance of SQL ServerSQL Server. Il monitoraggio del numero di compilazioni e ricompilazioni di query e del numero di batch ricevuti da un'istanza di SQL ServerSQL Server consente di determinare la velocità di elaborazione delle query utente in SQL ServerSQL Server e l'efficienza di Query Optmizer.Monitoring the number of query compilations and recompilations and the number of batches received by an instance of SQL ServerSQL Server gives you an indication of how quickly SQL ServerSQL Server is processing user queries and how effectively the query optimizer is processing the queries.

La compilazione rappresenta un aspetto fondamentale del processo di elaborazione delle query.Compilation is a significant part of a query's turnaround time. Allo scopo di ottimizzare la compilazione, in Motore di databaseDatabase Engine il piano di query compilato viene salvato in una query cache.In order to save the compilation cost, the Motore di databaseDatabase Engine saves the compiled query plan in a query cache. Ciò consente di limitare le operazioni di compilazione e di riutilizzare le query in un momento successivo senza doverle ricompilare.The objective of the cache is to reduce compilation by storing compiled queries for later reuse, therefore ending the requirement to recompile queries when later executed. Ogni query tuttavia deve essere compilata almeno una volta.However, each unique query must be compiled at least one time. Le ricompilazioni delle query possono essere causate dai seguenti fattori:Query recompilations can be caused by the following factors:

  • Modifiche di schema, incluse le modifiche allo schema di base, ad esempio l'aggiunta di colonne o indici a una tabella, e modifiche allo schema delle statistiche, ad esempio l'inserimento o l'eliminazione di un numero significativo di righe in una tabella.Schema changes, including base schema changes such as adding columns or indexes to a table, or statistics schema changes such as inserting or deleting a significant number of rows from a table.

  • Modifiche all'ambiente (istruzione SET).Environment (SET statement) changes. Modifiche alle impostazioni di sessione, ad esempio ANSI_PADDING o ANSI_NULLS.Changes in session settings such as ANSI_PADDING or ANSI_NULLS can cause a query to be recompiled.

    Per altre informazioni sulla parametrizzazione semplice e forzata, vedere ALTER DATABASE (Transact-SQL).For more information about simple and forced parameterization, see ALTER DATABASE (Transact-SQL).

    Nella tabella seguente sono elencati i contatori dell'oggetto SQL ServerSQL Server di .These are the SQL ServerSQL Server SQL Statistics counters.

Contatori dell'oggetto SQL StatisticsSQL Server SQL Statistics counters DescrizioneDescription
Tentativi parametrizzazioni automatiche/secAuto-Param Attempts/sec Numero di tentativi di parametrizzazione automatica al secondo.Number of auto-parameterization attempts per second. Il totale deve corrispondere alla somma delle parametrizzazioni automatiche non riuscite, sicure e non sicure.Total should be the sum of the failed, safe, and unsafe auto-parameterizations. Una parametrizzazione automatica si verifica quando in un'istanza di SQL ServerSQL Server viene eseguito un tentativo di parametrizzazione di una richiesta Transact-SQLTransact-SQL tramite la sostituzione di alcuni valori letterali con parametri in modo da consentire il riutilizzo del piano di esecuzione memorizzato nella cache risultante in più richieste con struttura simile.Auto-parameterization occurs when an instance of SQL ServerSQL Server tries to parameterize a Transact-SQLTransact-SQL request by replacing some literals with parameters so that reuse of the resulting cached execution plan across multiple similar-looking requests is possible. Si noti che nelle versioni più recenti di SQL ServerSQL Serverle parametrizzazioni automatiche sono note anche come parametrizzazioni semplici.Note that auto-parameterizations are also known as simple parameterizations in newer versions of SQL ServerSQL Server. Sono escluse le parametrizzazioni forzate.This counter does not include forced parameterizations.
Richieste batch/secBatch Requests/sec Numero di batch di comandi Transact-SQLTransact-SQL ricevuti al secondo.Number of Transact-SQLTransact-SQL command batches received per second. Il valore dipende da tutti i vincoli (I/O, numero di utenti, dimensioni della cache, complessità delle richieste e così via).This statistic is affected by all constraints (such as I/O, number of users, cache size, complexity of requests, and so on). Un valore elevato indica una velocità effettiva ottimale.High batch requests mean good throughput.
Parametrizzazioni automatiche non riuscite/secFailed Auto-Params/sec Numero di tentativi di parametrizzazione automatica non riusciti al secondo.Number of failed auto-parameterization attempts per second. Il valore dovrebbe essere basso.This should be small. Si noti che nelle versioni più recenti di SQL ServerSQL Serverle parametrizzazioni automatiche sono denominate anche parametrizzazioni semplici.Note that auto-parameterizations are also known as simple parameterizations in later versions of SQL ServerSQL Server.
Parametrizzazioni forzate/secForced Parameterizations/sec Numero di parametrizzazioni forzate riuscite al secondo.Number of successful forced parameterizations per second.
Esecuzioni piani guidate al secondoGuided Plan Executions/sec Numero di esecuzioni del piano al secondo in cui il piano di query è stato generato utilizzando una guida di piano.Number of plan executions per second in which the query plan has been generated by using a plan guide.
Esecuzioni piani non guidate al secondoMisguided Plan Executions/sec Numero di esecuzioni del piano al secondo in cui non è stato possibile applicare una guida di piano durante la generazione del piano.Number of plan executions per second in which a plan guide could not be honored during plan generation. La guida di piano viene ignorata e viene utilizzata la compilazione normale per generare il piano eseguito.The plan guide was disregarded and normal compilation was used to generate the executed plan.
Parametrizzazioni automatiche sicure/secSafe Auto-Params/sec Numero di tentativi di parametrizzazione automatica sicura al secondo.Number of safe auto-parameterization attempts per second. L'aggettivo sicura indica la possibilità di condivisione di un piano di esecuzione memorizzato nella cache tra più istruzioni Transact-SQLTransact-SQL con struttura simile.Safe refers to a determination that a cached execution plan can be shared between different similar-looking Transact-SQLTransact-SQL statements. SQL ServerSQL Server esegue molti tentativi di parametrizzazione automatica. Alcune parametrizzazioni risultano sicure, mentre altre hanno esito negativo. makes many auto-parameterization attempts some of which turn out to be safe and others fail. Si noti che nelle versioni più recenti di SQL ServerSQL Serverle parametrizzazioni automatiche sono denominate anche parametrizzazioni semplici.Note that auto-parameterizations are also known as simple parameterizations in later versions of SQL ServerSQL Server. Sono escluse le parametrizzazioni forzate.This does not include forced parameterizations.
Frequenza situazioni di attenzione SQLSQL Attention rate Numero di situazioni di attenzione al secondo.Number of attentions per second. Una situazione di attenzione corrisponde a una richiesta di interruzione della richiesta corrente inviata dal client.An attention is a request by the client to end the currently running request.
Compilazioni SQL/secSQL Compilations/sec Numero di compilazioni SQL al secondo.Number of SQL compilations per second. Indica il numero di immissioni del percorso del codice di compilazione.Indicates the number of times the compile code path is entered. Include le compilazioni generate da ricompilazioni a livello di istruzione in SQL ServerSQL Server.Includes compiles caused by statement-level recompilations in SQL ServerSQL Server. Quando l'attività dell'utente di SQL ServerSQL Server è stabile, il valore rimane costante.After SQL ServerSQL Server user activity is stable, this value reaches a steady state.
Ricompilazioni SQL/secSQL Re-Compilations/sec Numero di ricompilazioni di istruzioni al secondo.Number of statement recompiles per second. Esegue il conteggio del numero di volte in cui vengono attivate ricompilazioni di istruzioni.Counts the number of times statement recompiles are triggered. In generale, il numero di ricompilazioni deve essere basso.Generally, you want the recompiles to be low.
Parametrizzazioni automatiche non sicure/secUnsafe Auto-Params/sec Numero di tentativi di parametrizzazione automatica non sicure al secondo.Number of unsafe auto-parameterization attempts per second. Ad esempio, le parametrizzazioni automatiche eseguite quando la query presenta caratteristiche che impediscono la condivisione del piano memorizzato nella cacheFor example, the query has some characteristics that prevent the cached plan from being shared. sono definite non sicure.These are designated as unsafe. Sono escluse le parametrizzazioni forzate.This does not count the number of forced parameterizations.

Vedere ancheSee Also

Oggetto Plan Cache di SQL Server SQL Server, Plan Cache Object
Monitoraggio dell'utilizzo delle risorse (Monitor di sistema) Monitor Resource Usage (System Monitor)