Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

U D 1 Introduccion A Los SGBD

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

UNIDAD 1 INTRODUCCIÓN A LOS SGBD

1. FICHEROS

El FICHERO o ARCHIVO es un elemento básico de organización de la información para su procesamiento.

También podemos ver un fichero desde el punto de vista de un Sistema Operativo, en este caso seria
simplemente un conjunto de bits/bytes que se identifican por un nombre.

En el desarrollo de esta unidad nos interesa más el fichero desde el primer punto de vista, que sería el punto de
vista de un Programador.

1.1 ¿QUÉ SON?

Son un conjunto de información relacionada.

Los datos, debidamente estructurados, se almacenan, normalmente en soportes de información asociados a


dispositivos externos (Discos Duros, Cintas Magnéticas, etc.)

Los Ficheros o Archivos se organizan y almacenan en REGISTROS lógicos.

Un Registro es una estructura de datos formada por uno o más elementos llamados CAMPOS del registro.
Constituyen una unidad para un determinado proceso.

Cuando se necesita utilizar un archivo en un programa, se define el tipo de registro que lo formará y,
posteriormente, lo utiliza según las operaciones que tengamos disponibles en el lenguaje de programación utilizado.

Ejemplo 1.1: Descripción de un archivo o fichero utilizado en un programa

Nombre del archivo: CLIENTES


Nombre del registro: R-CLIEN
Campo clave: NIF

Formato del registro:

Campo Nombre Tipo de datos Longitud


1 NIF Alfanumérico 10
2 APELLIDOS Alfanumérico 20
3 NOMBRE Alfanumérico 15
4 NACIMIENTO Fecha 8

......................................................................................................
UNIDAD 1 INTRODUCCIÓN A LOS SGBD

1.2 CARACTERÍSTICAS DE LOS FICHEROS

Aunque ya hemos mencionado estas características al intentar explicar ¿Qué es un fichero?, volvemos a
explicitarlas:

 Residen en soportes externos, por lo que su existencia no está limitada al tiempo de ejecución del programa que lo
crea, sino que permanece cuando éste termina.

 Los datos pueden transportarse de un ordenador a otro.

 Tienen capacidad de almacenamiento ilimitada ya que, aunque un soporte tiene capacidad limitada, un archivo
puede distribuirse en varios soportes.

1.3 CLASIFICACIÓN DE LOS FICHEROS

Los ficheros pueden clasificarse atendiendo a varios criterios:

Atendiendo a la función que realizan los clasificamos en:

 Permanentes.

Sus registros varían poco en el tiempo. También se conocen con el nombre de archivos maestros.

- Constantes. Su información permanece prácticamente invariada, utilizándose como archivos de consulta.

- De situación. Reflejan el estado o situación actual de una empresa o entidad. Estos archivos se actualizan
periódicamente para adaptarlos a una nueva situación. Son los “menos permanentes”.

- Históricos. Se obtienen de los anteriores cuando éstos dejan de utilizarse, y sirven para hacer estudios
futuros estadísticos o de consulta.

 De movimientos.

En ellos se almacena temporalmente la información que se utiliza para actualizar los archivos de situación.

 De maniobra.

Son archivos temporales creados durante la ejecución de un programa y borrados habitualmente al terminar el mismo.
Por ejemplo, archivos intermedios utilizados en procesos de ordenación.

1.4 OPERACIONES QUE PUEDEN REALIZARSE SOBRE UN FICHERO

 Sobre un fichero lógico estructurado y accesible desde un programa:

- Abrir un fichero creado para poder utilizarlo. Cuando el archivo ya existe, debe abrirse para trabajar con él, bien
sea para consultarlo o para actualizarlo. OPEN.

- Leer un registro del fichero. Transfiere la información del registro actual al área de datos del programa que
UNIDAD 1 INTRODUCCIÓN A LOS SGBD

solicita la lectura.

- Escribir un registro en el fichero. Graba en el soporte de almacenamiento el contenido de un registro con los
datos especificados en el área de datos del programa. WRITE.

A su vez, la escritura de un fichero puede tener dos matices. Escribo para añadir un nuevo dato, o escribo para
modificar un dato que ya existe.

- Cerrar un fichero cuando ya no va a utilizarse. Esta operación es obligatoria antes de concluir un programa. Si
un archivo queda abierto, se corre el riesgo de perder información. CLOSE actualiza la situación real del archivo y
elimina de memoria la tabla mantenida por el sistema para agilizar las operaciones de acceso al archivo.

