P. 1
Organizacion de Archivos

Organizacion de Archivos

|Views: 683|Likes:

More info:

Published by: Eric Daniel Roque Acuña on Dec 05, 2011
Copyright:Attribution Non-commercial

Availability:

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

10/29/2013

pdf

text

original

Organización Invertida

Esta técnica de organización de archivos es un tanto similar a la organización Multilista con modificaciones que la hacen más eficiente. La organización invertida es una de las estructuras fundamentales de muchos sistemas manejadores de Base de Dalos. El sistema TDMS (Time-Shared Data Management System) de la System Development Corporation fue el primer sistema comercial generalizado para manejo de datos a finales de los sesenta. La estructura básica es la siguiente: • Un archivo maestro. el cual ya no contiene campos apuntadores para cada campo considerado para realizar consultas; como en la organización multilista. • Un índice llamado diccionario invertido que contiene valores de los campos considerados para realizar consultas (características), cada uno de estos valores se denomina llave Invertida. Cada. una de las llaves invertidas lleva asociada una lista de direcciones relativas, que son las direcciones de los registros caracterizados precisamente por tal valor de la llave invertida. A tal lista se le denomina lista de acceso. • Adicionalmente, con la intención de facilitar la operaciones sobre archivos con tal tipo de organización, puede asociarse a cada llave invertida el atribulo al que le corresponde. Si la llave invertida fuera Informática, posiblemente el atributo es ESCUELA. Nota: Los términos atributo y característica, ya han sido estudiados en la sección anterior Veamos un ejemplo esquemático:

Grado de Inversión: EI grado de inversión mide el nivel en que los campos referentes al archivo hayan sido invertidos. si un archivo considera para cada registro 6 campos. Por ejemplo.a. y si se han considerado como atributos en el directorio invertido los seis campos se dice que hay una inversión del 100% (máximo grado de inversión). Ventajas: Una de las grandes ventajas de las organizaciones invertidas sobre otras organizaciones es la . 0% de inversión es simplemente las técnicas que consideran una única llave de indexación (un único campo. la llave primaria). b. generalmente.

c. etc. para mantener un orden y facilitar las operaciones AND y OR Si el valor de un campo invertido. Pero esta dificultad puede mitigarse con la implementación de métodos apropiados para manejar listas (leer. Eliminación: • . Insertarse en una ubicación adecuada de la lista de apuntadores. Operaciones: • Inserción: Se almacena el registro secuencialmente y luego se toma en cuenta en el directorio invertido cada valor de campo del nuevo registro que corresponda a un campo invertido. El resultado será {5}.) d. Para la tercera consulta deberíamos aplicar la operación OR. Con referente a la segunda consulta recuperaríamos la lista de acceso de la llave invertida Matemática y luego la lista de acceso de la llave invertida IV ciclo. sin tener que recuperar los registros mismos. no se encuentra como llave invertida. insertar. ordenar. Desventajas: Una de las desventajas podría ser dificultad en el manejo de la lista de acceso. Agregarse al final de la lista de acceso asociada a tal llave invertida 2. Finalmente aplicamos una operación AND a las dos listas. Si el valor del campo ya existe como llave invertida. entonces la dirección relativa correspondiente al nuevo registro podría: 1. Lo único que nos queda es acceder a los registros con las direcciones relativas obtenidas después de la operación AND. entonces se agrega tal llave al directorio invertido y se inicia su lista de acceso. Consultas como las que se ilustran a continuación: • • • ¿Cuántos alumnos pertenecen a la escuela de Informática? Listar los alumnos de Matemática del V ciclo ¿Cuáles son los alumnos de Informática o Matemática? Estas consultas pueden ser efectuadas fácilmente accediendo a la lista de acceso referente a la llave invertida que es el valor correspondiente al campo invertido por el que se esta haciendo consultas.habilidad para satisfacer varios tipos de consultas que involucran a los valores de los campos invertidos.

