Sunteți pe pagina 1din 8

ARCHIVO SECUENCIAL INDEXADO

Los registros se organizan en una secuencia basada en un campo clave presentando dos caractersticas, un ndice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. El ndice proporciona una capacidad de bsqueda para llagar rpidamente al registro deseado y el archivo de desbordamiento es similar al archivo de registros usado en un archivo secuencial, pero est integrado de forma que los archivos de desbordamiento se ubiquen siguiendo un puntero desde su registro predecesor. La estructura ms simple tiene como ndice un archivo secuencial simple, cada registro del archivo ndice tiene dos campos, un campo clave igual al del archivo principal y un puntero al archivo principal. Para encontrar un campo especifico se busca en el ndice hasta encontrar el valor mayor de la clave que es iguale o precede al valor deseado de la clave, la bsqueda continua en el archivo principal a partir de la posicin que indique el puntero. Cada registro del archivo principal tiene un campo adicional que es un puntero al archivo de desbordamiento. Cuando se inserta un nuevo registro al archivo, tambin se aade al archivo de desbordamiento. El registro del archivo principal que precede inmediatamente al nuevo registro segn la secuencia lgica se actualiza con un puntero del registro nuevo en el archivo de desbordamiento, si el registro inmediatamente anterior est tambin en el archivo de desbordamiento se actualizar el puntero en el registro. Para procesar secuencialmente un archivo completo los registros del archivo principal se procesarn en secuencia hasta encontrar un puntero al archivo de desbordamiento, el acceso contina en el archivo de desbordamiento hasta que encuentra un puntero nulo, entonces renueva el acceso donde se abandon en el archivo principal. Las caractersticas ms relevantes de un archivo indexado, son las siguientes:

a) El diseo del registro tiene que tener un campo, o combinacin de campos, que permita identificar cada registro de forma nica, es decir, que no pueda haber dos registros que tengan la misma informacin en l. A este campo se le llama campo clave y es el que va a servir de ndice. Un mismo fichero puede tener mas de un campo clave, pero al menos uno de ellos no admitir valores duplicados y se le llama clave primaria. A las restantes se les llama claves alternativas.

b) Permiten utilizar el modo de acceso secuencial y el modo de acceso directo para leer la informacin guardada en sus registros. El modo de acceso directo se hace conociendo el contenido del campo clave del registro que queremos localizar. Con esa informacin el sistema operativo puede consultar el ndice y conocer la posicin del registro dentro del fichero.

En el modo de acceso secuencial los registros son ledos ordenados por el contenido del campo clave, independientemente del orden en que se fueron grabando (El orden lgico no es igual al orden fsico), debido a que el acceso a los datos se hace a travs del ndice, que para hacer ms fcil la bsqueda de los registros permanece siempre ordenado por el campo clave.

c) Solamente se puede grabar en un soporte direccionable. Ej.: disco magntico. Si esto no fuera as no podra emplear el acceso directo.

VENTAJAS 1. Permite el acceso secuencial. 2. Permite el acceso directo a los registros. 3. Se pueden actualizar los registros en el mismo fichero, sin necesidad de crear un fichero nuevo de copia en el proceso de actualizacin.

DEVENTAJAS

1. Ocupa ms espacio en el disco que los ficheros secunciales, debido al uso del rea de ndices. 2. Tiene tendencia a que aumente el tiempo medio de acceso a los registros, cuando se producen muchas altas nuevas con claves que hay que intercalar entre las existentes, ya que aumenta el rea de overflow. 3. Solo se puede utilizar soportes direccionables. 4. Obliga a una inversin econmica mayor, por la necesidad de programas y, a veces, hardware ms sofisticado. 3.1 ESTRUCTURA DE LA ORGANIZACIN SECUENCIAL INDEXADO.

Este tipo de organizacin se utiliza cuando existe la necesidad tanto de acceder a los registros secuencialmente, por algn valor de llave, como de acceder los individualmente. Un archivo secuencial indexado puede tener acceso porque manejan un archivo secuencial y un archivo relativo o de acceso directo.

