Organizaciones de ficheros


Estas son las organizaciones de ficheros ordenados según su nivel de complejidad, de los cuales vamos a analizar sus ventajas e inconvenientes de cada una de ellas. Hablare sobre las ventajas e inconvenientes de cada una de las organizaciones, para así ver cual nos convendría mas utilizar en función de lo que estemos buscando conseguir y de si necesitamos una estructura mas simple o compleja. El uso de cada una de ellas dependerá de varios factores.


Apilo

Ventajas

  1. Su estructura es muy simple y fácil de programar.
  2. Es la organización con el tiempo de inserción más rápido ya que sólo se añade el registro al
    final.
  3. Aprovecha muy bien el espacio (sobre todo con registros no estructurados).
  4. Se utiliza en sistemas automáticos de adquisición de datos, donde lo importante es recoger los datos más que procesarlos en algún modo.
  5. Es adecuada para lecturas no ordenadas.
  6. La organización de apilo se utiliza cuando se desean almacenar datos sin tener en cuenta el orden. Algunos posibles ejemplos serían:

    • Resultados de análisis clínicos (sustancia, medición, etc.).
    • Resultados de las votaciones de unas elecciones: mesa y colegio electoral.
    • Pedidos de compra: producto, cantidad, etc.

  7. Esta organización suele ser utilizada como organización auxiliar de otras organizaciones.

Inconvenientes

  1. Organización primitiva y con pocas ventajas en el acceso a datos.
  2. Requiere altos costes de mantenimiento por las reorganizaciones periódicas provocadas por
    los borrados o actualizaciones.
  3. Puede provocar redundancia de la información.

Secuencial

Ventajas

  1. La estructura de la organización es sencilla y fácil de programar.
  2. La organización secuencial soluciona algunos de los inconvenientes de la organización de
    apilo:

    • Búsqueda eficiente de un registro.
    • Muy conveniente para el acceso secuencial basado en la clave de los registros.
    • La lectura ordenada es muy eficiente si no hay zona de derrama.

La organización secuencial se utiliza cuando se desea buscar de forma eficiente un registro utilizando la clave y cuando se desea recorrer los registros de forma ordenada y eficiente.
Ejemplos: Procesamientos por lotes, nóminas, facturación, actas de evaluación Los ficheros relativos permiten un acceso directo a los registros.



Inconvenientes

  1. La organización ordenada le resta flexibilidad, si por ejemplo se quiere ordenar por otro campo que no sea clave.
  2. La inserción de un registro es problemática.
  3. No mejora la búsqueda basada en atributos que no forman parte de la clave.


Encadenada

Ventajas

  1. Permiten definir varios órdenes internos en un mismo fichero.
  2. Los ficheros encadenados permiten representar relaciones complejas entre clases de objetos del mundo real mediante punteros.
  3. Muy usadas como base de otras organizaciones porque es una organización potente que aminora el coste de mantener información relacionada.

Inconvenientes

  1. Pueden presentar problemas de pérdida de información si las cadenas son simples y los punteros se deterioran.
  2. Los punteros físicos dependen del dispositivo.
  3. Los punteros relativos dependen de la posición del registro dentro del fichero.
  4. El elevadísimo coste en las reorganizaciones cuando hay más de una cadena.

Secuencial indexada

Ventajas

  1. Permite un acceso directo y secuencial usando la clave más eficiente que en la organización secuencial por el uso del índice y por tener la zona de derrama ordenada mediante una cadena.
  2. Permite un recorrido ordenado de los registros por medio de la clave más eficiente que en la secuencial, ya que la zona de derrama está ordenada mediante el uso de un fichero de apilo
  3. encadenado.

Inconvenientes

  1. Los inconvenientes son los siguientes:
  2. Ocupa más espacio para poder almacenar los índices.
  3. Requiere reorganizaciones periódicas y costosas.

Indexada

Ventajas

  1. Eficiencia en el acceso a la información en base a un predicado en el que puedan intervenir un número no predefinido de atributos.
  2. Rapidez en accesos exactos, genéricos u ordenados.
  3. Alta disponibilidad de la información sin requerir reorganizaciones frecuentes.
  4. Flexibilidad en la estructuras que simplifiquen los procesos de inserción, actualización, borrado, etc.

Inconvenientes

  1. Existencia de la zona de derrama.
  2. Frecuentes y costosas reorganizaciones.
  3. Imposibilidad de accesos rápidos por otros atributos que no sean la clave.
  4. Poca eficiencia en el recorrido ordenado por otros atributos que no sean la clave.

Este tipo de organización puede usar distintas implementaciones para trabajar con el índice:

  • Índice simple
  • Índice en árbol binario
  • Índice en árbol B
  • Índice en árbol B+

Hashing

Ventajas

  1. Se pueden usar los valores naturales de las claves, puesto que se traducen internamente a direcciones.
  2. La independencia lógica y física es lograda, debido a que los valores de las llaves son independientes del espacio de dirección. Si el archivo relativo es reorganizado, la función hash puede tener que ser cambiada, pero el valor de la llave no será afacetado.

Desventajas

  1. El tiempo de procesamiento requerido para la aplicación de la función hash.
  2. El tiempo de procesamiento y los accesos de E/S requeridos para solucionar las colisiones.

1 comentarios:

  1. Ángel Carmona dijo...:

    Tienes errores en apilo e indexada.

Publicar un comentario