Por ejemplo: Eliminar lodos los alumnos donde Escuela = INFORMATICA o dicho en términos de SQL: DELETE Alumnos WHERE Escuela = INFORMATICA En este caso cada apuntador a esos registros debe eliminarse de las listas donde aparece. Una alternativa podría ser utilizar el eliminado 1ógico. lo que trae como desventaja ocupar espacio innecesario. para mitigar este problema. Sin embargo. Por lo tanto.Primeramente debe localizarse el o los registros que van a eliminare según sea cualquier criterio. si es que las modificaciones afectaron campos invertidos. de modo que 4 y 9 desaparezcan de allí y aparezcan ahora en la lista de acceso de la llave invertida VI. lo que hacemos es eliminar la dirección relativa de las listas de acceso correspondientes. los datos reales aun se mantienen en el archivo maestro. y posteriormente debemos modificar la lista de acceso. Estas son: {4. pero debemos trabajarlo con cuidado para no procesar registros 1ogicamente eliminados. en este caso de los alumnos del III ciclo de MATEMATICA. Por ejemplo: Modificar Ciclo=IV de todos los alumnos del III ciclo de la Escuela de MATEMATICA o en SOL: UPDATE Alumnos SET Cicio = IV WHERE Escuela = INFORMATICA AND Ciclo = III En primer lugar deberíamos conocer la dirección relativa de cada uno de los registros a modificar. EI alumno debería analizar esta situación y crear su algoritmo de reutilización. las direcciones de los registros eliminados podrían reutilizarse por nuevos registros. Cuando eliminamos un registro. 9} Como el ciclo de ellos antes era III y ahora debería ser IV. deberíamos acceder primero a los registro a actualizar. es decir perdemos la referencia al registro. Realmente este es un trabajo que tomara cierto tiempo. luego procedemos a modificarlos. Así el directorio invertido quedaría como: • . entonces la lista de acceso asociada a la llave invertida III en el directorio invertido deberá ser modificada. Modificación: Al igual que en el caso anterior.

lo que resultará en un segundo índice e invertir este segundo índice. en el archivo maestro. cada uno de estos valores (llaves invertidas) apuntara a un tercer índice. como en el caso anterior. un segundo índice. almacenaría el nombre de los campos invertidos (atributos) y los diseccionaría a la primera ubicación del bloque donde comienzan a almacenarse los valores de dicho campo. con nuestro ejemplo: El primer Índice. Este tipo de estrategia se denomina organización indexada con niveles múltiples.Organización Indexada con Múltiples Niveles Cuando los niveles de inversión son altos. Finalmente. el que mantendrá una lista de acceso para cada llave invertida. el directorio invertido se convierte en un archivo grande que puede presentar los mismos problemas para búsqueda que el maestro. La estrategia para mitigar este problema es invertir el propio directorio invertido. Veamos que forma tendría. cada lista mantendrá las direcciones relativas asociadas. A su vez. . Esta estrategia se puede aplicar a la organización secuencial indexada (en este caso con múltiples niveles). lo que a su vez resultará en un tercer índice.

al poder acceder a cada llave invertida con mayor facilidad. Ventaja: Mayor eficiencia en realizar consultas. b. . que hará referencia a su lista de acceso. Finalmente con esa lista de acceso accedemos a leer la información de cada registro respectiva en el archivo maestro. Desventajas: Las operaciones de eliminación y mantenimiento se toman más complejas. para obtener la dirección relativa. Así.a. y buscar el nombre correspondiente a ESCUELA. Por ejemplo con la siguiente consulta: SELECT * FROM Alumnos WHERE ESCUELA = ESTADISTICA Para resolver este problema. en el segundo Índice buscaríamos el valor ESTADISTICA. en el segundo Índice. Luego de ubicar el nombre del campo correspondiente. en el tercer Índice. debemos acceder en primer lugar al índice que mantiene los nombres de los campos invertidos (atributos). obtenemos la dirección relativa que apunta al comienzo del bloque de sus correspondientes llaves invertidas.

