Monitoraggio e ottimizzazione delle prestazioni

L'obiettivo del monitoraggio dei database consiste nella valutazione delle prestazioni di un server. Un monitoraggio efficace implica l'esecuzione di snapshot periodici delle prestazioni correnti al fine di isolare i processi che causano problemi, nonché la raccolta continua di dati nel tempo per tenere traccia delle tendenze delle prestazioni.

La valutazione continuativa delle prestazioni del database consente di ridurre al minimo i tempi di risposta e di aumentare al massimo la velocità effettiva, ottimizzando pertanto le prestazioni. Traffico di rete, operazioni di I/O su disco e utilizzo della CPU efficienti sono fattori fondamentali per ottenere prestazioni ottimali. È necessario analizzare accuratamente i requisiti delle applicazioni, comprendere la struttura logica e fisica dei dati, valutare l'utilizzo del database e raggiungere compromessi adeguati tra tipi di utilizzo in conflitto, ad esempio elaborazione delle transazioni online (OLTP) e supporto decisionale.

Vantaggi del monitoraggio e dell'ottimizzazione del database per le prestazioni

Microsoft SQL Server e il sistema operativo Microsoft Windows forniscono utilità che consentono di visualizzare la condizione corrente del database e di tenere traccia delle prestazioni quando cambiano le condizioni. Esistono diversi strumenti e tecniche che possono essere usati per monitorare i SQL Server Microsoft. Informazioni su come monitorare SQL Server può essere utile:

  • Determinare se è possibile migliorare le prestazioni. Il monitoraggio dei tempi di risposta delle query più frequenti consente, ad esempio, di determinare se sono necessarie modifiche alle query o agli indici nelle tabelle.

  • Valutare le attività degli utenti. Ad esempio, monitorando gli utenti che tentano di connettersi a un'istanza di SQL Server, è possibile determinare se la sicurezza è configurata in modo adeguato e testare applicazioni o sistemi di sviluppo. Il monitoraggio dell'esecuzione di query SQL consente ad esempio di determinare se le query sono formulate in modo corretto e se producono i risultati previsti.

  • Risolvere eventuali problemi o eseguire il debug dei componenti di applicazione, ad esempio di stored procedure.

Monitoraggio in un ambiente dinamico

Il monitoraggio è importante perché SQL Server fornisce un servizio in un ambiente dinamico. I cambiamenti delle condizioni comportano variazioni nelle prestazioni. Nel corso delle valutazioni, è possibile analizzare le variazioni delle prestazioni in relazione ad aumento del numero di utenti, modifica dei metodi di connessione e accesso degli utenti, aumento dei contenuti del database, cambiamento nelle applicazioni client, variazione dei dati nelle applicazioni, aumento della complessità delle query e incremento del traffico di rete. Usando SQL Server strumenti per monitorare le prestazioni, è possibile associare alcune modifiche alle prestazioni con le condizioni di modifica e le query complesse. Gli scenari illustrati di seguito offrono alcuni esempi:

  • Il monitoraggio dei tempi di risposta delle query più frequenti consente di determinare se sono necessarie modifiche alle query o agli indici nelle tabelle in cui le query vengono eseguite.

  • Monitorando le query Transact-SQL durante l'esecuzione, è possibile determinare se le query vengono scritte correttamente e produrre i risultati previsti.

  • Monitorando gli utenti che tentano di connettersi a un'istanza di SQL Server, è possibile determinare se la sicurezza è configurata in modo adeguato e testare applicazioni o sistemi di sviluppo.

I tempi di risposta corrispondono al tempo necessario per la restituzione all'utente della prima riga del set di risultati come conferma visiva dell'elaborazione di una query. La velocità effettiva corrisponde al numero totale di query gestite dal server in un determinato periodo di tempo.

Con l'aumentare del numero di utenti, aumenta la concorrenza per le risorse del server, che a sua volta comporta un incremento dei tempi di risposta e una diminuzione generale della velocità effettiva.

Attività di monitoraggio e ottimizzazione delle prestazioni

Descrizione dell'attività Argomento
Monitorare i componenti di SQL Server Fornisce i passaggi necessari per monitorare efficacemente qualsiasi componente di SQL Server.
Strumenti per il monitoraggio e l'ottimizzazione delle prestazioni Elenca gli strumenti di monitoraggio e ottimizzazione SQL Server.
Definire una base di riferimento delle prestazioni Fornisce informazioni su come stabilire un riferimento per le prestazioni.
Isolare i problemi relativi alle prestazioni Viene descritto come isolare problemi di prestazioni del database.
Individuare i colli di bottiglia Viene descritto come monitorare e tenere traccia delle prestazioni del server per identificare colli di bottiglia.
Monitoraggio delle prestazioni e dell'attività del server Viene descritto come usare SQL Server e strumenti di monitoraggio delle prestazioni e delle attività di Windows.
Visualizzare e salvare piani di esecuzione Viene descritto come visualizzare e salvare piani di esecuzione in un file in formato XML.
Monitoraggio delle prestazioni con Archivio query L'archivio di query acquisisce automaticamente una cronologia delle query, dei piani e delle statistiche di runtime e li conserva per la consultazione.

Vedere anche

Amministrazione automatizzata in un'organizzazione
Database Engine Tuning Advisor
Monitoraggio dell'utilizzo delle risorse (Monitor di sistema)
SQL Server Profiler