ADMINISTRACION DE ARCHIVOS.

 

 

UNIDAD I. DISPOSITIVO DE ALMACENAMIENTO EXTERNO.

1.1 Cinta magnética

Diferentes cintas magnéticas.

La cinta magnética es un tipo de medio o soporte de almacenamiento de datos que se graba en pistas sobre una banda plástica con un material magnetizado, generalmente óxido de hierro o algún cromato. El tipo de información que se puede almacenar en las cintas magnéticas es variado, como vídeo, audio y datos.

Hay diferentes tipos de cintas, tanto en sus medidas físicas, como en su constitución química, así como diferentes formatos de grabación, especializados en el tipo de información que se quiere grabar.

Los dispositivos informáticos de almacenamiento masivo de datos de cinta magnética son utilizados principalmente para respaldo de archivos y para el proceso de información de tipo secuencial, como en la elaboración de nóminas de las grandes organizaciones públicas y privadas. Al almacén donde se guardan estos dispositivos se lo denomina cintoteca.

Su uso también se ha extendido para el almacenamiento analógico de música(como el casete de audio) y para vídeo, como las cintas de VHS (véase cinta de video).

La cinta magnética de audio dependiendo del equipo que la reproduce/graba recibe distintos nombres:

  • Se llama cinta de bobina abierta si es de magnetófono.
  • Casete cuando es de formato compacto utilizada en pletina o walkman.
  • Cartucho cuando es utilizada por las cartucheras.

Tambor magnético

  Este artículo o sección necesita referencias que aparezcan en una publicación acreditada, como revistas especializadas, monografías, prensa diaria o páginas de Internet fidedignas.
Puedes añadirlas así o avisar al autor principal del artículo en su página de discusión pegando: {{subst:Aviso referencias|Tambor magnético}} ~~~~

Tambor magnético.

La memoria de tambor es un dispositivo de almacenaje de datos. Fue una temprana forma de memoria de ordenador que extensamente fue usada en los años 1950 y 1960, inventada por Gustav Tauschek en 1932 en Australia. Para muchas máquinas, el tambor formó la memoria de trabajo principal de la máquina, con datos y programas cargados sobre el tambor, que usa medios de comunicación como la cinta de papel o tarjetas perforadas. Los tambores comúnmente eran tan usados para la memoria de trabajo principal que las máquinas, a menudo, eran mencionadas máquinas de tambor.

Características

El tambor magnético es un cilindro de metal hueco o sólido que gira en una velocidad constante (de 600 a 6.000 revoluciones por minuto), cubierto con un material magnético de óxido de hierro sobre el cual se almacenan los datos y programas. A diferencia de los paquetes de discos, el tambor magnético físicamente no puede ser quitado. El tambor queda permanentemente montado en el dispositivo. Los tambores magnéticos son capaces de recoger datos a mayores velocidades que una cinta o una unidad de disco, pero no son capaces de almacenar más datos que aquellas.

La superficie del tambor magnético se podía magnetizar debido al material que lo rodeaba. El tambor giraba y sobre su superficie existían numerosas cabezas de lectura y escritura. Se almacenaban los datos en pistas paralelas sobre la superficie del tambor. Al girar el tambor la información almacenada pasaba por debajo de los cabezales de lectura/escritura.

Diferencias entre disco y tambor

Un tambor magnético se diferencia de un disco magnético en que las pistas en las cuales los datos son almacenados, son asignadas a canales localizados alrededor de la circunferencia del tambor. Es decir, los canales forman cintas circulares alrededor del tambor. Las funciones básicas de las cabezas de lectura/escritura son colocar puntos magnetizados (0’s y 1’s binarios) en el tambor durante una operación de la escritura y detectar estos puntos durante una operación de lectura. La función de leer y escribir de un tambor magnético funciona de una manera similar a las de una unidad de cinta magnética o una unidad de disco.

1.2 DISCO DURRO Y DISSQUETE.

DISCO DURO .

En informática, un disco duro o disco rígido  es un dispositivo de almacenamiento de datos no volátil que emplea un sistema de grabación magnética para almacenar datos digitales. Se compone de uno o más platos o discos rígidos, unidos por un mismo eje que gira a gran velocidad dentro de una caja metálica sellada. Sobre cada plato, y en cada una de sus caras, se sitúa un cabezal de lectura/escritura que flota sobre una delgada lámina de aire generada por la rotación de los discos.

HISTORIA

El primer disco duro, aparecido en 1956, fue el IBM 350 modelo 1, presentado con la computadora Ramac I: pesaba una tonelada y su capacidad era de 5 MB. Más grande que una nevera actual, este disco duro trabajaba todavía con válvulas de vacío y requería una consola separada para su manejo.

LAS CARACTERÍSTICAS QUE SE DEBEN TENER EN CUENTA EN UN DISCO DURO SON:

