🎃 Grandes descuentos en libros en línea, eformaciones y vídeos*. Código CALABAZA30. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí

Introducción a los archivos

Introducción

Un sistema de tratamiento informático de los datos no puede disponer siempre, en variables definidas, de todas las entidades en la que interviene. Un ordenador, por ejemplo, no puede colocar siempre todos los datos en la memoria central. Eso sucede cuando el volumen de datos es importante o precisamente cuando es necesario garantizar la persistencia de la información que representa. Entonces se utilizan unidades periféricas de grabación para guardar y recuperar los datos. Este capítulo estudia una forma particular de organización y de estructuración que permite la persistencia de los datos implicados en un tratamiento algorítmico: los archivos. El pretexto es que la forma que adopta esta organización impone métodos y operaciones aplicables específicos.

En la segunda sección se explican algunos conceptos introducidos de manera rápida sobre la organización de los soportes externos de información de un sistema informático y sobre los modos de acceso a esta información. La tercera sección describe un archivo de organización secuencial y los tratamientos de lectura y de escritura en un archivo de este tipo. La siguiente sección da algunos elementos sobre los archivos de organización directa y acceso selectivo.

Conceptos básicos

Esta sección introduce rápidamente algunos conceptos básicos sobre la organización y el acceso a la información guardada en un archivo informático. Se divide en tres partes. La primera es una introducción que define algunos elementos del vocabulario del dominio. La segunda parte presenta las organizaciones habituales. La tercera parte muestra cómo se define una asociación, entre un archivo guardado en soporte externo y una estructura algorítmica de datos, que permitirá describir las operaciones de acceso a la información guardada.

1. Archivos y artículos

Se considera un conjunto de entidades particulares, como los clientes de una empresa, los números primos inferiores a un límite dado, una colección de CD de audio, etc. Cada una de las entidades de las que se trata, un cliente, un CD, etc., está caracterizada por una colección de información. Así, por ejemplo, un CD estará caracterizado por un título, intérpretes, títulos de canciones si se trata de un CD de música variada, etc. En el capítulo «Estructuras elementales» vimos que una característica de este tipo habitualmente se llama un atributo. Es la unidad de información significativa para una entidad. En el contexto de este capítulo, se llama artículo lógico a una colección de este tipo de atributos.

Definición: artículo lógico

Se llama artículo lógico a una colección de atributos relativos a una entidad particular.

Para organizar la persistencia de un conjunto de artículos lógicos que tienen características en común, se agrupan en un archivo. Cuando este archivo se guarda en un soporte externo, a menudo un soporte magnético u óptico, se habla de archivo físico y entonces un artículo se llama artículo físico o registro.

Definiciones: archivo lógico, archivo y artículo físico

Se llama archivo lógico a una colección de artículos lógicos y archivo físico a la copia del archivo lógico guardada en un soporte externo que garantiza su persistencia.

Se llama artículo físico o registro a la copia del artículo lógico dentro del archivo físico

Cuando...

Organización secuencial

Esta sección presenta los algoritmos elementales que permiten definir las operaciones básicas en un archivo lógico que toma como modelo un archivo físico de organización secuencial. La primera parte es una introducción que precisa el contexto. La segunda parte muestra cómo recorrer un archivo para leer la información que contiene. La siguiente parte hace lo mismo para la escritura en el archivo. La última parte muestra cómo actualizarlo.

1. Introducción

Un archivo físico de organización secuencial está formado por una serie de registros colocados consecutivamente sobre un soporte externo. Son tales que, para acceder a un registro dado e, es necesario acceder primero y sucesivamente a todos los registros que preceden a e en el soporte. La siguiente figura ilustra este tipo de organización.

images/10_02.png

Normalmente, los registros de un archivo están compuestos. En la figura anterior, hemos representado cuatro registros y, en la parte inferior del esquema, una ampliación muestra la estructura de uno de ellos. Cada registro está compuesto de cinco campos: NÚMERO, APELLIDO-NOMBRE, DIRECCIÓN, CÓDIGO POSTAL, CIUDAD. Entonces se puede definir un artículo que compone el archivo lógico asociado después de la apertura.

Así, por ejemplo, para el archivo de clientes de la figura anterior, el tipo correspondiente podría ser:

tipo  
    CLIENTE  
