DBMS - Estructura de archivo

La información y los datos relativos se almacenan colectivamente en formatos de archivo. Un archivo es una secuencia de registros almacenados en formato binario. Una unidad de disco se formatea en varios bloques que pueden almacenar registros. Los registros de archivos se asignan a esos bloques de disco.

Organización de archivos

La organización de archivos define cómo se asignan los registros de archivos a los bloques de disco. Tenemos cuatro tipos de organización de archivos para organizar registros de archivos:

Organización de archivos de montón

Cuando se crea un archivo usando la Organización de archivos de montón, el sistema operativo asigna un área de memoria a ese archivo sin más detalles contables. Los registros de archivos se pueden colocar en cualquier lugar de esa área de memoria. Es responsabilidad del software administrar los registros. Heap File no admite ningún orden, secuencia ni indexación por sí solo.

Organización secuencial de archivos

Cada registro de archivo contiene un campo de datos (atributo) para identificar de forma única ese registro. En la organización secuencial de archivos, los registros se colocan en el archivo en algún orden secuencial según el campo de clave única o clave de búsqueda. En la práctica, no es posible almacenar todos los registros de forma secuencial en forma física.

Organización de archivos hash

Hash File Organization utiliza el cálculo de la función Hash en algunos campos de los registros. La salida de la función hash determina la ubicación del bloque de disco donde se colocarán los registros.

Organización de archivos agrupados

La organización de archivos agrupados no se considera buena para bases de datos grandes. En este mecanismo, los registros relacionados de una o más relaciones se mantienen en el mismo bloque de disco, es decir, el orden de los registros no se basa en la clave principal o la clave de búsqueda.

Operaciones de archivo

Las operaciones en archivos de bases de datos se pueden clasificar en dos categorías:

  • Update Operations

  • Retrieval Operations

Las operaciones de actualización cambian los valores de los datos mediante inserción, eliminación o actualización. Las operaciones de recuperación, por otro lado, no alteran los datos, sino que los recuperan después de un filtrado condicional opcional. En ambos tipos de operaciones, la selección juega un papel importante. Además de la creación y eliminación de un archivo, puede haber varias operaciones que se pueden realizar en archivos.

  • Open - Un archivo se puede abrir en uno de los dos modos, read mode o write mode. En modo lectura, el sistema operativo no permite que nadie altere los datos. En otras palabras, los datos son de solo lectura. Los archivos abiertos en modo lectura se pueden compartir entre varias entidades. El modo de escritura permite la modificación de datos. Los archivos abiertos en modo de escritura se pueden leer pero no se pueden compartir.

  • Locate- Cada archivo tiene un puntero de archivo, que indica la posición actual donde se leerán o escribirán los datos. Este puntero se puede ajustar en consecuencia. Usando la operación de buscar (buscar), se puede mover hacia adelante o hacia atrás.

  • Read- De forma predeterminada, cuando los archivos se abren en modo lectura, el puntero del archivo apunta al principio del archivo. Hay opciones en las que el usuario puede decirle al sistema operativo dónde ubicar el puntero del archivo en el momento de abrir un archivo. Se leen los siguientes datos del puntero de archivo.

  • Write- El usuario puede seleccionar abrir un archivo en modo de escritura, lo que le permite editar su contenido. Puede ser eliminación, inserción o modificación. El puntero del archivo se puede ubicar en el momento de la apertura o se puede cambiar dinámicamente si el sistema operativo lo permite.

  • Close- Esta es la operación más importante desde el punto de vista del sistema operativo. Cuando se genera una solicitud para cerrar un archivo, el sistema operativo

    • elimina todos los bloqueos (si está en modo compartido),
    • guarda los datos (si se modifican) en el medio de almacenamiento secundario, y
    • libera todos los búferes y controladores de archivos asociados con el archivo.

La organización de los datos dentro de un archivo juega un papel importante aquí. El proceso para ubicar el puntero de archivo a un registro deseado dentro de un archivo varía según si los registros están organizados secuencialmente o agrupados.