—  Tiempo medio de acceso: Tiempo medio que tarda la aguja en situarse en la pista y el sector deseado; es la suma del Tiempo medio de búsqueda (situarse en la pista), Tiempo de lectura/escritura y la Latencia media (situarse en el sector).

—  Tiempo medio de búsqueda: Tiempo medio que tarda la aguja en situarse en la pista deseada; es la mitad del tiempo empleado por la aguja en ir desde la pista más periférica hasta la más central del disco.

—  Tiempo de lectura/escritura: Tiempo medio que tarda el disco en leer o escribir nueva información: Depende de la cantidad de información que se quiere leer o escribir, el tamaño de bloque, el número de cabezales, el tiempo por vuelta y la cantidad de sectores por pista.

—  Latencia media: Tiempo medio que tarda la aguja en situarse en el sector deseado; es la mitad del tiempo empleado en una rotación completa del disco.

—  Tasa de transferencia: Velocidad a la que puede transferir la información a la computadora.

OTRAS CARACTERÍSTICAS SON:

—  Caché de pista: Es una memoria tipo Flash dentro del disco duro.

—  Interfaz: Medio de comunicación entre el disco duro y la computadora. Puede ser IDE/ATA, SCSI, SATA, USB, Firewire, Serial Attached SCSI

—  Landz: Zona sobre las que aparcan las cabezas una vez se apaga la computadora.

DISQUETE.

Un disquete o disco flexible  es un medio o soporte de almacenamiento de datos formado por una pieza circular de material magnético, fina y flexible (de ahí su denominación) encerrada en una cubierta de plástico cuadrada o rectangular.

Los disquetes se leen y se escriben mediante un dispositivo llamado disquetera (o FDD, del inglés Floppy Disk Drive). En algunos casos es un disco menor que el CD. La disquetera es el dispositivo o unidad lectora/grabadora de disquetes, y ayuda a introducirlo para guardar la información.

Este tipo de dispositivo de almacenamiento es vulnerable a la suciedad y los campos magnéticos externos, por lo que, en muchos casos, deja de funcionar con el tiempo.

Unidades de 8″, 5¼” , y 3½”.
Fecha de invención: 1969 (8″),
1976 (5¼”),
1983 (3½”)
Inventado por Equipo de IBM liderado por David Noble
  • Conectado a: Controlador mediante cables

VERSIONES.

—  La versión de 5 1/4 podía llegar a almacenar hasta 1,2 MB. La versión 3 1/2 pulgadas almacenaban 1,44 MB como máximo.

La unidad encargada de leer estos discos es llamada disquetera.

Luego salieron los disquetes, menos populares, conocidos como Zip.

En tanto, en computadoras Macintosh se utilizan disquetes llamados FDHD.

LAS DIFERENTES PARTES DE UN DISQUETE SON:
1. Muesca para protección de escritura
2. Base central
3. Cubierta móvil
4. Chasís plástico
5. Anillo de papel
6. Disco magnético
7. Sector de disco

UNIDAD II. DEFINICIONES Y CONCEPTOS.

2.1 DEFINICIONES Y CONCEPTOS.

 Carácter:

Nivel mínimo de almacenamiento.

 Dato:

Conjunto de caracteres con algún significado.

 Campo:

Característica de un individuo u objeto.

 Registro:

Colección de campos del mismo individuo u objeto.

Archivo:

Colección de registros con estructura idéntica.

 Base de datos:

Colección de archivos relacionados entre si.

 Campos Llave

Son aquellos que permiten identificar en forma unívoca a un registro. Generalmente se designaran como campos llave, aquellos que no contienen datos repetidos.

Si el sistema de archivos no posee campos con esas características, deberán utilizarse llaves intermedias o escalonadas.

Este método presenta listas de objetos (o individuos) que se van reduciendo conforme se introducen los valores para cada una de las llaves escalonadas. El proceso se da por concluido al hacer contacto visual con el objeto buscado o hasta reducir la lista de tal forma que se determina la inexistencia del objeto.

Campos de secuencia

Son aquellos que permiten establecer una colección de continuidad entre los registros de un archivo.

 

Transacciones

Es cada uno de los procesos que se utilizan en el mantenimiento del sistema de archivos (altas, bajas, cambios, etc.).

Operaciones

Es cada una de las acciones especificas que se realizan para completar una transacción.

 

2.2 Elementos de un archivo de datos.


ELEMENTOS PROPIOS DEL ARCHIVO.

  • Atributos.- Son marcas fisicas que determinan el tipo de operaciones y caracteristicas de un archivo.
  • Identificador de archivo.- Es un elemento logico que se crea en un ambiente de programacion para hacer referencia al archivo de datos.
  • Apuntador de registro.- Es un marca logica que indica la posicion donde se realizara la siguiente operación de lectura o escritura en el archivo.
  • Número de registro.- Son elementos logicos que indican la posición relativa del registro en el archivo.
  • Marca de fin de archivo(EOF).- Es una marca física que determina la finalización del archivo.
  • Marca de fin de línea (EOL).- Es una marca física utilizada en los archivos de texto para indicar la finalización de una línea.

 