El tipo de sus registros contiene un campo clave identificador. Los registros estn situados en un soporte direccionable por el orden de los valores indicados por la clave. Un archivo secuencial indexado contiene

un archivo ndice y un archivo de datos. Es necesario que los registros contengan un campo clave para identificarlos y que estn almacenados en un soporte direccionable segn el orden que indique dicha clave. El archivo ndice agilizar la bsqueda dentro del fichero. El fichero de datos se organiza, lgicamente, en bloques o pginas de varios registros.

. Cada registro del fichero ndice almacena:

El valor del campo clave del ltimo registro de un bloque. Los bloques estn constituidos por un nmero fijo de registros consecutivos.

La direccin del primer registro de dicho bloque. Puede haber un rea de desbordamiento. Ocupa ms espacio en disco pero es ms rpido. Puede almacenarse el fichero ndice en memoria. Habra que calcularlo al iniciar una sesin de trabajo.

En este tipo de organizacin de archivos se dispone de una tabla en que aparecen ordenados secuencialmente los nmeros de la clave del archivo y asociados a cada uno de ellos de da la direccin del registro correspondiente.

AREAS DEL ARCHIVO SECUENCIAL INDEXADO

rea de Datos: Contiene los registros secuencial, esta ordenados alfabticamente o alfanumricamente y no deja espacios.

rea de ndice: Los niveles de ndice estn contenidos en una tabla, si existieran varios ndices enlazados se denomina nivel de indexacin

rea de Desbordamiento o Excedentes: Esta rea es utilizada para realizar actualizaciones si ello es necesario

FICHEROS CON ORGANIZACIN SECUENCIAL INDEXADA.

Un archivo con organizacin secuencial indexada est formado por:

AREA DE DATOS: Es el rea en la que se escriben los registros cuando el archivo es creado el en directorio del fichero.

Los ficheros con organizacin secuencial indexada se graban en un soporte de almacenamiento directo, en secuencia ascendente, de acuerdo con los valores de la clave y en pginas o bloques de longitud fija.

El AREA DE INDICES: es creada por el sistema al mismo tiempo que se van almacenando los datos. Contiene una tabla que asocia las claves con las direcciones de los registros en el rea de datos.

Cada entrada del rea de ndices est formada por el valor ms alto de la clave de cada grupo de registros y un puntero con la direccin del primer registro del grupo.

Un AREA DE EXCEDENTES: donde se graban los registros que no tienen sitio en el rea de datos. Los nuevos registros se insertan y quedan enlazados entre s mediante punteros conservando el orden lgico que marca la clave o ndice principal.

Del tratamiento de los ndices y punteros se encarga el sistema operativo por lo que no va a crear problemas al usuario cuando maneja este tipo de ficheros. El usuario sabe lo que sucede cuando solicita una consulta de un registro, pero no sabe cmo se realiza internamente esa consulta.

3.2 REPRESENTACIN DE INDICES

El campo clave-secundaria sobre el cual se crea un ndice 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 ndices asociados: un ndice valor clave y un nombre clave. Las dos claves inversas son CLASS y AGE. Cada entrada del ndice valor clave consiste en un valor de clave secundaria y en un conjunto de sealadadores a los registros de datos. Un sealador

Puede contener en una direccin relativa, una direccin fsica o una clave principal de los registros

objetos.

