Organizacion de Archivos

10
 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:

Transcript of Organizacion de Archivos

Page 1: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 1/10

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 lallave 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:

Page 2: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 2/10

 

a.  Grado de Inversión:

EI grado de inversión mide el nivel en que los campos referentes al archivo hayan sido

invertidos. Por ejemplo, si un archivo considera para cada registro 6 campos, 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), 0% de inversión es simplemente las

técnicas que consideran una única llave de indexación (un único campo, generalmente, la

llave primaria).

b.  Ventajas:

Una de las grandes ventajas de las organizaciones invertidas sobre otras organizaciones es la

Page 3: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 3/10

habilidad para satisfacer varios tipos de consultas que involucran a los valores de los campos

invertidos, sin tener que recuperar los registros mismos. 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.

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. Finalmente aplicamos una

operación AND a las dos listas. El resultado será {5}. Lo único que nos queda es acceder a

los registros con las direcciones relativas obtenidas después de la operación AND. Para la

tercera consulta deberíamos aplicar la operación OR.

c.  Desventajas:

Una de las desventajas podría ser dificultad en el manejo de la lista de acceso. Pero esta

dificultad puede mitigarse con la implementación de métodos apropiados para manejar listas

(leer, insertar, ordenar, etc.)

d.  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. Si el valor del campo ya existe como llave invertida, entonces la dirección

relativa correspondiente al nuevo registro podría:

1.  Agregarse al final de la lista de acceso asociada a tal llave invertida

2. Insertarse en una ubicación adecuada de la lista de apuntadores, para mantener un

orden y facilitar las operaciones AND y OR 

Si el valor de un campo invertido, no se encuentra como llave invertida, entonces se

agrega tal llave al directorio invertido y se inicia su lista de acceso.

•  Eliminación:

Page 4: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 4/10

Primeramente debe localizarse el o los registros que van a eliminare según sea

cualquier criterio. Por ejemplo: Eliminar lodos los alumnos donde Escuela =

INFORMATICA o dicho en términos de SQL:

DELETE AlumnosWHERE Escuela = INFORMATICA

En este caso cada apuntador a esos registros debe eliminarse de las listas donde

aparece. Realmente este es un trabajo que tomara cierto tiempo. Una alternativa podría

ser utilizar el eliminado 1ógico, pero debemos trabajarlo con cuidado para no procesar

registros 1ogicamente eliminados. Cuando eliminamos un registro, lo que hacemos es

eliminar la dirección relativa de las listas de acceso correspondientes, es decir

perdemos la referencia al registro. Sin embargo, los datos reales aun se mantienen en elarchivo maestro, lo que trae como desventaja ocupar espacio innecesario. Por lo tanto,

para mitigar este problema; las direcciones de los registros eliminados podrían

reutilizarse por nuevos registros. EI alumno debería analizar esta situación y crear su

algoritmo de reutilización.

•  Modificación:

Al igual que en el caso anterior, deberíamos acceder primero a los registro a actualizar,luego procedemos a modificarlos, y posteriormente debemos modificar la lista de

acceso, si es que las modificaciones afectaron campos invertidos. 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, en este caso de los alumnos del III ciclo de MATEMATICA. Estas son: {4,

9}

Como el ciclo de ellos antes era III y ahora debería ser IV, entonces la lista de acceso

asociada a la llave invertida III en el directorio invertido deberá ser modificada, de

modo que 4 y 9 desaparezcan de allí y aparezcan ahora en la lista de acceso de la llaveinvertida VI. Así el directorio invertido quedaría como:

Page 5: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 5/10

 

Organización Indexada con Múltiples Niveles

Cuando los niveles de inversión son altos, 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, lo que resultará en un segundo índice e

invertir este segundo índice, lo que a su vez resultará en un tercer índice. Este tipo de estrategia se

denomina organización indexada con niveles múltiples. Esta estrategia se puede aplicar a la

organización secuencial indexada (en este caso con múltiples niveles). Veamos que forma tendría,

con nuestro ejemplo:

El primer Í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, un

segundo índice. A su vez, cada uno de estos valores (llaves invertidas) apuntara a un tercer índice, el

que mantendrá una lista de acceso para cada llave invertida, como en el caso anterior. Finalmente,

cada lista mantendrá las direcciones relativas asociadas, en el archivo maestro.

Page 6: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 6/10

 

a.  Ventaja:

Mayor ef iciencia en realizar consultas, al poder acceder a cada llave invertida con mayor

f acilidad. Por ejemplo con la siguiente consulta:

SELECT * FROM Alumnos 

WHERE ESCUELA = ESTADISTICA

Para resolver este problema, debemos acceder en primer lugar al í ndice que mantiene los

nombres de los campos invertidos (atributos), y buscar el nombre correspondiente a

ESCUELA. Luego de ubicar el nombre del campo correspondiente, obtenemos la dirección

relativa que apunta al comienzo del bloque de sus correspondientes llaves invertidas, en el

segundo Índice. Así , en el segundo Índice buscarí amos el valor ESTADISTICA, para

obtener la dirección relativa, que hará referencia a su lista de acceso, en el tercer Índice.

Finalmente con esa lista de acceso accedemos a leer la inf ormación de cada registro

respectiva en el archivo maestro.

b.  Desventajas:

Las operaciones de eliminación y mantenimiento se toman más complejas.  

