miércoles, 6 de junio de 2007

Instituto Tecnológico de Tepic (continuación)

Tutorial Administración de Archivos
Dispositivos de Almacenamiento Externo
Ing. Maximino González González
Unidad III
Organización de Archivos Secuenciales.
La manera básica de organizar un conjunto de registros, que forman un archivo, es utilizando una organización secuencial. En un archivo organizado secuencialmente, los registros quedan grabados consecutivamente cuando el archivo se usa como entrada.

Un archivo organizado secuencialmente es un conjunto de registros lógicamente relacionados cuya secuencia de acceso está determinada por su ordenamiento. Los registros deben ser grabados consecutivamente cuando el archivo es creado, y deben ser leídos de la misma manera cuando es usado posteriormente como entrada.
Los requerimientos de proceso determinan el orden adecuado para la orden de los registros de un archivo secuencial. Por ejemplo para generar un directorio telefónico el archivo que contenga tal información deberá ordenarse con base al apellido y nombre de la persona, porque así se necesita el reporte de los datos. Sin embargo, si se requiere tener un directorio telefónico ordenado de acuerdo a la zona postal o por su dirección, deberá de existir dos archivos, que podrán contener la misma información pero ordenada de forma diferente, por lo que los sistemas de información que se construyen utilizando esta organización, tienden a duplicar registros. Esto se podría decir que es una desventaja de la organización de archivos secuenciales. Los sistemas de información que se construyen utilizando archivos secuenciales tienden a duplicar registros por los archivos que estén en orden diferente. Por lo regular no todos los archivos se conservan; muchos se consideran como temporales y se borran después de que se han utilizado como entrada al programa de aplicación y la información contendida se ha explotado para un propósito particular.
Debido a que los registros de un archivo secuencialmente deben de accesarse constantemente se utilizan con mayor frecuencia en procesamiento por lotes (que pueden tomar varios registros a la ves) que en procesamiento interactivo.
El desempeño de los archivos secuenciales depende de... Factor de bloqueo Longitud del archivo Selección de la llave.
Actualización de archivos secuenciales. Un archivo maestro representa un panorama estático de algún aspecto de una empresa. Sin embargo muchos de los aspectos de dicha organización no son estáticos, sino que continuamente ocurren cambios internos y/o externos que afectan directa o indirectamente a la empresa, como puede ser la contratación de personal, despidos, los ajustes de precios, etc. Para que un archivo pueda reflejar un estado actual lo más confiable posible, nuestro archivo debe ser actualizado.
Ventajas y Desventajas La ventaja más importante de la técnica de organización secuencial de archivos es la capacidad de acceso al "siguiente" registro rápidamente: Mientras que el patrón de acceso a un archivo secuencial se conforme al ordenamiento de registros en el archivo, los tiempos de acceso serán muy buenos. Sin embargo, si el patrón de acceso al programa no se conforma al patrón de ordenamiento de los registros, entonces la eficiencia del programa puede ser terrible. Otra ventaja de los archivos de organización secuencial es que son muy sencillos de usar y aplicar.
Almacenamiento De Archivos Secuenciales. Los archivos secuenciales pueden almacenarse en dispositivos de acceso serial o directo. Con frecuencia los dispositivos de acceso serial son considerablemente menos caros que los dispositivos de acceso directo en un sistema de cómputo, pero de hecho, los dispositivos de almacenamiento de acceso directo en una computadora siempre proporcionan mayor capacidad de almacenamiento y acceso más rápido que los dispositivos de acceso serial.
Declaración De Archivos Secuenciales. Casi todos los lenguajes proporcionan facilidades para declarar archivos secuenciales a continuación te presentamos un ejemplo en Pascal que bien puede ser aplicado a Delphi.
Program actualiza – maestro (reporte, movimientos, maestro – ent, maestro - salida); Type registro – maestro = Record Número – empleado: 1...9999 Nombre – empleado: packed array [1..25] of char; Departamento: packed array [1..5] of char; ... end; registro – movimiento = record tipo – movimiento: A,D; detalle: packed array [1..81] of char; end;
var reporte:text; movimiento: file of registro – movimiento; maestro – ent, maestro-sal: file of registro – maestro;
Creación de un archivo secuencial. La creación de un archivo secuencial incluye la escritura de registros en una secuencia deseada dentro del medio de almacenamiento. La creación de un archivo secuencial de transacciones incluye la tarea de recolectar datos, convertir los datos a una forma legible para la máquina, editar los datos, convertir los movimientos rechazados y ordenar los datos editados.

Archivos de Reporte.
La creación de un archivo de reporte sigue el siguiente algoritmo:


