+ All Categories
Home > Engineering > Archivos secuenciales indexados

Archivos secuenciales indexados

Date post: 07-Feb-2017
Category:
Upload: jose-marroquin
View: 101 times
Download: 1 times
Share this document with a friend
17
ARCHIVOS SECUENCIALES INDEXADOS José Fernando Marroquín Rosa 0907-14-1927 Centro Universitario de Jalapa Programación I 01 de abril de 2016
Transcript
Page 1: Archivos secuenciales indexados

ARCHIVOS SECUENCIALES

INDEXADOSJosé Fernando Marroquín Rosa

0907-14-1927Centro Universitario de Jalapa

Programación I01 de abril de 2016

Page 2: Archivos secuenciales indexados

ARCHIVO SECUENCIAL INDEXADO Los registros se organizan en una secuencia basada en un campo clave presentando dos características, un índice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. El índice proporciona una capacidad de búsqueda para llagar rápidamente 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 más 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 igual o precede al valor deseado de la clave, la búsqueda continua en el archivo principal a partir de la posición que indique el puntero.

José Fernando Marroquín Rosa0907-14-1927

Page 3: Archivos secuenciales indexados

ARCHIVO SECUENCIAL INDEXADO 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, también se añade al archivo de desbordamiento. El registro del archivo principal que precede inmediatamente al nuevo registro según la secuencia lógica se actualiza con un puntero del registro nuevo en el archivo de desbordamiento, si el registro inmediatamente anterior está también en el archivo de desbordamiento se actualizará el puntero en el registro. Para procesar secuencialmente un archivo completo los registros del archivo principal se procesarán en secuencia hasta encontrar un puntero al archivo de desbordamiento, el acceso continúa en el archivo de desbordamiento hasta que encuentra un puntero nulo, entonces renueva el acceso donde se abandonó en el archivo principal.

José Fernando Marroquín Rosa0907-14-1927

Page 4: Archivos secuenciales indexados

Las características más relevantes de un archivo indexado, son las siguientes:• El diseño del registro tiene que tener un campo, o combinación de campos, que

permita identificar cada registro de forma única, es decir, que no pueda haber dos registros que tengan la misma información 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.• Permiten utilizar el modo de acceso secuencial y el modo de acceso directo

para leer la información guardada en sus registros. El modo de acceso directo se hace conociendo el contenido del campo clave del registro que queremos localizar. Con esa información el sistema operativo puede consultar el índice y conocer la posición del registro dentro del fichero.• Solamente se puede grabar en un soporte direccionable. Ej.: disco magnético.

Si esto no fuera así no podría emplear el acceso directo

José Fernando Marroquín Rosa0907-14-1927

Page 5: Archivos secuenciales indexados

ESTRUCTURA DE UN ARCHIVO SECUENCIAL INDEXADO.Se utiliza este tipo de organización de archivo cuando

existe la necesidad tanto de accesar los registros secuencialmente, por algún valor de llave, como de accesarlos individualmente. Un archivo secuencial indexado proporciona la combinación de tipos de acceso que manejan un archivo secuencial y un archivo relativo o de acceso directo.En este tipo de organización de archivos se dispone de una tabla en que aparecen ordenados secuencialmente los números de la clave del archivo y asociados a cada uno de ellos de da la dirección del registro correspondiente.

José Fernando Marroquín Rosa0907-14-1927

Page 6: Archivos secuenciales indexados

• Consiste en que los archivos están organizados secuencialmente; sin embargo, es posible acceder directamente a los registros. La organización secuencial-indexada de un archivo brinda facilidades para acceder a los registros de ambas formas, secuencial y directamente. Los registros se almacenan en la secuencia física usual por la clave primaria. Además, se almacena en el disco el índice de la localización del registro. Esto permite el acceso secuencial a los registros para aquellas aplicaciones que realicen una gran cantidad de actualizaciones y, por otra parte, el acceso directo de acuerdo con las solicitudes de los usuarios.

José Fernando Marroquín Rosa0907-14-1927

Page 7: Archivos secuenciales indexados

VENTAJAS•Permite el acceso secuencial.•Permite el acceso directo a los registros. •Se pueden actualizar los registros en el mismo fichero, sin necesidad de crear un fichero nuevo de copia en el proceso de actualización.

José Fernando Marroquín Rosa0907-14-1927

Page 8: Archivos secuenciales indexados

DESVENTAJAS• Ocupa más espacio en el disco que los ficheros

secuénciales, debido al uso del área de índices.• 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.• Solo se puede utilizar soportes direccionables.• Obliga a una inversión económica mayor, por la

necesidad de programas y, a veces, hardware más sofisticado.

José Fernando Marroquín Rosa0907-14-1927

