P. 1
Archivo Secuencial Indexado

Archivo Secuencial Indexado

|Views: 3.545|Likes:

More info:

Published by: Guillermo José Martínez Carmona on Nov 04, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

07/17/2013

pdf

text

original

Ministerio de Educación y Cultura

Centro Regional de Educación Saturio Ríos

Archivo Secuencial Indexado

Algorítmica III

Integrantes:
Guillermo Martínez Gustavo Lublín Roque Vera Oscar Arias

San Lorenzo | Paraguay Año 2008

los registros se organizan en secuencia basada en un campo clave pero se agregan dos características: un índice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. con varios ejemplos de aplicación en pseudocódigo.Introducción En el siguiente trabajo explicamos las la definición de archivo secuencial cuyas características básicas son las mismas que las de los archivos secuenciales normales. . explicamos en qué consisten estos archivos aparte de las operaciones consulta. altas. bajas y modificaciones que se pueden realizar con dichos archivos.

en promedio. Para encontrar el registro se necesitarán. Si se cuenta con un archivo de índices con 1000 registros. momento en que se reanuda el acceso donde se abandonó en el archivo principal. no visible para la aplicación. El archivo de índices es un archivo secuencial simple. con lo cual se logrará 1 reducir aún más la cantidad de accesos. con las claves distribuidas de manera uniforme. Para agregar registros al archivo se utiliza el archivo de desbordamiento. Definición. 2 n Archivo Principal Archivo de Desbordamiento . Para buscar un registro específico se busca por el campo clave en el archivo de índices hasta encontrar el mayor valor de clave que sea igual o menor al valor buscado. Cada registro del archivo principal tiene un campo adicional. La búsqueda continúa en el archivo principal a partir de la posición indicada por el puntero.000 accesos a 1. Cuando se encuentra un puntero hacia el archivo de desbordamiento la búsqueda continúa en el mismo hasta encontrar un puntero nulo. Supongamos un archivo secuencial con 1. Cada cierto tiempo el archivo de desbordamiento se combina con el principal.000. en promedio. Cuando se realiza una búsqueda se procesan los registros del archivo principal en secuencia. que es un puntero al archivo de desbordamiento.Archivo Secuencial Indexado Conceptos. El archivo de desbordamiento se ubica en la dirección de un puntero desde su registro precedente. La búsqueda de un registro particular implicará. El índice proporciona una capacidad de búsqueda para llegar rápidamente a las proximidades de un registro deseado.000. La estructura secuencial indexada más simple utiliza un único nivel de indexación.000 de registros. Estos archivos mantienen las características básicas de los archivos secuenciales: los registros se organizan en secuencia basada en un campo clave pero se agregan dos características: un índice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento (ovarlo). 500 accesos al archivo de índices y otros 500 accesos al archivo principal. 500.000 accesos a registros. Cada registro de este archivo consta de dos campos: un campo clave y un puntero al archivo principal. Pueden utilizarse múltiples niveles de indexación. Es decir que pasamos de 500.

en un orden secuencial simple de los registros. las informaciones de este archivo tienen que haber sido almacenadas sobre un soporte y ser utilizables. éste tiene que existir. estructura. La organización secuencial de archivos es la única que es fácil de usar tanto en disco como en cinta. Clasificación: Reubicación de los registros de tal forma que queden ordenados según determinados criterios. ser el resultado de un cálculo o ambas cosas a la vez. Esta clasificación se realizará de acuerdo con el valor de un campo . Para las aplicaciones interactivas que incluyen peticiones o actualizaciones de registros individuales. Las operaciones que se realizan son: Creación: Escritura de todos sus registros. es decir. Un archivo puede ser creado por primera vez en un soporte. rápido y eficaz tratamiento del archivo. de tal modo que sea posible realizar las siguientes operaciones con sus registros: Consulta del contenido de un registro. el procedimiento para ubicar los nuevos registros en un archivo de pila separado. Es la operación que permite al usuario acceder al archivo de datos para conocer el contenido de uno. Periódicamente. varios o todos los registros. La creación exige organización. Consulta: Lectura de todos sus registros. Actualización: Inserción supresión o modificación de algunos de sus registros. En este caso. Normalmente un archivo secuencial se almacena en bloques.Operaciones Indexados De Archivos Secuenciales Los archivos secuenciales son utilizados en aplicaciones de proceso de lotes y son óptimos para dichas aplicaciones si se procesan todos los registros. se realiza una actualización por lotes que mezcla el archivo de registro con el archivo maestro para producir un nuevo archivo en secuencia correcta de claves. Modificación de un registro. Es la operación que permite tener actualizado (puesto al día) el archivo. proceder de otro previamente existente en el mismo o diferente soporte. transferencia del archivo del soporte antiguo al nuevo. llamado archivo de registro o archivo de transacciones. La organización física del archivo en una cinta o disco se corresponde exactamente con la ubicación lógica del archivo. Supresión de un registro existente. Es la primera operación que sufrirá el archivo de datos. localización o reserva de espacio en el soporte de almacenamiento. los archivos secuenciales ofrecen un rendimiento pobre. Para utilizar un archivo. Una operación muy importante en un archivo es la clasificación u ordenación. Implica la elección de un entorno descriptivo que permita un ágil. Inserción de un registro nuevo en el archivo.

