Ficheros y Bases de Datos

Formas Normales. Ficheros Lógicos y Físicos. Dispositivos de Almacenamiento. Técnicas de Dispersión. Colisiones. Relacional. Integridad Referencial

  • Enviado por: El remitente no desea revelar su nombre
  • Idioma: castellano
  • País: España España
  • 33 páginas
publicidad

FICHEROS Y BASES DE DATOS

TEMA 1 ASPECTOS BÁSICOS DE LOS FICHEROS

1.1 Jerarquía de memoria

Memoria Primaria

- La primera idea es almacenar la información en el medio más rápido posible, para asegurar

una rápida gestión.

- El coste de acceso a memoria primaria, o memoria RAM, es fijo y reducido.

- Pero la utilización de este tipo de memoria presenta diferentes problemas:

- Suele ser un medio bastante caro, por lo que se suele limitar su capacidad.

- La información se pierde al producirse un fallo de corriente eléctrica.

Memoria Secundaria

- Estas limitaciones aconsejan, la utilización de la memoria secundaria.

- Sus propiedades son las siguientes:

- Presenta un coste por byte mucho menor que la memoria RAM.

- Preserva su contenido al producirse un fallo de corriente eléctrica.

- Es bastante más lenta que la RAM y además el coste de acceso no es fijo.

Definición de Ficheros

- La información en memoria secundaria se almacena en ficheros, que se define como una

Colección de Información Relacionada.

- Debido al alto coste temporal del acceso a la memoria secundaria, se desea:

- Maximizar la información recuperada.

- Minimizar el número de accesos.

Manejo de Buffers

- Un buffer se define como un conjunto de bytes, que son leídos o escritos desde un

dispositivo de almacenamiento, en la memoria primaria.

- La utilización de esta técnica permite reducir el número de accesos a memoria secundaria.

1.2 Ficheros lógicos y ficheros físicos

- Desde un punto de vista físico, un fichero se define como un conjunto de bytes que se

almacenan en memoria secundaria.

- Desde el punto de vista de una aplicación, un fichero es su conexión con el mundo exterior,

posibilitándole el envío y la recepción de información.

-De este modo se definen el Fichero Físico y el Fichero Lógico.

- La conexión entre ambos es realizada por el sistema operativo.

1.3 Acceso a los datos situados en ficheros

Administrador de Ficheros

- El administrador de ficheros es la parte del sistema operativo que se encarga de la gestión de

los ficheros.

- Su primera tarea es comprobar que existe una conexión entre el fichero lógico y un fichero

físico determinado.

- Seguidamente se define en que parte del fichero se desea realizar la operación, y si esta se

encuentra en un buffer de memoria.

Procesador de Entrada/Salida

- El procesador de entrada/salida se encarga de controlar el tráfico de información desde y

hacia la memoria primaria.

Número de Buffers y Velocidad de Acceso

- El manejo de buffers por parte del administrador de ficheros permite reducir el número de

accesos a memoria secundaria.

- Pero una cuestión fundamental es el número de buffers a utilizar.

- En realidad se utilizan varios buffers que se manejan de modo indistinto para lecturas y

escrituras.

- Si todos los buffers están ocupados, se debe vaciar uno de ellos para posibilitar una lectura.

- Normalmente se utiliza el algoritmo LRU, es decir, se vacía el buffer menos recientemente

utilizado.

1.4 Coste de acceso a dispositivos de almacenamiento

Tipos de Dispositivos

- Según el modo en el que se accede a un dato dentro del medio de almacenamiento:

- Los Dispositivos de Acceso en Serie, como las cintas magnéticas.

- Los Dispositivos de Acceso Directo, como los discos magnéticos.

- Los primeros se utilizan para almacenar información que deba ser leída o escrita de modo

global.

- Mientras que los segundos se utilizan en el manejo de ficheros cuyo criterio de acceso es

más aleatorio.

1.4.1 Coste de acceso a discos

Organización de un Disco

- Un disco se presenta como un conjunto de Platos, cada uno de los cuales presenta al menos

una Superficie Magnética sobre la que se almacena información.

- Cada superficie se divide en Pistas, y éstas a su vez en Sectores.

- Las operaciones sobre la superficie se realiza a través del Cabezal de Lectura/Escritura.

- El movimiento del cabezal para alcanzar una pista concreta se denomina Desplazamiento.

- Cuando un disco presenta varios platos se denomina Paquete de Discos.

- La capacidad de los sectores suele ser constante en todo el disco, por lo que las pistas

interiores presentan mayor densidad de grabación.

- El acceso a un dato en disco, lee o escribe la información de un sector sobre un buffer.

Organización por Sectores

- Un usuario asume que los ficheros aparecen en sectores continuos dentro del disco.

- Pero no es así, ya que no es posible leer sectores contiguos, porque se requiere un cierto

tiempo para procesar la información inicialmente leída.

- Por tanto, si se almacenaran de este modo, sólo se podría leer un sector en cada giro.

- Para evitar este problema, se suelen intercalar los sectores lógicamente contiguos entre otros

sectores.

- Otra alternativa es el acceso consecutivo de un conjunto de sectores, denominado Cúmulo.

- La secuencia lógica de los cúmulos en el fichero aparece en la FAT.

- Para reducir el coste de acceso, es necesario minimizar el coste de los desplazamientos.

- Un registro puede aparecer en un único sector, lo que puede producir Fragmentación interna.

Organización por Bloques

- Las pistas de los discos también pueden estar organizados por bloques.

- Su tamaño puede ser definido por el usuario, y su valor puede ser fijo o variable.

- Un bloque puede descomponerse en una serie de subbloques:

- Subbloque Contador, que incluye el número de bytes del bloque asociado.

- Subbloque Clave, que incluye la clave del último registro del bloque.

- Subbloque de Datos, en el que aparece la información.

Overhead de las Organizaciones

- Tanto los sectores como los bloques produce cierto overhead de almacenamiento, que

reduce la capacidad del disco.

- Parte de este overhead se produce cuando se formatea el disco.

- En las organizaciones por sectores, debe de incluir en cada sector la siguiente información:

- Dirección del Sector y de la Pista.

- Estado del Sector, útil o dañado.

- Espacios y Marcas de Sincronización.

- El usuario no tiene la posibilidad de manejar esta información. En las organizaciones por

bloques, parte de esta información sí puede ser definida por el programador.

Cálculo del Coste de Acceso a un Disco

- El coste del acceso a un disco se calcula a partir de la suma de tres valores:

- Tiempo de Desplazamiento, para situar el cabezal sobre el cilindro adecuado.

Se obtiene como suma del Tiempo Inicial de Arranque del Cabezal, s, y el producto

del coste de atravesar un cilindro, m, y el número de cilindros a atravesar, n.

f(n) = s + m*n

- Retraso por Rotación, que incluye el tiempo necesario para situar el cabezal en la

pista. Depende de la velocidad de giro del disco y de la posición del cabezal.

- Tiempo de Transferencia, en el que se realiza de modo efectivo la operación.

Depende del número de bytes a transmitir y de la velocidad de giro.

Tiempo Transferencia = (nº bytes a transmitir / nº bytes en la pista) * Tiempo Rotación