2.3 Clasificación y Operaciones de los archivos.


CLASIFICACIÓN DE ARCHIVOS DE DATOS

 

Por su estructura

Con tipo.- Son aquellos que presentan un formato basado en una estructura especifica.

De texto.- Son documentos que se graban en formato ASCII y contienen la informacion de manera legible para el usuario.

Sin tipo.- Son archivos que son procesados por bloques de lectura y/o escritura. No tienen un formato determinado, y su representacion puede ser o no binaria. El tamaño de los bloques es ajustable.

Por su funcion

Archivo Maestro.- Es aquel que contiene la informacion global. Este sera actualizado periodicamente puesto que no es operado en linea.

Archivo de Transacciones.- Es aquel donde se registran las operaciones que se realizan en un periodo determinado. Una vez transcurrido este se realizara la actualizacion del archivo maestro y se reinicializara el de transacciones.

Archivo de Reporte.- Es aquel que se utiliza para notificar la ocurrencia de errores o casos especiales en la operación de un sistema. Ocasionalmente contiene tambien los resultados finales de los procesos.

Archivo de Trabajo.- Son aquellos archivos temporales imperseptibles para el usuario que son utilizados generalmente en etapas intermedias en el procesamiento de datos.

Archivo de Programa.- Son los llamados archivos ejecutables, asi como las librerias o utilerias asociadas.

Archivo de Texto.- Son aquellos que se encuentran en formato ASCII y contienen generalmente informacion referente a la ayuda y presentacion del sistema, asi como a la salida de datos con destino al medio de almacenmaiento.

OPERACIONES CON ARCHIVOS DE DATOS.

Creación.- Consiste en la asignación de un espacio en el medio de almacenamiento mediante la colocación del nombre del archivo en el directorio.

Apertura.-Es el establecimiento de un canal de comunicación con un archivo determinado.

Cierre.-Es la cancelación de un canal de comunicación previamente establecido con un archivo. Incluye una verificación al buffer para realizar un vaciado automático de los datos contenidos en el a través del canal.

Asignación.- Es la asociación de un nombre de archivo con un identificador valido en el lenguaje de programación en donde se esta manipulando.

Actualización.- Son los procesos que modifican el contenido de la base de datos (altas, bajas, cambios).

Consulta.-Es el acceso a los datos para generar una salida por un medio determinado; el acceso puede ser especifico, grupal o global.

Eliminación.- Es la eliminación física del archivo en el medio de almacenamiento.

Renombrado.- Es la modificación del nombre del archivo en el ámbito del sistema operativo.

Clasificación.- Consiste en la organización de los registros de acuerdo a un criterio determinado.

Mezcla.- Es la combinación de dos o mas archivos para dar como resultado un archivo único.

Partición.- Es la descomposición de un archivo en dos o mas.

Importación.- Consiste en extender un archivo a partir de los datos contenidos en otro, ya sea que los registros añadidos se supriman o no de este ultimo.

Exportación.-Es la generación de un nuevo archivo o la extensión de uno ya existente a partir de los datos contenidos en un archivo primario, ya sea que los datos exportados sean o no suprimidos de este.

GENERACION DEL ARCHIVO DE TRANSACCIONES

    Ante la imposibilidad de realizar verificaciones de existencia y/o comprobación de valores en el archivo maestro al concretar una transacción, normalmente se establecen códigos y/o normas de seguridad que permitan detectar parcialmente (al menos para ciertos casos) transacciones invalidas que provocarían errores en la actualización.

    La codificación mencionada anteriormente permite reducir en forma considerable la ocurrencia de errores al detectar desde su generación una transacción invalida por no satisfacer determinados formatos.

El siguiente esquema muestra el proceso de generación de un archivo de transacciones.

EDICION: En esta etapa se realizan las siguientes comprobaciones:

  • Verificación de rangos de valores validos.
  • Verificación de formatos validos.
  • Sustitución de códigos de captura por valores completos o reales.
  • Comprobación de datos en los campos mínimos necesarios (campo llave y campo indicador del tipo de transacción).
  • Comprobación de datos en aquellos campos relacionados con el tipo de transacción.

EDICION INTELIGENTE .- Cuando el dispositivo de entrada es capaz de procesar las tareas del modulo de edición, restringiendo así las transacciones invalidas, se genera inmediatamente el archivo de transacciones editadas.

ACTUALIZACIÓN.- A este proceso ingresan determinados archivos y resultan otros, además de formatos específicos de control:

  Los tipos básicos de transacción son:

FRECUENCIA DE ACTUALIZACIÓN:

    Es el criterio que determina la periodicidad con que habrá de llevarse a cabo el proceso de actualización. Se determina por los siguientes factores:

    Un concepto relacionado íntimamente a la frecuencia de actualización es la Razón de Actividad de Archivo (RAA). Esta se calcula de la siguiente manera:

    La relación que se da entre la frecuencia de actualización y la RAA del archivo maestro es inversamente proporcional

