16
Miguel Orquera

Organización de los archivos en bases de datos

Embed Size (px)

Citation preview

Page 1: Organización de los archivos en bases de datos

Miguel Orquera

Page 2: Organización de los archivos en bases de datos

Los archivos se organizan lógicamente como

secuencias de registros y se guardan en bloques.

En las bases de datos relacionales, las filas de diferentes tablas tienen tamaños diferentes.

Los archivos pueden almacenar registros de longitud fija o variable.

Organización de los archivos

Page 3: Organización de los archivos en bases de datos

Create table cuenta

( nroCuenta char(10),

nombreSucursal char(22),

saldo decimal(12,2)

)

Cada registro de esa tabla ocupará 40 bytes, por lo que es muy fácil su implementación en un archivo.

Registros de longitud fija

Page 4: Organización de los archivos en bases de datos

Registros de longitud fija

Es difícil borrar registros, se debe mover a todos los siguientes para cubrir el vacío.

Page 5: Organización de los archivos en bases de datos

Registros de longitud fija

Esta solución es mejor que a anterior para cubrir los espacio vacíos, pero se desordenan los registros.

Page 6: Organización de los archivos en bases de datos

Registros de longitud fija con lista de espacio libre

Se asigna un espacio como cabecera del archivo, allí se guarda entre otras cosas la dirección del primer registro borrado, éste espacio guarda un puntero al segundo registro borrado, etc. Se genera una lista de registros libres, que se utiliza para las inserciones.

Page 7: Organización de los archivos en bases de datos

Surgen por varias causas:

Almacenamiento de varios tipos de registros en un mismo archivo.

Registros con tipos de datos de longitud variable.

Registros que permiten campos repetidos, como arreglos.

Registros de longitud variable

Page 8: Organización de los archivos en bases de datos

Bloques con ranuras: se organizan así los bloques de datos para guardar registros de longitud variable.

Registros de longitud variable

TamañoUbicación

Page 9: Organización de los archivos en bases de datos

Las tablas son un conjunto de registros. En cambio,

la organización de los registros en archivos se puede dar de varias maneras:

Archivos en montículo: se puede colocar un registro en cualquier parte de un archivo donde haya espacio. Hay un archivo por cada tabla.

Como archivos secuenciales.

Organización hash de archivos (Se explicará en el capítulo de índices)

Agrupar varias tablas en un archivo.

Organización de los registros en archivos

Page 10: Organización de los archivos en bases de datos

Están ordenados en base a una clave de búsqueda que es uno o

mas atributos de una tabla. Los registros se vinculan con punteros en el orden de la clave

de búsqueda. Los registros se guardan físicamente en el orden de la clave de

búsqueda. Resulta difícil mantener el orden físico cuando hay muchas

inserciones o borrados. Se puede gestionar los registros borrados mediante cadenas de

punteros. En una inserción, si el bloque en donde se debe insertar está

lleno, se ubica en un nuevo bloque de desborde. Para volver a ser eficiente un archivo secuencial debe

reorganizarse luego de muchas modificaciones.

Organización de archivos secuenciales

Page 11: Organización de los archivos en bases de datos

Organización de archivos secuenciales

Page 12: Organización de los archivos en bases de datos

En DBMS modernas, el sistema operativo ve a la BD

como un archivo de gran tamaño, y deja que el mismo DBMS gestione ese archivo.

La DBMS organiza a las tablas de la manera que mas le convenga dentro de ese gran archivo, almacenando registros de dos o mas tablas en un mismo bloque si lo considera necesario.

Agrupación de varias tablas en un archivo

Page 13: Organización de los archivos en bases de datos

Agrupación de varias tablas en un archivo

Page 14: Organización de los archivos en bases de datos

Agrupación de varias tablas en un archivo

CONSULTA:Select número_cuenta, nombre_cliente, calle_cliente, ciudad_clientefrom impositor i, cliente cwhere i.nombre_cliente=c.nombre_cliente

Page 15: Organización de los archivos en bases de datos

Almacenamiento del catálogo del sistema

Page 16: Organización de los archivos en bases de datos

Agrupación de varias tablas en un archivo

CONSULTA: select * from cliente