Page 7: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 7/10

Organización Indexada con Atributos Múltiples

La indexación de atributos múltiples se refiere a la indexación sobre varios campos combinados,

proporcionando así las rutas de acceso de resolución superior. Se escuchan con frecuencia variostérminos  confusos referentes a esta práctica. Para ilustrar la indexación de atributos múltiples

considérense consultas que hagan usa de las llaves de acceso K1, K2, K3. En algunos casos

especí f icos 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, K2, K3,

para cada uno de sus campos ba jo los que se desea invertir. A esta practica se le denomina

indexación con atributos múltiples.

a.  Ventaja:

•  Mayor acceso a consultas ya f i jados.

•  Resulta eficiente en sistemas estáticos, en el que no haya alto nivel de operaciones sobre

el archivo 

b.  Desventajas:

•  Mayor acceso a consultas ya f i jados. D 

•  En la realidad los archivos están en constante cambio, lo que dificulta el mantenimiento

de estos archivos, debido a su comple jidad 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.

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

Page 8: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 8/10

a.  Estimación del uso del Sistema :

Los benef icios que pueden obtenerse con el sistema, la ef ectividad con la cual se obtengan, y el

costo de operaciones sobre los datos están relacionados con la carga colocada sobre el sistema.

La carga consiste en las demandas de almacenamiento de datos y en las operaciones solicitadas

por las transacciones. A continuación veremos algunos f actores relacionados con el uso del

sistema:

Volumen de Datos

La estimación de la carga colocada en el sistema de archivos, en términos de volumen, se

controla de acuerdo con el número de registros n, número total de campos t, y el tamaño de cada

campo v. 

Carga de Recuperación de Información:

La recuperación de datos es uno de los objetivos centrales del sistema de archivos. La

recuperación de datos se refiere al obtener inf ormación en base a nuestros datos almacenados por

medio de reportes o consultas. Una transacción puede solicitar datos provenientes de más de un

archivo. EI objetivo principal de las bases de datos es la síntesis de datos y por lo tanto la

creación de inf ormación.

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. 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,

semana, mes) . A este tipo de carga se denomina carga operativa. 

La recuperación de la inf ormación es un punto crítico o esencial que tenemos que considerar, 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.

En este punto es recomendable descomponer las f recuencias 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

Page 9: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 9/10

b.  Análisis de los beneficios del sistema:

•  Los benef icios de tener datos surgen del uso de estos.

•  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 f inanciero. Esdecir cuanto, en términos económicos, estoy ahorrando con el uso del sistema.

•  En muchos casos también el benef icio se espera a mediano o largo plazo, es decir talvez no

podamos notar los benef icios en unos pocos dí as, pero el sistema ayudará a cumplir con los

objetivos trazados en un periodo mayor. El sistema es parte de una estrategia de negocio.

•  Los benef icios también están relacionados con el tiempo de respuesta del sistema, si este

tiempo se dilata, entonces el sistema no provocara los efectos esperados.

Ejemplo:

Imagínense, una pequeña entidad de ventas, que necesita un implementar un sistema, de f orma

que pueda atender a la mayor cantidad de clientes. Si el tiempo de actualizaciones es lento,

entonces el sistema será un arma contra la propia institución, es posible que el cliente diga:

"Antes de usar este sistema, el negocio de ventas andaba mejor"

Utilización del sistema

•  EI esfuerzo del operador, necesario para usar el sistema disminuye sus benef icios. 

•  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.   EI tiempo para visualizar la inf amación solicitada.

Costo de Personal

EI efecto de un sistema en los costos de personal es una parte importante del diseño adecuado de

sistemas.

Si un sistema no responde con rapidez se desperdiciará tiempo del operador. Si los retrasos son

significativos, se da un pretexto al operador para descuidar sus labores (salir a comprar) mientras

el sistema procesa la información.

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). Lo correcto es determinar cuanto cuesta  introducir en

f orma correcta un elemento (dato). EI costo de detecció y corrección de un elemento introducido

Page 10: Organizacion de Archivos

5/11/2018 Organizacion de Archivos - slidepdf.com

http://slidepdf.com/reader/full/organizacion-de-archivos-55a2347a7610a 10/10

en forma incorrecta, así como el costo de los daños que el valor equivocado podría haber

ocasionado mientras f ue parte de la base de datos, deben agregarse al costo de captación de

datos.

Es imprescindible que apliquemos diversa técnicas y métodos para mitigar la captura de datosincorrectos. Por  ejemplo. Cada vez que eliminemos un registro presentar la inf ormación del

registro que se eliminará para conf irmar la acción “Eliminar”.

Mientras el error se detecte más próximo a su origen el costo será mucho menor, que si lo

detectamos luego de mucho tiempo. E jemplo: Que pasarí a si en un sistema que almacena datos

de los pacientes de un medico, ingresamos o eliminamos cierta inf ormación errónea,

involuntariamente. Posiblemente, el médico en base a la información almacenada

(supuestamente f idedigna) podrí a prescribir medicamentos inadecuados, ya que la información

de sus pacientes podrían haberse alterado. En este caso los costos pueden ser muy altos.

Otra forma de mitigar estos problemas es realizar un reporte constante de la inf ormación

almacenada en nuestro sistema, de tal forma que podamos encontrar errores o inconsistencia en

f orma temprana.