UNIDAD 3. ARCHIVOS SECUENCIALES.

3.1 Estructura


Archivo Secuencial.

    Es una organización que consiste en almacenar y recuperar datos en forma contigua. Para accesar al registro n deben procesarse los n-1 registros previos.

Una de las ventajas que ofrece esta organización es el buen aprovechamiento que se hace del medio de almacenamiento, así como la facilidad (relativa) en su implementacion y el bajo costo de operación al no requerir de un medio de almacenamiento direccionable.

Las razones para implementar una organización secuencial pueden ser:

  • El problema no requiere de una organización mas compleja.- El diseñador determina que después de analizar el problema este no requiere de toma de decisiones en tiempo real o con un alto nivel de prioridad. El caso no amerita la inversión del tiempo y esfuerzo para implementar una organización mas compleja.
  • No existe disponibilidad de recursos.- En este caso no es posible la adquisición de medios de almacenamiento direccionable o de otros recursos que permitan procesos en línea (equipo de Telecomunicaciones, Verificación de datos y demás).

CARACTERISTICAS:

Ventajas:

         La implementacion es económica.

         Los algoritmos que controlan la generación de transacciones son mas sencillos.

         Pueden determinarse con precisión el orden de arribo de los datos.

Desventajas

         La información no esta actualizada en todo momento.

         El acceso a los datos es relativamente lento.

    Cuando se opta por la organización secuencial pueden utilizarse varias alternativas siendo la mas común el procesamiento por lotes.

Procesamiento por lotes.

    Las operaciones regulares se acumulan por un periodo de tiempo determinado o hasta completar un volumen especifico, generándose así el archivo de transacciones.

Una vez transcurrido este periodo o habiéndose completado el volumen de transacciones, la información es “vaciada” en el archivo maestro, realizándose así la actualización.

    Concluida la actualización el archivo de transacciones debe ser inicializado, preparándolo así para el siguiente periodo.

3.2 Operaciones


GENERACION DEL ARCHIVO DE TRANSACCIONES

    Ante la imposibilidad de realizar verificaciones de existencia y/o comprobación de valores en el archivo maestro al concretar una transacción, normalmente se establecen códigos y/o normas de seguridad que permitan detectar parcialmente (al menos para ciertos casos) transacciones invalidas que provocarían errores en la actualización.

    La codificación mencionada anteriormente permite reducir en forma considerable la ocurrencia de errores al detectar desde su generación una transacción invalida por no satisfacer determinados formatos.

El siguiente esquema muestra el proceso de generación de un archivo de transacciones.

EDICION: En esta etapa se realizan las siguientes comprobaciones:

  • Verificación de rangos de valores validos.
  • Verificación de formatos validos.
  • Sustitución de códigos de captura por valores completos o reales.
  • Comprobación de datos en los campos mínimos necesarios (campo llave y campo indicador del tipo de transacción).
  • Comprobación de datos en aquellos campos relacionados con el tipo de transacción.

EDICION INTELIGENTE .- Cuando el dispositivo de entrada es capaz de procesar las tareas del modulo de edición, restringiendo así las transacciones invalidas, se genera inmediatamente el archivo de transacciones editadas.

ACTUALIZACIÓN.- A este proceso ingresan determinados archivos y resultan otros, además de formatos específicos de control:

  Los tipos básicos de transacción son:

FRECUENCIA DE ACTUALIZACIÓN:

    Es el criterio que determina la periodicidad con que habrá de llevarse a cabo el proceso de actualización. Se determina por los siguientes factores:

    Un concepto relacionado íntimamente a la frecuencia de actualización es la Razón de Actividad de Archivo (RAA). Esta se calcula de la siguiente manera:

    La relación que se da entre la frecuencia de actualización y la RAA del archivo maestro es inversamente proporcional.

3.3 Mantenimiento


Lógica de actualización:

    Como es sabido, los archivos que entran al proceso de actualización se encuentran ordenados con respecto a su llave; esto por los requerimientos propios del manejo secuencial y la necesidad de establecer comparaciones entre las llaves actuales de los archivos maestro y de transacciones.

Supóngase un archivo de transacciones que no contiene llaves repetidas; es decir solo puede existir una transacción para cada llave como máximo.

 

UNIDAD 4. ARCHIVOS SECUENCIALES INDEXADOS.

4.1 Estructura


    Dentro de las organizaciones de archivos existen diversos modelos que hacen uso de índices; es decir, estructuras que contienen parejas llave_dierccion de tal manera que se hace referencia a los datos contenidos en el archivo principal.

Los tipos de índices que existen son:

DENSO: El índice tiene una entrada por cada registro en el archivo principal.

