Estadisticas y limitaciones de indices
Los índices
como sabemos son una herramienta muy utilizada y de las que nos ofrecen una
mayor ganancia en su implementación, pero a la vez el mal uso de los mismos
puede causar problemas en la instancia o hasta hacer que un query vaya mucho
más lento.
Primero
que nada veamos problemas generales, uno de los más comunes que he visto es el
hecho de no dar mantenimiento a los índices o a sus estadísticas, si un índice
nos dice como buscar algo las estadísticas nos formulan el plan a seguir para
poder hacer un uso adecuado de estas.
A
que nos referimos digamos que estamos jugando un juego de conocimiento general
sobre películas y este fue publicado en el 2000 y salió una expansión en el
2005 y 2010, hemos jugado tanto el juego normal que nos sabemos todas las
preguntas, por lo cual creamos ciertas estadísticas de ellos. Sabemos cuántas
preguntas existe de cada actor, de cada género y debido a esto podemos saber cómo
responder rápidamente o saber dónde buscar en nuestra mente, libros, colección,
etc. Pero como mencionamos cada 5 años se actualiza este juego y nosotros no
actualizamos esto porque no sabemos del cambio no podremos dar las mejores
respuestas debido a que la información con la que contamos no está al día, por
lo cual es importante tanto poder tener el juego al día (datos e índices) como
los planes de juego (estadísticas).
Las estadísticas
son creadas cuando se crea un índice o cuando tenemos crear estadísticas automáticamente
y buscamos sobre algo que no esté contenido en un índice y obviamente creándolas
manualmente.
Las estadísticas en si tienes un conocimiento sobre grupos de información, desde un count, sum o average y lo van construyendo, sobre la marcha, esto hace que pueda tomar la mejor decisión de que acción tomar pero si tanto ellas como las estadísticas se encuentran sin actualizar esto crea una discrepancia que puede llevar a tomar un mal plan de ejecución, esto es lo que genera que una consulta "que antes corría en 30 segundos ahora se tarde 5 minutos".
Las estadísticas en si tienes un conocimiento sobre grupos de información, desde un count, sum o average y lo van construyendo, sobre la marcha, esto hace que pueda tomar la mejor decisión de que acción tomar pero si tanto ellas como las estadísticas se encuentran sin actualizar esto crea una discrepancia que puede llevar a tomar un mal plan de ejecución, esto es lo que genera que una consulta "que antes corría en 30 segundos ahora se tarde 5 minutos".
Otras
cuestiones es el espacio que pueden llegar a ocupar, los índices tienen muchas
maneras de ser creados y con variadas combinaciones, pero en ocasiones existen
lugares que por desconocimiento o hasta un sistema heredado estos pueden tener
tantos índices que su tamaño es igual o hasta mayor que la misma base de datos.
Comentarios
Publicar un comentario