Conceptos básicos sobre índices.


Definición

 

Un índice en informática es como el índice de un libro donde tenemos los capítulos del libro y la página donde empieza cada capítulo. No vamos a entrar ahora en cómo se implementan los índices internamente ya que no entra en los objetivos del curso pero sí daremos unas breves nociones de cómo se definen, para qué sirven y cuándo hay que utilizarlos y cuando no.

Un índice es una estructura de datos que permite recuperar las filas de una tabla de forma más rápida además de proporcionar una ordenación distinta a la natural de la tabla. Un índice se define sobre una columna o sobre un grupo de columnas, y las filas se ordenarán según los valores contenidos en esas columnas. Por ejemplo, si definimos un índice sobre la columna poblacion de la tabla de clientes, el índice permitirá recuperar los clientes ordenados por orden alfabético de población.

Si el índice se define sobre varias columnas, los registros se ordenarán por la primera columna, dentro de un mismo valor de la primera columna se ordenarán por la segunda columna, y así sucesivamente. Por ejemplo si definimos un índice sobre las columnas provincia y poblacion se ordenarán los clientes por provincia y dentro de la misma provincia por población, aparecerían los de ALICANTE Denia, ALICANTE Xixona, VALENCIA Benetússer, VALENCIA Oliva.

El orden de las columnas dentro de un índice es importante, si retomamos el ejemplo anterior y definimos el índice sobre poblacion y provincia, aparecerían los de VALENCIA Benetusser, ALICANTE Denia, VALENCIA Oliva, ALICANTE Xixona. Ahora se ordenan por población y los clientes de la misma población se ordenarían por el campo provincia.

 

Ventajas e inconvenientes

 

Ventajas:

Si una tabla tiene definido un índice sobre una columna se puede localizar mucho más rápidamente una fila que tenga un determinado valor en esa columna.

Recuperar las filas de una tabla de forma ordenada por la columna en cuestión también será mucho más rápido.

 

Inconvenientes:

Al ser el índice una estructura de datos adicional a la tabla, ocupa un poco más de espacio en disco.

Cuando se añaden, modifican o se borran filas de la tabla, el sistema debe actualizar los índices afectados por esos cambios lo que supone un tiempo de proceso mayor.

Por estas razones no es aconsejable definir índices de forma indiscriminada.

Los inconvenientes comentados en este punto no son nada comparados con las ventajas si la columna sobre la cual se define el índice es una columna que se va a utilizar a menudo para buscar u ordenar las filas de la tabla. Por eso una regla bastante acertada es definir índices sobre columnas que se vayan a utilizar a menudo para recuperar u ordenar las filas de una tabla.

El Access de hecho crea automáticamente índices sobre las columnas claves principales y sobre las claves foráneas ya que se supone que se utilizan a menudo para recuperar filas concretas.

 

   
   



Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies


© aulaClic. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.