DISPERSO: El índice contiene una entrada por cada conjunto de registros en el archivo principal.

    La organización secuencial indexada utiliza un índice disperso para su manipulación, el archivo principal contiene bloques de registros agrupados por alguna característica especifica o por un intervalo dentro del universo de llaves posibles.

   La eficiencia del modelo depende primordialmente de la adecuada selección de la cantidad de bloques y el tamaño que se le asigne a cada uno de ellos.

    Ante una inadecuada planeación, pueden quedar bloques con espacio sobrado y bloques que sean insuficientes para almacenar a ciertos registros. En este ultimo caso se hará uso del área de desborde, esta es la zona del archivo continua al último bloque asignado.

4.2 Operaciones


Existen dos formas básicas para el manejo del área de desborde:

DESBORDE SECUENCIAL:

    Al saturarse un bloque, los registros excedentes se envían al área de desborde; de esta manera, me mezclan registros que originalmente correspondían a bloques distintos. Durante la búsqueda de una llave, se barre (uno por uno) el bloque correspondiente, de no encontrarse o si este estaba saturado se barre el área de desborde.

 

 

DESBORDE LIGADO:

    Cuando un bloque se satura, se activa una liga en el ultimo registro del bloque para indicar la dirección en el área de desborde del primer registro que correspondería a este mismo bloque. Cada registro en el área de desborde tiene una liga que apunta al siguiente registro asociado al mismo bloque.

Ejemplo:

    Algunos modelos transportan el área de desborde a un archivo original y agregan un campo al índice que será la liga hacia este nuevo archivo. La razón de esto es la Optimizaci�n de espacio en el archivo principal.

 

    La cantidad de bloques y el tamaño de cada uno de ellos debe seleccionarse después de un analisis del estudio, de una muestra estadística que permita observar la distribución de los datos llave dentro del universo de llaves posibles.

    Es importante considerar la relación entre cantidad de bloques, velocidad de acceso y aprovechamiento del espacio. Cuando el modelo tiende a asignar un gran numero de bloques se incrementa ligeramente la velocidad de acceso, dado que cada bloque contendrá un intervalo corto de llaves; en contraparte, se reduce la posibilidad de estimar con precisión tamaños adecuados para cada bloque y con ello las consecuencias indeseables que esto acarrea.

Unidad 5. ARCHIVOS DIRECTOS.

5.1 ARCHIVOS DIRECTOS

    La organización directa es aquella que permite un posicionamiento sobre registros específicos al localizar una llave. Lo anterior permite agilizar la localización de un dato en un archivo determinado al no requerirse el procesamiento de los registros contiguos previos.

Existen básicamente tres alternativas para implementar un acceso directo:

Archivo clasificado para búsqueda binaria: Se requiere que el archivo principal se mantenga ordenado respecto a la llave en todo momento. La ventaja de este método reside en la alta velocidad de acceso; su desventaja consiste en el tiempo que debe invertirse para mantener clasificado al archivo en todo momento. Este método se utiliza cuando el tiempo de búsqueda tiene una prioridad extremadamente alta en relación al tiempo de actualización.

Ajuste de llave a esqueleto: Este método se utiliza cuando la llave contiene digitos y opcionalmente caracteres alfabéticos. El algoritmo de asignación consiste en tomar de la llave aquellos caracteres (preferentemente digitos) que presenten mayor variación y utilizarlos como dirección en un esqueleto previamente creado. El esqueleto contendrá la cantidad de registros inicialmente estimados y en forma contigua al área de desborde para los sinónimos resultantes.

    El método anterior nos da la oportunidad de seleccionar aprovechamiento del espacio o velocidad de acceso (en forma excluyente). Para mayor velocidad, tamaño de esqueleto grande, con el consecuente desperdicio de espacio.

    La velocidad de acceso queda determinada por la longitud de las cadenas de búsqueda, que a su vez se obtiene de las posibles combinaciones existentes para los caracteres descartados en la llave original (considerando solo los caracteres variados).

    Una implementacion de este método que puede darse para las eliminaciones consiste en la baja lógica con procesos posteriores de reacomodo si se desea obtener una velocidad adecuada en la operacion del sistema.

Si no es relevante la rapidez al realizar una baja, se procederá a sustituir el registro eliminado por aquel que se encuentre al final de la cadena de búsqueda o incluso al recorrer los registros de esta cadena; lo anterior según se requiera mantener o no el orden de llegada de los registros.

Transformación de llaves (Hashing): Este método consiste en descomponer la lave en múltiples fragmentos y mediante la aplicación de diverso algoritmos, dar origen a un numero en un intervalo determinado y utilizarlo como dirección de registro en el esqueleto.

Existe otro modelo de acceso directo que es considerado como un caso especial:

Relación directa – Llave dirección: Este método es aplicable para sistemas donde los elementos a registrar reciben un folio consecutivo como llave. La llave del registro se hace corresponder con la dirección física de este, por lo que la velocidad de acceso es extremadamente alta.

    Esta implementaron no permite eliminación física; cuando un registro es inhabilitado, se le aplica una marca lógica que podrá ser removida en caso de requerirse la reactivación posterior de tal registro.

    El inconveniente mas delicado es la ocupación innecesaria de espacio para aquellos registros eliminados lógicamente que no habrán de ser reactivados.