- Indexar un fichero. Es una operación de alto nivel que permite dar a un archivo organización indexada. El acceso
a los registros del archivo se hará a través de un archivo índice que estará ordenado por el campo que se indexó
(clave).

 Sobre un fichero desde el punto de vista del Sistema Operativo

- Crear la estructura del archivo. CREATE, establece la estructura y posición del archivo en el dispositivo de
almacenamiento.

- Eliminar un fichero. Cuando un archivo deja de tener validez, es conveniente borrarlo del dispositivo de
almacenamiento para no desperdiciar espacio. DELETE.

- Renombrar un fichero. RENAME permite cambiar el nombre a un archivo.

- Copiar un fichero. Consiste en duplicar la información de un archivo en otro.

- Editar un fichero. Permite modificar el contenido de un archivo. Se utiliza, sobre todo, en archivos de texto.

1.5 ORGANIZACIÓN DE LOS FICHEROS

Por ORGANIZACIÓN de un fichero entendemos la forma de colocar los registros en el soporte de información.

Existen cuatro tipos de organización de un archivo: secuencial, relativa, indexada e invertida.

 Organización secuencial: Con este tipo de organización, los registros se almacenan uno detrás de otro, sin dejar
huecos y en el orden en que se van grabando. El único modo permitido de acceso a los registros es el secuencial.

Las ventajas de este método radican en que no desaprovechan espacio de almacenamiento y en la elevada eficiencia de
recuperación de registros cuando el porcentaje de consultados es suficientemente grande.

Entre sus inconvenientes:

- Para acceder a un registro, hay que leer todos los que hay delante de él, que de media son la mitad de los
registros del archivo.

- No se puede insertar un registro en medio de otros dos, ya que sólo está permitido añadir registros al final del
UNIDAD 1 INTRODUCCIÓN A LOS SGBD

archivo, lo que supone que si el archivo está ordenado, hay que reordenarlo.

- No se puede borrar un registro porque se generaría un hueco.

- Para actualizar un archivo es necesario un archivo de movimientos, trasladar el fichero maestro actualizado a uno
nuevo y, posteriormente, cambiar el nombre al nuevo por el del fichero maestro.

En la actualidad se utilizan poco los archivos con organización secuencial. Únicamente se aconseja esta organización para
archivos históricos y constantes. Un ejemplo de archivo con organización secuencial puede ser el de abonados a una
compañía telefónica, en el que se almacenan los datos que aparecen anualmente en las guías.

Para mejorar las prestaciones de la organización secuencial se pueden utilizar variantes de esta como las siguientes:

- Organización secuencial-indexada: los registros se graban en un fichero secuencialmente, pero se pueden


recuperar directamente utilizando un fichero adicional llamado índice que contiene la información de la posición
que ocupa cada registro en el fichero de datos. La veremos más adelante como organización indexada.

- Organización secuencial-encadenada: permite tener los registros ordenados según un orden lógico diferente
del orden físico en el que están grabados, gracias a la utilización de campos adicionales llamados punteros.

 Organización relativa: en este tipo de ficheros los registros se graban en orden según el valor de uno de sus
campos llamado campo de ordenación, cuyos valores son distintos para cada registro.

La lectura en estos ficheros es eficiente cuando se hace según el campo de ordenación

La inserción de registros es costosa ya que puede implicar desplazamiento de registros para poder mantener el orden.

La eliminación de registros es menos costosa si se usan registros marcados y se reorganiza el fichero periódicamente.

La modificación no ofrece problemas si no afecta al campo de ordenación.

Físicamente, la organización relativa es un conjunto de posiciones contiguas de memoria que tiene longitud fija. Cada
posición se denomina bloque. El número de bloques que forman el archivo está predeterminado inicialmente. Los bloques
están numerados de 1 a n (ó de 0 a n-1), siendo n el número de bloques del archivo. Cada bloque puede contener uno o
varios registros. Por tanto, el número total de registros que puede contener el archivo es el número de bloques multiplicado
por el número de registros que caben en cada bloque.

 Organización Aleatoria o Dispersión: se elige un campo llamado campo de dispersión. Al valor del campo se le
aplica una función llamada función de aleatorización o de dispersión que, tomando como entrada dicho valor, devuelve
un número que será la dirección del bloque de disco en que se almacenará el registro.

Como campo de dispersión se suele utilizar un campo clave.

Por otra parte las funciones de aleatorización o dispersión deben ser eficaces para distribuir los registros de manera
que se produzca el menor número de colisiones posible. Una colisión se produce cuando 2 claves distintas a las que
UNIDAD 1 INTRODUCCIÓN A LOS SGBD