Recuperación De Información De Archivos Secuenciales.
Los registros deben ser recuperados de un archivo secuencial en orden consecutivo. El orden en el cual los registros fueron grabados en el archivo, determina el orden en el cual los registros pueden recuperarse. De hecho, en realidad se hace todo lo contrario: el orden deseado para recuperar los registros debe dictar el orden en el cual deben grabarse.
La recuperación de información de un archivo secuencial puede clasificarse, ya sea en generadora de reportes o para hacer consultas, dependiendo del volumen de información producida. Los archivos secuenciales son frecuentemente accesados en el modo de generación de reportes. Debido a que los registros deben ser accesados consecutivamente, es bastante eficiente accesar cada registro del archivo.
¿Con que frecuencia es necesaria la actualización?
La frecuencia con la que debe ser actualizado el archivo depende de los siguientes factores.
Velocidad de cambio de los datos.
Tamaños del archivo
Urgencia de tener datos actualizados
Razón de actividad del archivo La razón de actividad del archivo es el número de registros del archivo maestro afectados por un lote de transacciones, dividido por el número total de registros en el archivo maestro. Mientras menor sea el tiempo entre dos actualizaciones de un archivo maestro, mayor será la razón de actividad del archivo.
Entre menos actualizaciones haya, la edad promedio de los datos existentes en el archivo maestro aumentan.
Mientras mas grande sea la necesidad de tener datos actuales en el archivo maestro, mayor deberá ser la frecuencia de actualizaciones.
Mientras mas frecuenté deba ser actualizado el archivo maestro, mayor será el costo de procesamiento.
Generación de archivos.
Una desventaja de los archivos secuenciales es que en el proceso de actualización, la mayoría de los archivos secuenciales no pueden ser actualizados, más bien habrá que reescribirlos totalmente. Para llevar a cabo este proceso existirá un archivo maestro anterior y otro actual. Estas versiones sucesivas del archivo son normalmente conocidas como generaciones de archivo. Si el archivo maestro viejo perteneció a la generación 1, entonces el archivo nuevo del día pertenecerá a la generación 2, y así sucesivamente.
El tener varias generaciones del archivo se hace con el objetivo de obtener reportes históricos que podrían ayudar en un momento dado para la toma de decisiones de una empresa.
Tipos de actualización
Existen 3 tipos de actualización básicos que pueden ser aplicados a loa archivos maestros:
1.- Inserción de un nuevo registro
2.- supresión de un registro existente
3.- Modificación de un registro existente
Manipulación de errores
Existen muchos tipos de errores que pueden ser encontrados en la actualización de archivos, como los siguientes:
1.- Inserción de un archivo
2.- Supresión de un registro que no existe
3.- Modificación de un registro que no existe
La acción adecuada que deba realizarse cuando estos errores ocurran depende de la aplicación pero no se debe permitir que los errores infecten al archivo. Generalmente un programa de aplicación produce un reporte de errores, que identifica cada transacción que no fue procesada y la razón por la cual no fue procesada.
Desempeño De Archivos Secuenciales.
El desempeño de los archivos secuenciales está determinado por tres factores principales: El factor de bloqueo, la longitud del archivo y la selección de la llave.
Factor de Bloqueo
Los datos leídos o grabados en una cinta magnética, en grupos de caracteres, son llamados bloques. Un bloque es el grupo más pequeño de datos que se pueden transferir entre la memoria secundaria y la memoria principal en un solo acceso. Un bloque puede contener uno o más registros. Un bloque es algunas veces mencionado como un registro físico. El factor de bloqueo se refiere al número de registros por bloque. Mientras mayor sea el factor de bloqueo se mejora más el uso del dispositivo de almacenamiento debido a que entre cada bloque existe un espacio.
Los factores limitantes para determinar la amplitud del bloque son la disponibilidad de espacio de buffer en la memoria principal, los parámetros del sistema operativo (los cuales pueden limitar el tamaño del bloque) y los algoritmos locales de carga (los cuales negocian la utilización de memoria principal contra el acceso a los dispositivos de almacenamiento secundarios).
Si el archivo secuencial se almacena en un dispositivo de acceso directo, es recomendable que el tamaño del bloque coincida con el tamaño del sector ( si se utiliza un direccionamiento por sector) o con el tamaño de la pista.
Longitud Del Archivo Secuencial.
La longitud del archivo se determina por el volumen de los datos y por el diseño del registro, es decir el problema de determinar qué campos están en qué registros y en que archivos. Una norma es separar los campos de los registros de acuerdo con la frecuencia en que son accesados, de esta manera, separamos los datos de un registro completo entre un archivo activo y otro relativamente inactivo para reducir el tiempo de procesamiento sobre ese archivo.
Selección de la llave.
La llave de un archivo determina el orden en el cual son accesados los registros. Los campos para formar la llave del archivo secuencial son determinados por los requisitos de la información.
Resumen de Archivos Secuenciales.
Un archivo organizado secuencialmente es un conjunto de registros lógicamente relacionados cuya secuencia de acceso está determinada por su ordenamiento. Los registros deben ser grabados consecutivamente cuando el archivo es creado, y deben ser leídos consecutivamente cuando el archivo es usado posteriormente como entrada. Un archivo secuencial opera de la misma manera de cómo lo hace una cola larga: el primer registro físico es el primer registro escrito. Debido a que los registros deben ser accesados consecutivamente, los archivos de organización secuencial son usados más frecuentemente en procesamientos por lotes que en procesamientos interactivos. La principal ventaja de la organización secuencial es la capacidad para accesar rápidamente al "siguiente" registro.
El proceso de actualización de un archivo maestro secuencial es importante. La frecuencia con la cual el archivo maestro debe ser actualizado, depende de algunos factores, incluyendo volatilidad de los datos, tamaño del archivo, urgencia de la necesidad de tener datos actualizados y a razón de actividad del archivo. El concepto de generación de archivos fue introducido y se discutieron el número de generación absoluta y relativa. Los tipos básicos de actualización del archivo maestro son la inserción de nuevos registros, la supresión de registros viejos y la modificación de registros existentes. La lógica necesaria para aplicar estas actualizaciones fue explicada.
Los elementos fundamentales para el buen desempeño de archivos secuenciales son: el factor de bloqueo, la longitud del archivo (afectado por el diseño del registro) y la elección de la llave. Los archivos de organización secuencial son sencillos y pueden ser almacenados en un medio económico. Son muy adecuados para las aplicaciones que requieren sólo acceso secuencial a los datos contenidos. No son adecuados para aplicaciones que requieren acceso directo a algunos registros particulares de la colección. No proporcionan apoyo para aplicaciones interactivas. No obstante, continuarán siendo importantes.