5.2 Operaciones


ACCESO DIRECTO POR INDEXAMIENTO

    La utilización de un índice denso (con una entrada para cada registro en el archivo principal) permitirá un acceso directo en el archivo principal después de un proceso de búsqueda en el índice.

    En virtud de la escasa longitud del registro de índice, los accesos a disco permitirán la manipulación de múltiples registros de este tipo, acelerando así la localización de una llave. En la búsqueda de mejorar la eficiencia del modelo, se pueden implementar las siguientes variantes:

 

* Indice clasificado para búsqueda binaria.

 

* Indice de búsqueda binaria arbolado.

 

MULTINIVELES DE INDICES

    Para archivos de gran tamaño el inconveniente para mantenimiento de índices se presenta en el tamaño que estos ocupan y por consiguiente la cantidad de memoria requerida para mantenerlos en esa zona (memoria principal) y lograr así un nivel de eficiencia optimo.

    La solución a este inconveniente se obtiene fragmentando el índice en múltiples niveles en una estructura arbolada.

Las técnicas mas conocidas son:

ISAM Index Sequential Access Method

VSAM Virtual Storage Access Method

ISAM

    Es un modelo que se relaciona íntimamente al hardware de almacenamiento puesto que se diseña de acuerdo a la estructura de los niveles del medio físico como los cilindros, pistas y sectores.

Cada nivel contiene en el primer subnivel un índice de los restantes subniveles; ocasionalmente se reservan los últimos elementos de este nivel como área de desborde. El área principal de almacenamiento se encuentra entre el índice y el área de desborde.

    Una cualidad de ISAM es su alta velocidad de funcionamiento; su principal desventaja es la escasa transportabilidad; es decir solo opera para un hardware determinado.

La implementaciòn de este modelo requiere la aplicación de técnicas que sustituyen en cierto grado algunas funciones del sistema operativo como son: almacenamiento y recuperación de datos . En vista de ello, deberá obtenerse de un medio exclusivo para el mantenimiento de los datos a manejar.

VSAM

    Consiste en mantener en memoria principal un índice maestro, el cual contiene los intervalos iniciales de las llaves y las referencias (ligas) hacia los archivos que contienen subintervalos mas específicos de las llaves.

    Cuando se determina el archivo que será cargado en memoria, este se consulta para obtener un intervalo mas especifico y se carga el siguiente archivo en las mismas localidades de memoria, es decir, se sobre escribe en el índice previo en la memoria. Este proceso se repite hasta alcanzar el ultimo nivel el cual contendrá la dirección lógica del dato buscado en el archivo principal.

    La principal cualidad de VSAM es su transportabilidad, el inconveniente es la cantidad de accesos a disco que se requieren para obtener el dato deseado.

    Según la cantidad de memoria disponible se diseñara la cantidad de memoria de los bloques. A mayor cantidad de memoria, mayor tamaño de bloques y en consecuencia menor cantidad de niveles y por lo tanto menos accesos a disco.

UNIDAD 6. CORESPONDENCIA ENTRE LA LLAVE Y LA DIRECCION FISICA.

6.1 Direccionamiento directo e Indirecto


    El direccionamiento de dos registros puede darse en forma directa e indirecta. Se dice que es directa cuando es posible determinar la dirección mediante una relación natural con la llave. Es indirecta cuando la llave debe ser alterada o se le deben de aplicar operaciones para determinar la dirección del registro.

    Un método ampliamente utilizado para generar direcciones físicas de los registros es aquel que realiza una descomposición de la llave y aplica a cada fragmento o a estos en su conjunto una serie de operaciones que darán como resultado un numero relativamente grande (en proporción al tamaño del archivo sumado) y del cual será generado un numero en un intervalo determinado, el cual se utilizara como dirección en el esqueleto, Este método es mejor conocido como Hashing.

Existen diversas formas de generar el numero final a partir del numero “grande”, las mas utilizadas son:

Método del residuo.

    Es el de mayor aceptación y consiste en la determinación de un numero primo (inmediatamente menor al total de registros esperados) que será utilizado como divisor del numero grande. El residuo de esta división será el numero hash buscado.

Método del centro de los cuadrados.

    Consiste en obtener el cuadrado del numero “grande”; del valor resultante se rescatan los dígitos centrales tantos como se requieran para direccionar el esqueleto y se multiplican por un factor de ajuste para colocar el resultado en el rango deseado.

Método del desplazamiento.

    En este caso se consideran los dígitos mas externos del numero “grande”. De cada extremo se toman tantos dígitos como se requieran para el direccionamiento. Estos se suman y se aplica un factor de ajuste.

Método del plegado.

    Es similar al anterior salvo que los dígitos de los extremos se suman en forma encontrada, semejando que el numero total se encontrara escrito en una hoja y esta fuera doblada por la mitad.