específico. . pudiendo ser ascendente (creciente) o descendente (decreciente): alfabética o numérica.

.Borrado: Eliminado total del archivo. zonas de sinónimos. lo que hace a la operación de acceso al registro cada vez más lenta. se modifican con el paso del tiempo. acceder que ocupaba. Reorganización de un archivo: Las operaciones sobre archivos modifican la estructura inicial o la óptima de un archivo. Estallido de un archivo: Es la operación de obtener varios archivos a partir de un mismo archivo inicial. no se podrá a ninguno de sus registros. Cuando se destruye (anula o borra) un éste ya no se puede utilizar y. . a fin de obtener una nueva estructura lo más óptima posible. enlaces (punteros). zonas de desbordamiento. Los índices. en inglés). Es la operación inversa a la creación de un (kill. La reorganización suele consistir en la copia de un nuevo archivo a partir del archivo modificado. etc. dejando libre el espacio del soporte archivo archivo. por consiguiente.

la existencia de varios índices enlazados se denomina nivel de indexación. el índice contiene la calve del último registro y la dirección de acceso al primer registro del bloque. Área de índices: es una tabla que contiene los niveles de índices. cada archivo secuencial indexado consta de un archivo índice y un archivo de datos. al índice de un libro. si fuese necesario. - - El área de índices es equivalente. Ventajas de indexados Rápido acceso.Características de los Archivos Secuenciales Indexados. En ella se refleja el valor de la clave identificadora más alta de cada grupo de registros del archivo y la dirección de almacenamiento del grupo. En una organización de computadora. un índice del archivo para soportar los accesos aleatorios y un archivo de desbordamiento. Un archivo está organizado en forma secuencial indexada si: El tipo de sus registros contiene un campo clave identificador. En esencia. para las actualizaciones. Área de desbordamiento: utilizada. las letras y las cabeceras de páginas se guardaran en un archivo de índice independiente de las entradas del diccionario (archivo de datos). en su función. Un archivo en organización secuencial indexada consta de las siguientes partes: Área de datos o primaria: contiene los registros en forma secuencial y está organizada en secuencia de claves sin dejar huecos intercalados. el nivel superior para las letras iniciales y el nivel menor para las cabeceras de página. los archivos secuenciales . Estos archivos mantienen las características básicas de los archivos secuenciales que son: los registros se organizan en secuencia basada en un campo clave pero se agregan dos características. Los registros están situados en un soporte direccionable por el orden de la posición y el valor de la clave. El diccionario es un ejemplo típico de archivo secuencial indexado con dos niveles de índices. Por consiguiente.

Desventajas Desaprovechamiento del espacio por quedar huecos intermedio cada vez que se actualiza el archivo. Los soportes de acceso secuencial no pueden utilizarse.- El sistema de gestión de archivos se encarga de relacionar la posición de cada registro con su contenido mediante la tabla de índices. los discos magnéticos. Se necesita espacio adicional para el área de índices. ya que no dispone de direcciones para sus posiciones de almacenamiento. . Los soportes que se utilizan para esta organización son los que permiten el acceso directo.

Ejemplos de utilización en pseudocódigos Consulta Tenemos un fichero DATOS.20 imprime "Pulse RETURN para continuar" detener-listado fin si res=espacios(1) hacer mas fin mientras cerrar DATOS cerrar índices fin del programa Observación: para buscar un dato en un archivo secuencial indexado basta con “buscar nom_variable”.20 imprime "No está" en 16. Variables num= introducir el CI a buscar res= para buscar más datos Pseudocódigo res="S" abrir DATOS asociado a CI mientras res="S" num=0 cls en 8. DIRECCIÓN. NOMBRE. Crear un programa que nos permita consultar un registro siempre que queramos. a buscar: " en 8. APELLIDOS. en este caso CI.20 imprime "C.55 imprime "Dirección: ". apellidos en 14.DAT que está indexado por el campo DNI y tiene la siguiente estructura: CI.I. ciudad else en 12. se buscará el valor de esa variable en la columna asociada al archivo. direccion en 16. que está asociado a DATOS y función “found ()” que devuelve un valor True o False de acuerdo a si encontró o no el dato en la columna del archivo.38 introduce num buscar num si found () en 10.69 imprime "Ciudad: ". .12 imprime "Nombre: ". CIUDAD. nombre en 12.28 imprime "Apellidos: ".

.

10 imprime "Alta duplicada" en 15.: ". Pseudocódigo res="S" abrir DATOS asociado a CI.5 introduce "Nombre: ".I.Altas Hacer un programa que nos permita dar altas en el fichero DATOS. res=para seguir introduciendo más registros.DAT. num buscar num si found() en 10.5 introduce "Dirección: ". APELLIDOS y CIUDAD.5 introduce "Apellidos: ". direccion en 13. apellidos en 11. Variables num=para introducir el ci del nuevo registro. nombre en 9.10 imprime "Pulse ENTER para continuar" detener-listado else en 7. controlando las altas duplicadas.5 introduce "Ciudad: ". ciudad ci=num posicionarse al final del fichero de datos escribir registro fin si res= "" hacer MAS fin mientras cerrar fichero de DATOS cerrar fichero de indices fin . CIUDAD hacer mientras res="S" CLS en 5. APELLIDOS.10 introduce "C. que está indexado por los campos CI.

10 imprime "Pulse ENTER para continuar" detener-listado fin si res="" hacer MAS fin mientras cerrar fichero de DATOS cerrar fichero de indices fin . ciudad res="" mientras res <> "S" and res <> "N" res="" en 20. apellidos en 11. que está indexado por los campos CI.44 introduce "Deseas borrarlo (S/N): ".I. CIUDAD mientras res="S" cls en 5.DAT.5 introduce "Apellidos:". nombre en 9.5 introduce "Nombre: ".5 introduce "Ciudad: ".Bajas Hacer un programa que nos permita dar bajas en el fichero DATOS.10 imprime "C.5 introduce "Dirección: ".: " en 5. Variables num=para introducir el ci a dar de baja res=para seguir introduciendo más registros Pseudocódogo res="S" abrir DATOS asociado a CI. direccion en 13.10 imprime "Baja inexistente" en 16.15 introduce num buscar num si found() en 7. controlando las bajas inexistentes.APELLIDOS y CIUDAD. res fin mientras si res="S" or res="s" borrar registro fin si else en 12. APELLIDOS.

Variables fi=controlador de las filas Pseudocódigo Abrir DATOS asociado a APELLIDOS fi=22 hacer mientras no sea EOF() si fi=22 hacer CABECERA fin del if en fi.DAT. que está indexado por el campo APELLIDOS. CIUDAD Hacer un programa que nos permita listar. APELLIDOS. DIRECCION. NOMBRE.2 imprime ci en fi.20 imprime "Pulse ENTER para continuar" detener-listado fi=22 fin si leer siguiente registro fin mientras cerrar DATOs cerrar indices fin .55 imprime direccion en fi.28 imprime apellidos en fi.69 imprime ciudad fi=fi+1 si fi=20 en 22.12 imprime nombre en fi. controlado el salto de página cuando llegue a la línea 20 (veinte). por pantalla. cuyos campos son: CI.Listado Tenemos el fichero DATOS. todos los registros del fichero.

.Conclusión Este trabajo nos ha sido de mucha utilidad ya que durante su realización comprendimos la enorme ventaja de los archivos secuenciales indexados y como utilizarlos. Ya que con estos conocimientos podremos seguir avanzando en el largo camino de la programación. Esperamos que este trabajo que fue realizado con mucho esfuerzo y esmero por parte de los integrantes del grupo sea del agrado y provecho de todo aquel que guste de leerlo.

Bibliografía Metodología de la Programación a través de Pseudocódigo.edu. Mariella Gutiérrez Valenzuela. M. .geocities. Editorial McGraw-Hill.mx Algoritmos y Estructuras de Datos. Angel Rodríguez Almeida.com www. www.itnuevolaredo.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->