Diseño de índices para mejorar el rendimiento

Los índices pueden proporcionar un acceso eficiente a los datos en muchas situaciones, y Db2 los utiliza para otros fines. Sin embargo, ciertos costes también están asociados con la creación y mantenimiento de índices y debe tener en cuenta estos costes en el diseño de base de datos.

Acerca de esta tarea

Iniciar la información de la interfaz de programación específica del programa.

Los índices pueden proporcionar un acceso eficiente a los datos mediante el acceso a índices, la agrupación de datos y el ordenamiento de los datos recuperados sin necesidad de realizar una operación de clasificación. Db2 También utiliza índices para otros fines, como garantizar la unicidad de los valores de las columnas, como en el caso de las claves principales, y para particionar tablas.

Sin embargo, aunque empiece a crear índices, debe pensar detenidamente en sus costes. Es posible que pueda eliminar los índices que ya no se necesitan o cambiar las características de un índice para reducir su uso de disco.

La eliminación de índices innecesarios también mejora el rendimiento, debido al ahorro en mantenimiento de índices.

Consejo: Las capacidades de ajuste de consultas que pueden ayudarlo con esta tarea, como la explicación visual y el asesor de estadísticas, están disponibles en IBM® Db2 Administration Foundation for z/OS® y la extensión para desarrolladores IBM Db2 for z/OS.

Procedimiento

Cuándo diseñar o evaluar índices:

  • Piense en los siguientes costes de los índices:
    • Los índices requieren espacio de almacenamiento. Los índices rellenados necesitan más espacio que los índices no rellenados para las claves de índice largas. Para claves de índice cortas, los índices sin rellenar pueden utilizar más espacio.
    • Cada índice necesita un espacio de índice y un conjunto de datos, o tantos conjuntos de datos como el número de particiones de datos si el índice está particionado, y existen restricciones de sistema operativo en el número de conjuntos de datos abiertos.
    • Los índices se deben cambiar para reflejar cada operación de inserción o supresión en la tabla base. Si una operación de actualización actualiza una columna que está en el índice, éste también se debe cambiar. El tiempo requerido para estas operaciones se incrementa de acuerdo a ello.
    • Los índices se pueden crear automáticamente cuando se cargan los datos, pero este proceso requiere tiempo. Se deben recuperar o volver a crear si se recupera el espacio de tabla subyacente, lo que puede tardar tiempo.
  • Al analizar el acceso de índice, pregunte las preguntas siguientes:
    • ¿Puede consolidar índices incluyendo columnas no clave en índices exclusivos?
    • Si se añade una columna a un índice ¿permitirá que la consulta utilice el acceso de sólo índice?
    • ¿Necesita un nuevo índice?
    • ¿Es correcta la opción de índice de agrupación en clúster?
    • Inicio del cambio¿Pueden los índices sacar provecho del cruce de índices rápido?fin del cambio

    Fin de la información sobre la interfaz de programación específica del programa.