next up previous contents
Next: Índices Up: Organizaciones de ficheros y Previous: Dispersión lineal   Índice General

Agrupamiento

Hasta ahora se ha supuesto que todos los registros de un fichero son del mismo tipo. En muchas aplicaciones existen relaciones entre los registros de varios ficheros distintos. Estas relaciones se pueden representar mediante campos conectores. Por ejemplo, en el registro de un empleado aparece un campo conector cuyo valor indica el código de la oficina a la que pertenece. En el fichero de las oficinas, los registros tendrán un campo que será el código de oficina. Cuando se quiere acceder a los campos de dos registros relacionados, por ejemplo, a los datos de un empleado y los datos de su oficina, se debe acceder primero al registro del empleado y utilizar el campo conector para obtener el registro con el que se relaciona en el fichero de las oficinas. De este modo, las relaciones se están representando mediante referencias lógicas entre registros de distintos ficheros.

Otro modo de representar las relaciones es mediante referencias físicas: los registros relacionados se almacenan juntos en el mismo fichero. Esta organización es apropiada cuando se espera utilizar muy a menudo una determinada relación en el acceso a los datos, ya que implementarla físicamente puede aumentar la eficiencia del sistema al acceder a los registros relacionados. Por ejemplo, si se quisiera acceder con frecuencia a una oficina junto con los empleados que trabajan en la misma, sería conveniente poner el registro de cada oficina junto con los registros de todos sus empleados contiguos en el disco, en un mismo fichero. Ya que los registros de todos los empleados de una misma oficina se encuentran físicamente juntos, y a continuación del registro con los datos de su oficina, el campo que hace referencia a la misma en los registros de los empleados no es necesario.

Para poder distinguir los registros de un fichero en el que se ha utilizado el agrupamiento, hay que añadir un campo a cada registro en donde se indique su tipo (suele ser el primer campo).

También es posible utilizar el agrupamiento en ficheros cuyos registros son todos del mismo tipo. Por ejemplo, en un fichero de empleados se puede tener los registros de los empleados agrupados por puesto de trabajo: todos los empleados con un mismo puesto están contiguos físicamente. Del mismo modo que antes, el campo que hace referencia al puesto se puede eliminar, pero hay que incluir un registro con el nombre del puesto delante del grupo de empleados.

Cuando se utiliza el agrupamiento, se favorecen los accesos a través de la relación en la que se basa dicho agrupamiento, pero se penalizan los accesos a través de cualquier otro campo. Ya que éste es un fichero ordenado (aunque de un modo especial), tiene las mismas ventajas e inconvenientes que los ficheros ordenados.


next up previous contents
Next: Índices Up: Organizaciones de ficheros y Previous: Dispersión lineal   Índice General
María Mercedes Marqués Andrés
2001-02-12