estructura 
    número      : ENTERO # Identificador del cliente 
    identidad   : IDENTIDAD 
    dirección   : CADENA 
    códigoPostal: CÓDIGO_POSTAL 
    ciudad      : CADENA  
fin CLIENTE 

Los tipos IDENTIDAD y CÓDIGO_POSTAL ya se han definido en el capítulo «Estructuras elementales». En lo anterior, el artículo es la unidad elemental de acceso a un archivo lógico.

Un archivo vacío, que no contiene ningún registro, pero que existe como tal en el soporte externo es un archivo reducido a la marca de fin de archivo.

Un archivo de organización secuencial se puede guardar...

La organización directa y el acceso selectivo

En algunas aplicaciones, cada artículo contiene un atributo particular que lo identifica de una manera única en el conjunto de los artículos que componen un archivo. Un atributo de este tipo se llama clave o identificador.

Definición: clave de un artículo

Se llama clave de un artículo de un archivo a un atributo que identifica este artículo en el archivo de una manera única.

Así, dos artículos distintos tienen claves distintas y, al contrario, dos claves distintas identifican a dos artículos distintos. En esencia, esta situación es diferente de la que convierte un atributo K de un archivo con organización secuencial en una clave que permite ordenar los artículos. En efecto, en este caso, podrían existir varios artículos con el mismo valor para el atributo K que, por lo tanto, no es una clave de identificación en el sentido de la definición anterior. 

Cuando el archivo se implanta en un soporte direccionable y, además, una función permite establecer una correspondencia entre la clave de un artículo y la dirección de registro asociada a este artículo, se puede acceder a los registros de un archivo directamente, sin tener que recorrer todos los que le preceden en el soporte. En un soporte direccionable, cada ubicación está localizada por una dirección. Sin embargo, en algoritmia, se considera que cada artículo está identificado por una dirección relativa al inicio del archivo y no con relación a un soporte físico programable. La correspondencia entre una dirección relativa al inicio del archivo y la dirección real en el soporte se establece mediante las primitivas de acceso al soporte. Estas primitivas las proporciona...

Problemas

Esta sección plantea problemas haciendo intervenir archivos. Primero se propone un ejercicio de cálculo con estadísticas de importación/exportación. La sección siguiente muestra cómo utilizar las respuestas a un cuestionario de actitud y la tercera sección hace lo mismo para las respuestas a una encuesta de utilidad pública. Finalmente, la última sección plantea un problema difícil que consiste en determinar anagramas de las palabras de un diccionario. De hecho, todos estos problemas solo son pretextos para escribir algoritmos. Pero mientras que antes los algoritmos eran independientes, aquí deben componerse para obtener un análisis completo del problema. Además, los problemas no se plantean de una manera académica. A menudo necesitan ser especificados o completados. Así, ninguno de los ejercicios da indicaciones sobre las estructuras que hay que implementar y todos son vagos sobre la forma de los datos que hay que tratar. En particular, nunca se especifica el tipo de archivo utilizado. Entonces hay que hacer un esfuerzo de análisis y de reflexión para obtener una solución posteriormente utilizable en programación.

1. Estadísticas de importación/exportación

Disponemos de información relacionada con las importaciones y las exportaciones de un conjunto de países y queremos examinar esta información para extraer de ella una determinada cantidad de indicadores. La información relativa a cada país está compuesta por los importes de sus importaciones y de sus exportaciones, según 5 sectores económicos como máximo, expresados en millones de euros. Los países y los sectores económicos están identificados por números enteros. El esquema conceptual de la figura siguiente muestra las asociaciones entre los países afectados y los sectores económicos estudiados.

images/10_06.png

Este esquema se lee de la siguiente manera. Un país importa en una cantidad de sectores económicos estudiados que va de 0 a 5. Para cada par (país; sector), la asociación IMPORTAR da el importe de las importaciones. Cada sector económico da lugar a importaciones para una cantidad de países de 1 a varios. La parte del esquema que afecta a las exportaciones se lee de la misma manera.

La información...

Resumen

Los archivos permiten garantizar la persistencia de los datos. Para ello, están guardados en soportes externos de donde se pueden recuperar. Este capítulo ha presentado la organización y el acceso secuencial, y luego algunos elementos sobre la organización y el acceso selectivo. Algunos problemas permiten ejercitarse con el algoritmo que usa estos archivos.