DIRECCION RELATIVA El campo sealador en el ndice valor clave de la fig. Contiene direcciones relativas. Para ejemplificar, la primera entrada del ndice indica que los registros uno, cuatro y cinco contienen el valor clave 541 en el campo CLASS. SEALADOR SIMBOLICO Un sealador simblico es un identificador de registros, pero no una direccin de registro. Por ejemplo, un valor de clave primaria puede usarse como sealador simblico porque identifica de manera nica a un registro del archivo. Si se escoge al sealador simblico como identificador de registro, la primera entrada del ndice en el ndice valor clave de la fig. Contendra: Valor de clave secundaria sealador 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 direccin de registro correspondiente por medio de distribucin o bsqueda de ndice (Hamhung) dependiendo de la organizacin bsica de archivo subyacente, es decir, directa o secuencial indexada. DIRECCION FISICA El campo sealador puede contener direcciones fsicas, las cuales pueden usarse para acezar registros directamente sin necesidad de traducir la direccin, 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 sealador dependen entonces del dispositivo. Por ejemplo, hay que recrear un ndice si los datos del archivo emigran de un disco a otro. Cada entrada en el ndice nombre clave en la fig. Consiste en un nombre clave-inversa y un sealador hacia la primera entrada del ndice valor-clave. Los distintos ndices en una organizacin inversa juntos forman un directorio. Cmo responde un sistema inverso de archivos a las consultas sobre las claves secundarias? Considrese la siguiente consulta en el archivo inverso de la fig. Listar los nombres de los estudiantes cuya edad sea 21 aos. Puede responder rpidamente buscando en el directorio de la manera siguiente: empezar la bsqueda con el ndice nombre-clave para localizar la entrada AGE. Analizar el ndice valor-clave para encontrar el valor 21 en la clave secundaria. Recuperar los registros objetivos del archivo de datos en las direcciones relativas 3y 7. Se dice que se tiene un ndice denso cuando este incluye cada valor clave posible en un conjunto indexado. El ndice valor- clave de la fig. Es denso porque todos los valores de las claves inversas estn incluidos en el ndice. Por ejemplo, los tres nmeros posibles de CLASS en el archivo de datos son 541, 542, y 543. Los tres aparecen en el ndice valorclave. Se dice que una clave inversa est parcialmente indexada si solo algunos de sus valores claves estn incluidos en el ndice valor-clave. Los valores clave que estn indexados son aquellos usados en la condiciones de bsqueda. Un ndice parcialmente indexado se llama ndice disperso. Para un ndice con una gran cantidad de elementos, la bsqueda secuencial sobre el ndice no es muy eficiente. Por esto, un ndice se organiza generalmente como una estructura de varios niveles como es el caso de la estructura multinivel de ndice principal para los archivos secuenciales indexados. El directorio para el archivo de datos de la fig. Esta organizado como un ndice de nivel dos, en el cual el ndice nombre-clave se crea para facilitar la bsqueda en el ndice valor-clave. El grado de inversin se refiere al nivel de totalidad de inversin expresada por el nmero de campos y lo extenso de los valores de los campos invertidos. Una inversin de 0% significa que no se invirti ningn campo clave en un registro. Por otro lado, un archivo con el 100% de inversin tiene invertido cada valor clave de cada campo de datos. En algunos sistemas operativos macro mainframe se dispone de elementos para invertir ndices automticos si se declaran las claves secundarias en un programa, por ejemplo. VSAM de IBM y AAM de Cyber, son capaces de crear ndices inversos sobre la organizacin secuencial indexada y directa. MANEJO DE INDICES Cada vez que se inserta, borra o actualiza un registro, las entradas afectadas de un ndice deben ser modificadas por el sistema para que as, el ndice pueda proporcionar las trayectorias de datos correctas.

3.3 OPERACIONES SOBRE UN ARCHIVO SECUENCIAL.

Los archivos secuenciales son tpicamente utilizados en aplicaciones de proceso de lotes Y son ptimos para dichas aplicaciones si se procesan todos los registros. La organizacin secuencias de archivos es la nica que es fcil de usar tanto en disco como en cinta.

Para las aplicaciones interactivas que incluyen peticione s o actualizaciones de registros individuales, los archivos secuenciales ofrecen un rendimiento pobre.

Normalmente un archivo secuencial se almacena en bloques, en un orden secuencial

Simple de los registros. La organizacin fsica del archivo en una cinta o disco se corresponde exactamente con la ubicacin lgica del archivo. En este caso, el procedimiento para ubicar los nuevos registros en un archivo de pila separado, llamado archivo de registro (log file) o archivo de transacciones. Peridicamente, se realiza una actualizacin por lotes que mezcla el archivo de registro con el archivo maestro para producir un nuevo archivo en secuencia correcta de claves estructura y manejo de archivos secuenciales con el fin de proporcionar una secuencia para los registros, se define una llave para cada uno. Uno o ms atributos se volvern los atributos llave para los registros en los archivos. el conjunto de valores para los atributos llave generalmente identifica el objeto descrito por el registro; es decir, el nmero de placa de un automviles el nombre de une persona. Se espera poder identificar los registros en forma nica con base en sus llaves. entonces los registros en el archivo se conservan en el orden de acuerdo con los atributos llave. Un atributo llave proporcionara la llave primaria de clasificacin de alto orden y si este atributo no identifica en forma nica al objeto, entonces puede identificarse atributos llave secundarios o inferiores hasta que el orden se determine por completo.