Método de conversión de base.

    Se asume que el numero “grande” se encuentra en una base determinada diferente de 10 al suprimirle los dígitos fuera de base. El valor resultante es convertido a base 10 y se le aplica el factor de ajuste. Tomar los tres últimos dígitos.

Método del análisis de dígitos.

    Se obtiene una muestra de gran tamaño de llaves posibles y sus números hash correspondientes, se analiza la frecuencia de repetición para cada una de las columnas y se van descartando aquellos que presentan mayor repetición. Finalmente, se toman las columnas con mayor variación y tantas como dígitos se requieren. Se aplica factor de ajuste.

    Una vez que se ha determinado la dirección hash por cualquiera de los métodos anteriores, se implementara sobre una estructura que soporte tal direccionamiento. Estos pueden ser:

  • Esqueleto con desborde
  • Archivo Intermedio para direccionamiento

           

    Como puede verse, el modelo del Redireccionamiento ofrece la ventaja de que el desperdicio provocado por una distribución inadecuada en el esqueleto no afecta al archivo principal; para este modelo se afecta al archivo de Redireccionamiento donde el tamaño de los registros es mucho menor y el archivo principal crece conforma ocurren el arribo de los registros.

6.2 Tipos de Correspondencia


Manejo de cubos

    Estadísticamente se ha comprobado que se presenta una distribución mas adecuada en el esqueleto donde cada dirección hash tiene capacidad para almacenar mas de un registro que en aquel donde cada localidad almacena solo un registro y se extiende a una longitud equivalente a la cantidad de registros a aceptar.

    Se denomina tamaño de cubo (o cubeta) a la cantidad de registros que se almacenan por dirección hash.

Los tamaños de cubo recomendables deben ajustarse a las características del problema en cuestión, aunque generalmente oscila entre tres y cuatro.

    Conforme se incrementa el tamaño del cubo, se reducen las posibilidades de generar colisiones (y en consecuencia desbordes), agilizando así la localización de registros; en contraparte, se tiende a desperdiciar espacio de almacenamiento en la estructura.

    El modelo de cubos puede implementarse sobre cualquiera de las estructuras analizadas anteriormente (Esqueleto o Redireccionamiento). Se recomienda que el desborde para estos casos se almacene en u archivo independiente con un tamaño de cubo inferior al del archivo principal.

    La justificación de esto radica en que al implementar un tamaño de cubo mayor de 1 en el área principal se prevé que pocos registros irán a desborde, con lo cual se muy poco probable llenar un cubo grande en esta área (desborde).

Densidad de empaquetamiento

    Al diseñar la estructura de acuerdo a un tamaño de cubo especifico, debe procurarse un nivel de saturación que no sea extremadamente alto; es decir debe preferirse sacrificar algunas localidades a cambio de optimizar el funcionamiento del modelo. El parámetro que nos indica el nivel de saturación es conocido como densidad de empaquetamiento.

UNIDAD 7. OTROS METODOS DE ORGANIZACIÓN DE ARCHIVOS Y BUSQUEDA ECONOMICAS.

Memoria virtual

La memoria virtual es una técnica de administración de la memoria real que permite al sistema operativo brindarle al software de usuario y a sí mismo un espacio de direcciones mayor que la memoria real o física.
La mayoría de los ordenadores tienen cuatro tipos de memoria: registros en la CPU, la memoria caché (tanto dentro como fuera del CPU), la memoria física (generalmente en forma de RAM, donde la CPU puede escribir y leer directa y razonablemente rápido) y el disco duro que es mucho más lento, pero también más grande y barato.

Muchas aplicaciones requieren el acceso a más información (código y datos) que la que se puede mantener en memoria física. Esto es así sobre todo cuando el sistema operativo permite múltiples procesos y aplicaciones ejecutándose simultáneamente. Una solución al problema de necesitar mayor cantidad de memoria de la que se posee consiste en que las aplicaciones mantengan parte de su información en disco, moviéndola a la memoria principal cuando sea necesario. Hay varias formas de hacer esto. Una opción es que la aplicación misma sea responsable de decidir qué información será guardada en cada sitio (segmentación), y de traerla y llevarla. La desventaja de esto, además de la dificultad en el diseño e implementación del programa, es que es muy probable que los intereses sobre la memoria de dos o varios programas generen conflictos entre sí: cada programador podría realizar su diseño teniendo en cuenta que es el único programa ejecutándose en el sistema. La alternativa es usar memoria virtual, donde la combinación entre hardware especial y el sistema operativo hace uso de la memoria principal y la secundaria para hacer parecer que el ordenador tiene mucha más memoria principal (RAM) que la que realmente posee. Este método es invisible a los procesos. La cantidad de memoria máxima que se puede hacer ver que hay tiene que ver con las características del procesador. Por ejemplo, en un sistema de 32 bits, el máximo es 232, lo que da 4096 Megabytes (4 Gigabytes). Todo esto hace el trabajo del programador de aplicaciones mucho más fácil, al poder ignorar completamente la necesidad de mover datos entre los distintos espacios de memoria.