Instituto Tecnológico de Tepic

Tutorial Administración de Archivos
Dispositivos de Almacenamiento Externo
Ing. Maximino González González
Unidad 2
Definiciones y Conceptos
En esta unidad definiremos algunos conceptos básicos sobre administración de archivos.
Dato.
Un dato es la representación de un hecho o una entidad.
Información.
Son los datos procesados y clasificados para la representación de un fin en particular.
Registro.
Es el conjunto de datos relacionadospertenecientes a una entidad. Este conjunto de datos es una colección finita, ordenada y posiblemente heterogénea en sus elementos que son tratados como una unidad.
Campo.
Campo es un área especifica de un registro, usada para representar una clase particular de información.
Registro Lógico.
Es una unidad de información significativa para el programador.
Registro físico.
Es una serie de registros continuos registrados como una sola unidad.
Llave.
Es el campo que identifica un registro. Es el campo cuyos valores son usados para colocar una colección de registros en un orden especifico.
Llave primaria.
Es el campo llave principal de un archivo multillave. En un archivo secuencial indexado con llaves alternas representa el campo por medio del cual el acceso directo y secuencial es manejado.
Llave secundaria.
Es, en un archivo multillave, cualquier llave exceptuando la primara.
Archivo.
Es una colección de ocurrencias de registros lógicamente relacionadas que son tratadas como una unidad.
Base de Datos.
Una base de datos es un conjunto de datos relacionadosentre si. Por datos entendemos hechos conocidos que pueden registrarse y que tienen un significado implícito. Por ejemplo, consideremos los nombres, números telefónicos y direcciones de personas que conocemos.
La definición anterior es muy general, por ejemplo, podemos considerar el conjunto de palabras que forman esta pa
gina de texto como datos relacionados entre sí, de modo que son una base de datos. Pero la acepción común del término base de datos suele ser mas restringida.Una base de datos tiene las siguientes propiedades implícitas.
Una base de datos representa algún aspecto del mundo real, en ocasiones llamado rninimundo o universo de discurso. Las modificaciones del minimundo se reflejan en la base de datos.
Una base de datos es un conjunto de datos lógicamente coherente, con cierto significado inherente. Una colecc
ión aleatoria de datos no puede considerarse propiamente una base de datos.
Toda base de datos se diseña, construye y puebla con datos para un propósito específico. Está dirigida a un grupo de usuarios y tiene ciertas aplicaciones preconcebidas que interesan a dichos usuarios.
Transacción.
Es un evento o acción que cambia el estado de algunas cosas grabadas en un archivo maestro o base de datos.
Organización de Archivos.
Es la técnica usada para representar, estructurar y almacenar los registros en un archivo.