Dmv

Statistiche di utilizzo e performance delle viste in un database SQL Server

Sergio Govoni

Le performance di una soluzione database sono spesso oggetto di diatriba tra chi fornisce la soluzione e chi la personalizza. Scrivere codice T-SQL ottimizzato, in grado di scalare all’aumentare dei dati e degli utenti, non è affatto semplice e quando la complessità aumenta, le attività di manutenzione del codice diventano difficili da attuare anche per l’autore stesso.

In questo articolo, condivido la metodologia di tuning e alcuni script che utilizzo per ottenere informazioni sulle performance delle query che utilizzano le viste presenti nel database oggetto dell’analisi. La presenza di viste nidificate contenenti query non ottimizzate può diventare oggetto di analisi specifica, gli script contenuti in questo articolo hanno l’obiettivo di fornire alcuni indicatori sull’utilizzo e sulle performance delle viste di un DB.

Missing Index... Cache

Qualche settimana fa un collega mi ha sottoposto un quesito la cui risposta coinvolge alcuni concetti molto interessanti. La domanda più o meno era:

SQL Server mi dice che manca un indice, l’ho creato. Perchè eseguendo una query su sys.dm_db_missing_index_details trovo ancora l’indice come mancante? Come dico a SQL di aggiornare la DMV?

La risposta alla domanda è abbastanza semplice: una DMV non può essere aggiornata dall’utente. Unica componente con diritti di “scrittura” di questa particolare DMV è il Query Optimizer, che però va ad “aggiungere” informazioni. Se invece si vuole “svuotare” il contenuto della DMV.. beh.. non ci sono santi: serve riavviare l’istanza del server (come peraltro chiaramente riportato nella documentazione online)

Performance Tuning with SQL Server Dynamic Management Views

Sergio Govoni

Dal portale Red-Gate è possibile scaricare gratuitamente, in formato PDF, l’eBook Performance Tuning with SQL Server Dynamic Management Views scritto da Louis Davidson (@drsql) e Tim Ford (@sqlagentman).

Performance Tuning With SQL Server Dynamic Management Views 244x300

Le DMV (Dynamic Management Views and Functions) sono oggetti che pubblicano informazioni sullo stato di salute dell’istanza SQL Server. Permettono di monitorare il cuore del sistema, diagnosticare problemi e misurare le performance, rappresentano uno strumento utilissimo sia per i DBA che per gli sviluppatori di soluzioni database. Il libro spiega come accedere alle informazioni esposte dalle DMV più frequentemente utilizzate per fare troubleshooting sull’esecuzione delle query, sull’utilizzo degli indici, sulle operazioni di I/O, sulle attività eseguite da una determinata sessione e da una determinata transazione.

How to Use DMVs to Diagnose Performance Issues

Sergio Govoni

Sul canale PASStv è stata pubblicata la sessione How to Use DMVs to Diagnose Performance Issues tenuta da Glenn Berry durante lo scorso PASS Summit.

Le DMVs (DMV + DMF) forniscono informazioni sullo stato di salute dell’istanza SQL Server. Permettono di diagnosticare problemi di performance e rappresentano uno strumento utilissimo sia per i DBA che per gli sviluppatori; aumentano ad ogni versione di SQL Server e dopo averle toccate con mano non potrete più farne a meno vi consiglio quindi di non perdervi questa sessione!