Page 9: Archivos secuenciales indexados

AREAS DEL ARCHIVO SECUENCIAL INDEXADO

• Área de Datos: Contiene los registros secuenciales, esta ordenados alfabéticamente o alfanuméricamente y no deja espacios. • Área de índice: Los niveles de índice están

contenidos en una tabla, si existieran varios índices enlazados se denomina nivel de indexación• Área de Desbordamiento o Excedentes: Esta área

es utilizada para realizar actualizaciones si ello es necesario

José Fernando Marroquín Rosa0907-14-1927

Page 10: Archivos secuenciales indexados

OPERACIONES DE ARCHIVOS SECUENCIALES

Existen además muchas operaciones asociadas a archivos, las más elementales son: 1. Creación 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 algún registro en especial para mandarlo a una variable de cualquier tipo. No confundir creación con apertura, creación 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 algún proceso.

José Fernando Marroquín Rosa0907-14-1927

Page 11: Archivos secuenciales indexados

3. Cierre de archivos. Es la operación más importante en cualquier programa que maneje archivos, o se cierra el archivo como última instrucción del programa o se verá el anuncio ABORT, RETRY, FAIL. 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 aún, a una página HTML.

José Fernando Marroquín Rosa0907-14-1927

Page 12: Archivos secuenciales indexados

7. Búsqueda en archivos. Una de las operaciones más comunes, consiste en que el usuario pide toda la información de algún renglón en disco, proporcionando la información de algún campo, generalmente el campo clave de la clase. 8. Filtros. En este proceso el usuario está interesado en algún conjunto de renglones con características comunes (condición), por ejemplo, todos los alumnos de “sisJAVA TEMA s”, o todos los empleados que ganen más de $500.00 pesos, o todos los clientes que sean de “Tijuana”, etc. 9. Modificaciones de registros o archivos. Problema muy común, donde los datos originales ya grabados se tienen que cambiar o actualizar, por ejemplo, el nombre no era “Juan” es “Juana”, o la calificación no es 100 es 20, etc.10. Bajas de registros. también muy común este proceso, por ejemplo, el alumno ya egreso, el cliente huyo, etc.

José Fernando Marroquín Rosa0907-14-1927

Page 13: Archivos secuenciales indexados

REPRESENTACIÓN DE INDICESEl 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 recuperación 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 señaladores a los registros de datos. Un señalador Puede contener en una dirección relativa, una dirección física o una clave principal de los registros objetos.DIRECCION RELATIVA El campo señalador en el índice valor clave de la fig. Contiene direcciones relativas. DIRECCION FISICA El campo señalador puede contener direcciones físicas, las cuales pueden usarse para accesar registros directamente sin necesidad de traducir la dirección. 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.

José Fernando Marroquín Rosa0907-14-1927

Page 14: Archivos secuenciales indexados

CARACTERISTICAS SOBRE UN ARCHIVO SECUENCIAL.•

Los archivos secuenciales son típicamente utilizados en aplicaciones de proceso de lotes Y son óptimos para dichas aplicaciones si se procesan todos los registros. La organización secuencial de archivos es la única que es fácil de usar tanto en disco como en cinta. • Para las aplicaciones interactivas que incluyen peticiones 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 organización física del archivo en una cinta o disco se corresponde exactamente con la ubicación lógica 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.

José Fernando Marroquín Rosa0907-14-1927

Page 15: Archivos secuenciales indexados

CARACTERISTICAS SOBRE UN ARCHIVO SECUENCIAL.

Uno o más atributos se volverán 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 número de placa de unos automóviles 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 clasificación 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.

José Fernando Marroquín Rosa0907-14-1927

Page 16: Archivos secuenciales indexados

MANTENIMIENTO DE UN ARCHIVO SECUENCIAL INDEXADOAl transcurrir un determinado tiempo de operación la estructura

tiende a saturarse, se requiere entonces realizar un reacomodo de los datos contenidos en el área de desborde, trasladándolos hacia el archivo principal, teniendo que ajustar por supuesto el tamaño de los bloques y en consecuencia los apuntadores en el índice. El mantenimiento puede darse por cualquiera de estos criterios: 1. Tiempo transcurrido 2. Tamaño del área de desborde (entre 25 y 30% del tamaño del archivo principal) 3. La eliminación de registros en tiempo de operación se recomienda en forma lógica; es decir, mediante marcas que indiquen si un registro está activo o no en el proceso de mantenimiento se realizará el reacomodo de los registros suprimiendo así los registros marcados para la eliminación.

José Fernando Marroquín Rosa0907-14-1927

Page 17: Archivos secuenciales indexados

José Fernando Marroquín Rosa0907-14-1927

Archivos secuenciales indexados


Recommended