Representación de indices

El campo clave-secundaria sobre el cual se crea un indice se llama clave inversa o clave indexada. Se dice entonces que el campo es inverso para la recuperacion por clave secundaria. La figura muestra un archivo de estudiantes y sus indices asociados: un indice valor clave y un nombre clave. Las dos claves inversa son CLASS y AGE.
Cada entrada del indice valor clave consiste en un valor de clave secundaria y en un conjunto de señaladadores a los registros de datos. Un señalador puede contener en una direccion relativa, una direccion fisica o una clave principal de los registros objetos.

DIRECCION RELATIVA
El campo señalador en el indice valor clave de la fig. contiene direcciones relativas. Para ejemplificar, la primera entrada del indice indica que los registros uno, cuatro y cinco contienen el valor clave 541 en el campo CLASS.
SEÑALADOR SIMBOLICO
Un señalador simbolico es un identificador de regsitros, pero no una direccion de registro. Por ejemplo, un valor de clave primaria puede usarse como señalador simbolico porque identifica de manera unica a un registro del archivo. Si se escoge al señalador simbolico como identificador de registro, la primera entrada del indice en el indice valor clave de la fig contendria:
Valor de clave secundaria señalador de registro
•  541                                                                                                             150,164,172
los valores 150, 164 y 172 son los valores de las claves primarias (S-ID) de los registros 1,4 y 5, respectivamente. Estos valores de clave-primaria pueden traducirse a su direccion de registro correspondiente por medio de distribucion o busqueda de indice (Hashing) dependiendo de la organización basica de archivo subyacente, es decir, directa o secuencial indexada.
DIRECCION FISICA
El campo señalador puede contener direcciones fisicas, las cuales pueden usarse para accesar registros directamente sin necesidad de traducir la direccion, como fue necesario en los casos 1) y 2). Sin embargo, la mayor desventaja del uso de las direcciones reales, es que los valores del señalador dependen entonces del dispositivo. Por ejemplo, hay que recrear un indice si los datos del archivo emigran de un disco a otro.
Cada entrada en el indice nombre clave en la fig. consiste en un nombre clave-inversa y un señalador hacia la primera entrada del indice valor-clave. Los distintos indices en una organización inversa juntos forman un directorio.
¿ como responde un sistema inverso de archivos a las consultas sobre las claves secundarias? Considerese la siguiente consulta en el archivo inverso de la fig.
listar los nombres de los estudiantes cuya edad sea 21 años.
Puede responder rapidamente buscando en el directorio de la manera siguiente:
•       empezar la busqueda con el indice nombre-clave para localizar la entrada AGE.
•        Analizar el indice valor-clave para encontrar el valor 21 en la clave secundaria.
•        Recuperar los registros objetivo del archivo de datos en las direcciones relativas 3y 7.
Se dice que se tiene un indice denso cuando este incluye cada valor clave posible en un conjunto indexado. El indice valor- clave de la fig. es denso porque todos los valores de las claves inversas estan incluidos en el indice. Por ejemplo, los tres numeros posibles de CLASS en el archivo de datos son 541, 542, y 543. Los tres aparecen en el indice valor-clave. Se dice que una clave inversa esta parcialmente indexada si solo algunos de sus valores claves estan incluidos en el indice valor-clave. Los valores clave que estan indexados son aquellos usados en la condiciones de busqueda. Un indice parcialmente indexado se llama indice disperso.
Para un indice con una gran cantidad de elementos, la busqueda secuencial sobre el indice no es muy eficiente. Por esto, un indice se organiza generalmente como una estructura de varios niveles como es el caso de la estructura multinivel de indice principal para los archivos secuenciales indexados. El directorio para el archivo de datos de la fig. esta organizado como un indice de nivel dos, en el cual el indice nombre-clave se crea para facilitar la busqueda en el indice valor-clave.
El grado de inversion se refiere al nivel de totalidad de inversion expresada por el numero de campos y lo extenso de los valores de los campos invertidos. Una inversion de 0% significa que no se invirtio ningun campo clave en un registro. Por otro lado, un archivo con el 100% de inversion tiene invertido cada valor clave de cada campo de datos.
En algunos sistemas operativos macromainframe se dispone de elementos para invertir indices automaticos si se declaran las claves secundarias en un programa, por ejemplo. VSAM de IBM y AAM de Cyber, son capaces de crear indices inversos sobre la organización secuencial indexada y directa.
MANEJO DE INDICES
Cada vez que se inserta, borra o actualiza un registro, las entradas afectadas de un indice deben ser modificadas por el sistema para que asi, el indice pueda proporcionar las trayectorias de datos correctas.