Optimización De Indices
Optimación de Índices
La optimación de índices es una faceta importante en cualquier base de datos de producción. Su función principal es reducir el tiempo de respuesta a las operaciones DML al disminuir la actividad de entrada y salida, tanto a disco como a memoria. Se emplean tanto en la búsqueda como en el ordenamiento de datos. En este último caso,no sólo porque haya una cláusula ORDER BY, sino porque partes del plan de la consulta se pueden aprovechar de que los datos vengan ordenados. De todos los aspectos de optimación de una base de datos, la optimación de índices es lo único que puede mejorar el rendimiento en múltiplos en vez de en porcentajes. De aquí que sea tan importante.
IntroducciónNo solamente la falta de índices, sino los índices mal diseñados constituyen las principales fuentes de atascos en aplicaciones de base de datos. El diseño eficaz de los índices tiene gran importancia para conseguir un buen rendimiento de una base de datos, tanto en búsquedas de datos como en escritura. La selección de los índices apropiados para la estructura de una base de datos y su carga de trabajo, es una compleja operación que busca el equilibrio entre la velocidad de la consulta y el costo de actualización. Los índices estrechos, o con pocas columnas en la clave de índice, necesitan menos espacio en el disco y son menos susceptibles de provocar sobrecargas debido a su mantenimiento. Por otra parte, la ventaja de los índices anchos es que pueden llegar a cubrir las consultas. Hay que experimentar con distintos diseños hasta encontrar el índice más eficaz. Recuérdese que agregar, modificar y quitar índices no afecta al esquema de la base de datos o al diseño de las aplicaciones, por lo que es más seguro experimentar.
Introducción
La optimación de índices es una faceta importante en cualquier base de datos de producción. Su función principal es reducir el tiempo de respuesta a las operaciones DML al disminuir la actividad de entrada y salida, tanto a disco como a memoria. Se emplean tanto en la búsqueda como en el ordenamiento de datos. En este último caso, no sólo porque haya una cláusula ORDER BY, sino porque partes del plan de la consulta se pueden aprovechar de que los datos vengan ordenados. De todos los aspectos de optimación de una base de datos, la optimación de índices es lo único que puede mejorar el rendimiento en múltiplos en vez de en porcentajes. De aquí que sea tan importante.
Árboles B
Valor añadido Danysoft | www.danysoft.com 1 Antes de pasar a los métodos de análisis de índices, veamos un somero resumen de la estructura interna de éstos. En SQL Server, los índices se organizan como árboles b. Las páginas de un árbol b de índice se llaman nodos del índice. El nodo superior del árbol b se llama nodo raíz y contiene la entrada al índice. Es decir, cualquier búsqueda, sea ordenada o desordenada, debe pasar por aquí. Incluso un recorrido completo debe encontrar la primera página de datos partiendo del nodo raíz. El nivel inferior de los nodos del índice se denomina nodos de hoja. Los niveles del índice entre el nodo raíz y los nodos hoja se conocen en conjunto como niveles intermedios. En un índice agrupado, los nodos hoja contienen las páginas de datos de la tabla subyacente. Por tanto, la tabla completa está ordenada según el índice. También, todo acceso a la tabla se hace desde el nodo raíz. En un índice no agrupado, los nodos hoja tienen una referencia al índice agrupado (si existe) o al índice montón (si la tabla no tiene ningún índice agrupado). Por tanto, si la tabla tiene un índice agrupado, sus columnas clave figuran siempre dentro del índice –como una especie de columna incluida–, pues son la referencia para encontrar las filas en la tabla En SQL Server 2005, la funcionalidad de los índices no agrupados puede ampliarse si se agregan columnas ...
Regístrate para leer el documento completo.