A esta practica se le denomina indexación con atributos múltiples. lo que dificulta el mantenimiento de estos archivos. D En la realidad los archivos están en constante cambio. K3. para cada uno de sus campos bajo los que se desea invertir. Ventaja: • • Mayor acceso a consultas ya fijados. en el que no haya alto nivel de operaciones sobre el archivo b. K3. Desventajas: • • Mayor acceso a consultas ya fijados. En algunos casos específicos el acceso puede resultar rápido al invertirse sobre tres llaves combinadas (por ejemplo mantener una lista de acceso que apunte a los registros que mantengan los tres valores K1. Se escuchan con frecuencia varios términos confusos referentes a esta práctica.Organización Indexada con Atributos Múltiples La indexación de atributos múltiples se refiere a la indexación sobre varios campos combinados. Resulta eficiente en sistemas estáticos. a. La evaluación y el análisis de los sistemas de archivos está frecuentemente relacionado con: • • • • Almacenamiento necesario de datos Tiempo esperado de respuesta(Tiempo en localizar datos y mostrarlos) Tiempo esperado de actualización Tiempo necesario para las organizaciones . debido a su complejidad de evaluar mas de un valor de campo para cada lista de acceso Evaluación General de Sistemas de Archivos Es importante elegir una adecuada organización de archivos de acuerdo a nuestro entorno de trabajo. o en otras palabras de acuerdo a las características del sistema que vamos a implementar. K2. K2. proporcionando así las rutas de acceso de resolución superior. Para ilustrar la indexación de atributos múltiples considérense consultas que hagan usa de las llaves de acceso K1.

Antes de decidirnos por una organización de archivos en particular es importante hacer un estudio de la carga de peticiones y del tipo de estas. semana. En este punto es recomendable descomponer las frecuencias de actualizaciones de acuerdo con los tipos de tareas que representan : Adición de un nuevo registro Cambio de un campo en un registro Eliminación de un registro • • • . Estimación del uso del Sistema : Los beneficios que pueden obtenerse con el sistema. número total de campos t. A continuación veremos algunos factores relacionados con el uso del sistema: Volumen de Datos La estimación de la carga colocada en el sistema de archivos. La recuperación de la información es un punto crítico o esencial que tenemos que considerar. Una transacción puede solicitar datos provenientes de más de un archivo. La carga consiste en las demandas de almacenamiento de datos y en las operaciones solicitadas por las transacciones. la efectividad con la cual se obtengan. La recuperación de datos se refiere al obtener información en base a nuestros datos almacenados por medio de reportes o consultas. se controla de acuerdo con el número de registros n. y el costo de operaciones sobre los datos están relacionados con la carga colocada sobre el sistema. A este tipo de carga se denomina carga operativa. en términos de volumen. Carga de Recuperación de Información: La recuperación de datos es uno de los objetivos centrales del sistema de archivos. mes) . Es decir debemos conocer que peticiones se harán al sistema y cuantas peticiones pueden darse como máximo en un periodo específico (día. EI objetivo principal de las bases de datos es la síntesis de datos y por lo tanto la creación de información. y esta relacionado con: • • • Solicitud de localización Solicitud de registro siguiente Búsqueda exhaustiva Carga de Actualización También es importante conocer la frecuencia de actualizaciones que afectará a nuestro sistema. y el tamaño de cada campo v.a.

Costo de Captación de Datos En la evaluación de los costos de captación de datos no es posible considerar solo cuanto cuesta introducir o captar un elemento (dato). El sistema es parte de una estrategia de negocio. es decir talvez no podamos notar los beneficios en unos pocos días. necesario para usar el sistema disminuye sus beneficios. en términos económicos. estoy ahorrando con el uso del sistema. entonces el sistema será un arma contra la propia institución. pero el sistema ayudará a cumplir con los objetivos trazados en un periodo mayor. de forma que pueda atender a la mayor cantidad de clientes. • En muchos casos también el beneficio se espera a mediano o largo plazo. una pequeña entidad de ventas. si este tiempo se dilata.b. se da un pretexto al operador para descuidar sus labores (salir a comprar) mientras el sistema procesa la información. el negocio de ventas andaba mejor" Utilización del sistema • • • EI esfuerzo del operador. Es decir cuanto. Si el tiempo de actualizaciones es lento. entonces el sistema no provocara los efectos esperados. Un sistema lento o torpe aumentará el costa básico de transacción Las medidas directas de tiempo del esfuerzo para utilizar el sistema incluyen : EI tiempo necesario para plantear consultas EI tiempo necesario para introducir en el sistema parámetros de búsqueda EI tiempo necesario para el procesamiento real de la solicitud. es posible que el cliente diga: "Antes de usar este sistema. que necesita un implementar un sistema. EI tiempo para visualizar la infamación solicitada. EI costo de detecció y corrección de un elemento introducido . La disponibilidad de los datos almacenados es un prerrequisito para el uso de un sistema En la mayoría de los casos el beneficio del uso de un sistema tiene un valor financiero. Si un sistema no responde con rapidez se desperdiciará tiempo del operador. Costo de Personal EI efecto de un sistema en los costos de personal es una parte importante del diseño adecuado de sistemas. Lo correcto es determinar cuanto cuesta introducir en forma correcta un elemento (dato). Ejemplo: Imagínense. Si los retrasos son significativos. • Los beneficios también están relacionados con el tiempo de respuesta del sistema. Análisis de los beneficios del sistema: • • • Los beneficios de tener datos surgen del uso de estos.

Posiblemente. . ya que la información de sus pacientes podrían haberse alterado. ingresamos o eliminamos cierta información errónea. deben agregarse al costo de captación de datos. Es imprescindible que apliquemos diversa técnicas y métodos para mitigar la captura de datos incorrectos. que si lo detectamos luego de mucho tiempo. así como el costo de los daños que el valor equivocado podría haber ocasionado mientras fue parte de la base de datos. Ejemplo: Que pasaría si en un sistema que almacena datos de los pacientes de un medico. En este caso los costos pueden ser muy altos. Por ejemplo. de tal forma que podamos encontrar errores o inconsistencia en forma temprana. Otra forma de mitigar estos problemas es realizar un reporte constante de la información almacenada en nuestro sistema. Mientras el error se detecte más próximo a su origen el costo será mucho menor.en forma incorrecta. el médico en base a la información almacenada (supuestamente fidedigna) podría prescribir medicamentos inadecuados. involuntariamente. Cada vez que eliminemos un registro presentar la información del registro que se eliminará para confirmar la acción “Eliminar”.

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)//-->