se le aplica la función de aleatorización dan lugar a una misma dirección de localización y almacenamiento. En estos
casos hay que buscar alternativas de ubicación.

 Organización indexada: La organización indexada nace para suplir las deficiencias de la secuencial (no hay acceso
directo a los registros) y de la relativa (se accede directamente a los registros sólo por un campo). En muchos casos
conviene recuperar la información accediendo por campos que no son clave. También puede ser necesario recuperar
los registros en una secuencia distinta a la que ocupan físicamente.

Se denomina archivo índice a un archivo que contiene dos campos: uno con los valores del campo por el que se desea
recuperar la información y otro con la dirección física (puntero) que ocupa el registro en el archivo de datos. El archivo
índice se mantiene ordenado por el campo de datos, facilitando la búsqueda. Su función es análoga al índice de un libro.

- Un archivo de datos puede tener asociados tantos índices como sea necesario.

- Puede utilizarse una combinación de campos para formar el campo de un índice; por ejemplo, Apellidos +
Nombre.

- Al actualizar el archivo de datos se debe reorganizar todos sus índices para mantener la coherencia.

- Los índices pueden ser varios niveles. En los índices de nivel mayor de uno se busca el primer elemento mayor o
igual que el deseado. Este procedimiento facilita el acceso a los registros, sin embargo, complica los algoritmos de
mantenimiento del índice.

Ejemplo 1.1: Archivo Indexado con Clave de búsqueda Nombre

A. ÍNDICE A.DATOS

Clave Puntero Dirección Código Nombre


A 7 1 100 B
B 1 2 110 F
C 8 3 120 H
D 10 4 130 J
E 9 5 140 I
F 2 6 160 K
G 11 7 200 A
H 3 8 210 C
I 5 9 250 E
J 4 10 300 D
K 6 11 360 G
L 12 12 400 L
M 15 13 500 N
N 13 14 550 O
O 14 15 600 M
P 17 16 700 Q
Q 16 17 999 P
U.D. 1 INTRODUCCIÓN A LOS SGBD

Dentro de los archivos indexados, podemos hablar de varios tipos básicos de índices:

- Índices primarios

En ellos, tanto el índice como el área de datos están ordenados por el campo clave

- Índices de Agrupamiento

Se utilizan sobre campos no clave, esto es, sobre campos que no tienen un valor distinto para cada registro.

- Índices Secundarios

Se pueden establecer sobre campos clave o sobre campos no clave de un fichero.

Pueden existir más de un índice secundario en un fichero, cada uno representaría una opción de ordenación
diferente.

(Recordemos que los archivos índice siempre son archivos ordenados)

Otro concepto que tendremos que tener en cuenta, asociado a los índices, es el de

Índice DENSO: cuando existe un registro de índice por cada uno de los registros principales del fichero

Índice NO DENSO: en caso contrario. Es decir, varios registros del archivo principal están agrupados en un bloque y se
corresponden con un solo registro del archivo índice.
U.D. 1 INTRODUCCIÓN A LOS SGBD

Una organización no básica es la siguiente

 Organización invertida: Los sistemas de gestión de bases de datos utilizan accesos más complejos que los utilizados
en sistemas de archivos. Por ello, establecen organizaciones de archivos de alto nivel basadas en las anteriores. Una
organización de alto nivel es la invertida.

Para un archivo de datos se crean dos índices:

- De nombre. Contiene las claves por las que se desea acceder. Se almacenan en una columna los nombres
de las claves de acceso y en la otra un puntero con la dirección de la clave en el índice.

- De valor. Contiene todos los valores distintos de los campos clave y un puntero con un conjunto de valores
del archivo de datos que cumplen la condición de la clave.

Ejemplo 1.2: Archivo Invertido con claves de búsqueda Sexo y Tipo.

A.DATOS

Dirección Código Nombre Sexo Tipo


1 111 Juan V Infantil
2 222 Rosa M Investigador
3 333 Pedro V Colaborador
4 444 Raúl V Infantil
5 555 Carlos V Normal
6 666 Sofía M Trabajador
7 777 Ana M Infantil
8 888 Iván V Colaborador

ÍNDICE VALOR ÍNDICE NOMBRE

Dirección Valor-clave Puntero Nombre-clave Puntero


1 V 1, 3, 4, 5, 6 Sexo 1
2 M 2, 6, 7 Tipo 3
3 Colaborador 3, 8
4 Infantil 1, 4, 7
5 Investigador 2
6 Normal 5
7 Trabajador 6

También podría gustarte