La lectura serial del archivo en este orden puede realizarse ahora en forma secuencial. Algunas veces se agregan campos artificiales conteniendo nmeros de secuencia o identificacin, para obtener atributos llave nicos. La participacin del archivo, analizada con la descripcin de archivo de apilo ahora se realiza de forma explcita: Se selecciona el nmero de identificacin para que sea nico para todos los registros y parta al archivo en n registros individuales. Desafortunadamente, puede resultar necesaria una computacin separada para determinar el nmero de identificacin perteneciente al dato deseado.

Con estas restricciones estructurales y mayor eficiencia en la atencin en el procesamiento orientado en forma tabular, se pierde mucha flexibilidad.

No es fcil colocar las actualizaciones en un archivo secuencial. el hecho de que determine el atributo llave exclusivamente la secuencia de los registros introduce una simetra que hace que los archivos secuenciales resulten inadecuados para recuperar informacin general.

El procedimiento comn para manejarisercion en un archivo secuencial consiste en recolectarlas en un apilo, el archivo de bitcora de transacciones, hasta que el apilo resulte demasiado grande para realizar entonces una actualizacin por lote. esto se hace reorganizando el archivo.

En este momento el archivo de bitcora de transacciones se clasifica desacuerdo con las mismas llaves utilizadas para el archivo principal y las modificaciones se unen en una nueva copia del archivo secuencial.

ARCHIVOS SECUENCIALES

Existen adems muchas operaciones asociadas a archivos, las ms elementales son:

1.- Creacin de Archivo.- En este proceso se pretende solamente crear un archivo nuevo en disco, con su nombre, tipo y especialidad de almacenamiento de datos apropiado.

2.- Apertura de Archivos.- En este caso se pretende abrir un archivo ya existente en disco para procesarlo, ya sea cargar o grabar datos en sus registros, o leer algn registro en especial para mandarlo a una variable de cualquier tipo.

No confundir creacin con apertura, creacin es un proceso que solo se ejecuta una sola vez en la vida de un archivo, mientras que apertura, siempre se est realizando por los programas especializados en algn proceso.

3.-Cierre de archivos: Es la operacin ms importante en cualquier programa que maneje archivos, o se cierra el archivo como ltima instruccin del programa o se ver el anuncio ABORT, RETRY, FAIL.

98, /s, scandisk

4.-Altas en archivo.- En este proceso se carga una clase en memoria con sus datos pertinentes y se graba la clase en el archivo en disco.

5.-Lectura de archivo.- En este proceso, se abre el archivo y se manda el registro de disco, a una clase en memoria para su procesamiento.

6.- Consulta de archivos: En este proceso se pretende desplegar todos los registros del archivo en disco a la pantalla, ya sea consola o mejor an, a una pagina HTML

7.-Busqueda en archivos: Una de las operaciones ms comunes, consiste en que el usuario pide toda la informacin de algn rengln en disco, proporcionando la informacin de algn campo, generalmente el campo clave de la clase.

8.- Filtros.- En este proceso el usuario est interesado en algn conjunto de renglones con caractersticas comunes (condicin), por ejemplo todos los alumnos de sisJAVA TEMA s, o todos los empleados que ganen ms de $500.00 pesos, o todos los clientes que sean de Tijuana, etc.

9.-Modificaciones de registros o archivos: Problema muy comn, donde los datos originales ya grabados se tienen que cambiar o actualizar, por ejemplo el nombre no era Juan es Juana, o la calificacin no es 100 es 20, etc.

10.- Bajas de registros: tambin muy comn este proceso, por ejemplo el alumno ya egreso, el cliente huyo, etc.

S-ar putea să vă placă și