¿Sabías que para la
creación y mantenimiento de estadísticas es fundamental para optimizar una Base
de Datos?
SQL Server
construye sus planes de ejecución respecto a la densidad de datos en nuestras tablas
o vistas indexadas en una o más columnas de, con lo cual crear y mantener estadísticas
es importante
Las estadísticas contienen
información sobre la distribución de valores de datos en una columna y el
optimizador utiliza esa información para determinar la cardinalidad, que es la
cantidad de filas esperada como resultado de nuestra consulta.
Por ultimo el
optimizador utiliza las estimaciones para generar el plan de ejecución, si
quieres ver las estadísticas definidas por el usuario puedes ejecutar la
siguiente consulta
SELECT sp.stats_id, name, last_updated, rows,
rows_sampled FROM sys.stats
CROSS APPLY
sys.dm_db_stats_properties(object_id, stats_id) AS sp
WHERE
user_created = 1
Típicamente se
consideran los siguientes escenarios para la creación de índices
- El Asistente para la
optimización de motor de base de datos sugiere crear las estadísticas
- El predicado de consulta
contiene varias columnas que aún no están en el mismo índice
- La consulta realiza la selección
entre un subconjunto de datos
- La consulta ha perdido
estadísticas
Esta es solo una capsula, el tema es amplio y en otras entradas agregare consultas para determinar estadisticas que faltan, asi como scripts para crear estadisticas.