Sidebar

SQL Server 2005 contiene nuevas vistas y funciones que nos sirven para monitorear la base de datos. Esta es una pequeña recopilación de las más importantes. 

 DMV y DMF (Dynamic Management Views and Functions)

 

Están divididas en cuatro categorías:

 

Prefijo Categoria
dm_db_* Provee información general de la base de datos como espacio y utilización de índices.
dm_exec_* Estadísticas de queries.
dm_io_* Estadísticas de I/O
dm_os_* Estadísticas de Hardware

 Estadísticas de la base de datos

sys.dm_db_index_usage_stats Para buscar  algún índice no utilizado por el optimizador
sys.db_index_operational_stats Utiliza 4 parámetros (database_id, object_id, index_id, partition_id) y muestra todas las estadísticas de IO relacionadas con bloqueos, accesos de un índice en particular
sys.dm_db_index_physical_stats Utiliza 5 parámetros parámetros (database_id, object_id, index_id, partition_id, mode), regresa información parecida a DBCC SHOWCONTIG
sys.dm_db_missing_index_* Índices que pueden ser creados en la base de datos
sys.dm_db_missing_index_details

select * from (select user_seeks * avg_total_user_cost * (avg_user_impact * 0.01) as index_advantage, migs.*From sys.dm_db_missing_index_group_stats migs) as migs_advINNER JOIN sys.dm_db_missing_index_groups as mig on migs_adv.group_handle = mig.index_group_handleINNER JOIN sys.dm_db_missing_index_details as mid on mig.index_handle = mid.index_handleOrder by migs_adv.index_advantage  

Arriba de 5000 evaluarArriba de 10000 crear el índice 

sys.dm_db_missing_index_group_stats
sys.dm_db_missing_index_groups

 Estadísticas de queriesEstas se dividen en dos: conexiones a la instancia y queries ejecutados en el servidor de  base de datos. 

sys.dm_exec_requests Estadísticas de cada ejecución
sys.dm_exec_sessions Es parecida a sp_who , sp_who2 o sysprocesses
sys.dm_exec_query_stats Estadísticas detalladas de cada query
sys.dm_exec_cached_plans Es parecida a syscacheobjects
sys.dm_exec_sql_text select * from sys.dm_exec_query_stats cross apply sys.dm_exec_query_plan(plan_handle)select * from sys.dm_exec_query_stats cross apply sys.dm_exec_sql_text(sql_handle)select * from sys.dm_exec_cached_plans cross apply sys.dm_exec_query_plan(plan_handle)
sys.dm_exec_query_plans

 Estadísticas de IO 

sys.dm_io_virtual_file_stats Es similar a  fn_virtual_filestats, pero contiene más información
sys.dm_io_pending_io_requests Contiene un registro por cada IO que tuvo que esperar. Si se tienen muchos registros es que se tiene un cuello de botella en el disco.

  Estadísticas de Hardware 

sys.dm_os_performance_counters Provee todos los contadores de SQL Server
sys.dm_os_wait_stats Similar a DBCC SQLPERF(WAITSTATS)), en SQL Server 2000 se tenían 77 tipos de espera en 2005 se tienen 194.

Tips BD