Aunque la memoria virtual podría estar implementada por el software del sistema operativo, en la práctica casi siempre se usa una combinación de hardware y software, dado el esfuerzo extra que implicaría para el procesador.

7.2 Conceptos 


COMPACTACIÓN DE DATOS

     La compactación de datos tiene por objeto el almacenamiento de información con un ahorro en el espacio requerido en el medio.

    Los sistemas que incorporan técnicas de compactación normalmente utilizan procesos a la entrada y salida del programa que permitan descompactar y compactar respectivamente, de tal forma que mientras se realizan procesos en línea, la información se encuentre en su formato original.

    El resto de los sistemas (en una cantidad proporcionalmente baja) compacta y descompacta solamente los datos a utilizar.

Los algoritmos de compactación normalmente se clasifican en:

  • Técnicas dependientes del tipo de datos.

Se aplican sobre archivos con una estructura, formato o tipo de contenido que se conoce previamente.

  • Técnicas independientes del tipo de datos.

Se aplican sobre cualquier archivo sin importar su contenido.

 

Técnicas dependientes del tipo de datos.

Utilizan básicamente la sustitución y codificación de la información. Los principales puntos que considera son:

1.- Eliminación de elementos redundantes.

Ejemplo:

Sistema relación por número de registro (Lineal).

 

Sistema relación por campo común

 

        2.- Conversión de números a notación compacta.

Ejemplo:

        3.-Supresión de caracteres repetidos.

                    4.- Tabulación de datos habituales

Ejemplo:

        5.- Sustitución de texto idiomático.

Ejemplo:

 

7.2 Método de Huffman


Técnicas Independientes del tipo de dato.

MÉTODO DE HUFFMAN

COMPACTAR

  1. Realizar un recorrido por el archivo a compactar, e ir acumulando en un arreglo de contadores   de incidencias la cantidad de veces que aparece cada carácter.
  2. Construir un árbol binario de recorridos de tal forma que los caracteres encontrados sean hojas en la estructura. Es importante que los caracteres con mayor incidencias queden mas cercanos a la raíz .
  3. Etiquetar las ramas del árbol con bits, 0 rama izquierda, 1 rama derecha.
  4. Crear una tabla de códigos (vector) donde se registre el recorrido desde la raíz hasta una hoja especifica, señalando los bits encontrados en las ramas.
  5. Recorrer el archivo original e ir acumulando los bits de la nueva codificación hasta completar ocho de ellos, escribir en el archivo destino el carácter del ASCII que corresponda a los ocho bits codificados según la codificación normal.

DESCOMPACTAR

  1. Recuperar de los contadores de incidencias almacenados el árbol de recorridos y la cantidad de bits de relleno del ultimo carácter.
  2. Recorrer el archivo compactado aplicando el siguiente procedimiento para cada carácter.
  •     Obtener ordinal y convertirlo a binario.
  •      Realizar recorrido al árbol hasta llegar a una hoja.
  •      Guardar en el archivo destino (descompactado) el carácter encontrado en la hoja.

UNIDAD 8. ACCESO MULTILLAVE.

8.1 Estructura Multilista


ACCESO MULTILLAVE

    Esta organización se utiliza para establecer conexiones entre datos con características similares. No es el objetivo principal el acceso rápido a una llave en particular. En este tipo de organización deben determinarse e identificarse aquellos campos en los que el rango de valores esta bien definido y que representan una utilidad al acceso por cada uno de estos valores.

ATRIBUTO: Es un campo con un rango de valores bien determinado, sobre el cual es deseable una consulta.

CARACTERISTICA: Es cada uno de los valores que puede tomar un atributo.

El modelo utiliza para su funcionamiento dos archivos:

  • Archivo de cabecera.- Almacena las direcciones de inicio de cada cadena de característica. Recomendablemente incluye un campo de longitud de cadena que permite seleccionar el acceso de la cadena mas corta cuando se conocen dos o mas características. Tendrá tantos registros como características tenga el modelo.
  • Archivo Principal (Datos).- Además de los campos de almacenamiento normales utilizan tantos campos adicionales como atributos tenga el modelo; cada uno de estos será una liga al siguiente registro con la misma característica.

                                                                                                      

    Al aplicarle al archivo de cabecera un campo extra que contabilice el numero de registros que conforman esa cadena hará mas sencilla la tarea al momento de buscar la cadena mas corta, cuando se conozcan los valores de dos o mas atributos.

 

8.2 Métodos para el acceso multillave

 


a) Indexamiento.- Consiste en utilizar un índice denso para cada tipo de llave distinta.

Ejemplo:

b) Redireccionamiento.- Consiste en utilizar archivos de redireccionamiento como   esqueletos, mientras que el archivo principal crece conforme se requiere. Debe mantener ligas para la formación de las cadenas. Podrá utilizar cualquier método para el calculo de direcciones.

Ejemplo:

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s