12. Para mantener ordenado y compactado el fichero, hay que crear un fichero nuevo a partir del existente.
13.
14.
15. Ficheros con organización secuencial EJEMPLO DE INSERCIÓN Dirección de memoria Marca de borrado Campo 1 Campo 2 Registro 10 Óscar García Regristro 1 11 Rafa López Regristro 2 12 Sergio López Registro 3 13 Víctor Gálvez Regristro 4 14 Registro 5
16. Ficheros con organización secuencial EJEMPLO DE INSERCIÓN Dirección de memoria Marca de borrado Campo 1 Campo 2 Registro 10 Óscar García Regristro 1 11 Rafa López Regristro 2 12 Sergio López Registro 3 13 Víctor Gálvez Regristro 4 14 Gema Torres Registro 5
17. LECTURA Ficheros con organización secuencial Dirección de memoria Marca de borrado Campo 1 Campo 2 Registro 10 Óscar García Regristro 1 11 Rafa López Regristro 2 12 Sergio López Registro 3 13 Víctor Gálvez Regristro 4 14 Gema Torres Registro 5
18. Dirección de memoria Marca de borrado Campo 1 Campo 2 Registro 10 Óscar García Regristro 1 11 Rafa López Regristro 2 12 X Sergio López Registro 3 13 X Víctor Gálvez Regristro 4 14 Gema Torres Registro 5 Ficheros con organización secuencial BORRADO
19. Ficheros con organización relativa Son ficheros en los que el almacenamiento físico de los registros se realiza mediante el empleo de una clave que indica la posición del registro dentro del fichero y la posición de memoria donde esta almacenado. Hay dos tipos de organización relativa: directa y aleatoria
20. Ficheros con org. relativa DIRECTA La organización directa está basada en la independencia entre el orden en que se dan de alta los registros y la posición en la que se graban en el soporte. Como la clave es la posición de memoria, para acceder a un registro es suficiente con conocer el valor de la clave, ya que con él se obtiene la dirección de almacenamiento, accediento de inmediato al registro deseado .
21.
22.
23. Deja gran cantidad de posiciones libres de memoria dentro del fichero, debido a que las claves de los registros pueden indicar posiciones de almacenamiento no contiguas.
24.
25. Ficheros con org. relativa DIRECTA EJEMPLO Area de datos Registro DNI Nombre Curso 1 30123123 Víctor Gómez 1 2 3 30456456 Alberto Martín 1 4 30678678 Raquel Muro 2 Area de overflow 3 30789789 Isabel Fdez. 1 *El DNI es el campo clave
26. Ficheros con org. relativa ALEATORIA Son ficheros con organización relativa y clave alfanumérica, por lo que se debe transformar obteniéndose un valor numérico entero que facilite la correspondencia directa entre la clave y la dirección de memoria. Las claves no coinciden con las direcciones físicas. El valor de la clave debe estar en relación con la capacidad máxima del soporte físico. No se pueden almacenar registros cuya dirección de almacenamiento sea mayor que los limites máximos del fichero. En este tipo de organización, cada dirección física puede ser ocupada por más de un registro, ya que el algoritmo de transformación aplicado a la clave puede generar a partir de claves diferentes, la misma posición de almacenamiento en memoria.
36. Para el borrado, borramos el registro y queda libre el hueco para poder poner un nuevo registro.
37. FICHEROS SECUENCIAL ENCADENADA: PUNTEROS -Son ficheros de organización secuencial gestionados mediante punteros (campos que contienen la dirección de un registro dentro del fichero). -Los punteros son un campo adicional, por lo que aumentan el tamaño de los registros y forman parte integrante de la estructura del registro indicando cual es el siguiente o el anterior registro en secuencia lógica y no en secuencia física. -Las características de los punteros son: estar en cada registro en una posición fija y definida para todos los registros y poseer una longitud constante. En estos ficheros la secuencia física y la secuencia lógica no coinciden, pudiendo ocurrir que el último registro en secuencia física sea el primero en secuencia lógica y viceversa. -La adición de registros se realiza al final, ya que son secuenciales. -La eliminación de registros se efectúa marcando el registro, de modo que el fichero mantiene su tamaño, ya que el borrado que se produce es lógico, pero no físico.
39. ORGANIZACIÓN SECUENCIAL INDEXADA Este tipo de organización aprovecha las ventajas de las organizaciones secuencial y relativa. La información almacenada se gestiona mediante la utilización de tablas cuyos elementos contienen las direcciones de los registros a los que se puede acceder secuencialmente. Formados por: Área primaria . Es la zona donde están los registros ordenados por el valor de su clave. Este área del fichero se encuentra dividida en segmentos que almacenan registros consecutivos y en posiciones contiguas. Es un área de organización secuencial, donde el acceso a cada registro se realiza en una doble operación: un acceso directo al segmento donde se haya ubicado el registro buscado para posteriormente acceder de forma secuencial a los registros del segmento hasta localizar el registro buscado o alcanzar el final del segmento en caso de no hallarse el registro deseado. Área de índices. En este área los registros están formados por dos campos. El primero contiene la clave del último registro de cada segmento siendo el registro límite inferior del segmento. El segundo campo contiene la dirección de comienzo de cada uno de los segmentos en los que se halla dividida el área primaria Área de overflow. Es la zona destinada a contener los registros almacenados posteriormente a la creación del fichero, por lo que no han sido incluidos en el área primaria, teniendo claves intermedias a las de los registros previamente almacenados en el área primaria.
40.
41. ORG. SECUENCIAL INDEXADA-ENCADENADA Este tipo de organización aprovecha las ventajas de la organización secuencial encadenada e indexada. Se caracteriza por la utilización de punteros e índices de forma simultánea, lo que implica un aumento del espacio ocupado pero proporciona una gran rapidez en la búsqueda de registros. Para eliminar registros se marcan, en lugar de ser borrados físicamente. Las adiciones se realizan sobre la zona de overflow ya que no se pueden añadir registros en el área primaria una vez creado el fichero. Estos ficheros deben ser reorganizados con frecuencia ya que la no eliminación física de los registros marcados y las adiciones crean un área de overflow grande, llegando a funcionar como ficheros secuenciales en caso de no ser reorganizados. FUNCIONAMIENTO: La forma de acceder a un registro es: 1) Ir al área de índices. 2) Buscar la dirección de inicio del bloque de registros a la que pertenece. * Si no se encuentra el área de índices el último registro del bloque apuntará a un bloque de área de overflow. Si tampoco lo encuentra se acaba la búsqueda.
42. BÚSQUEDA DE UNA CLAVE: Existen varias claves y habrá que ver cuál de los punteros adyacentes a una clave en un nodo se utiliza para pasar al nodo hijo en caso de que sea necesario. El proceso consiste en iniciar la búsqueda del nodo raíz, la clave que estemos buscando se llamará Z. Si la clave existe y es igual que Z finalizaizará el proceso. Si la clave existe pero no es Z se repite el proceso. Si la clave no existe, continúa el proceso. ORG. SECUENCIAL INDEXADA-ENCADENADA
43. INSERTAR ORG. SECUENCIAL INDEXADA-ENCADENADA Hay que hacer una búsqueda en el árbol. Si la clave no se encuentra se inserta. Una vez determinado el lugar de inserción en el nodo hoja correspondiente se hace de la siguiente forma: -Si el nodo hoja está completo, -Si el nodo hoja está completo, -Si el nodo padre no está completo, -Promocionar claves hasta el nodo raíz. 10 20 5 8 25 65 92 99 12 18 10 20 4 5 8 25 65 92 99 12 18 Agregar el 4
44. ELIMINAR ORG. SECUENCIAL INDEXADA-ENCADENADA Para evitar problemas hay que seguir un procedimiento general: -Si el nodo en el que se va a realizar la eliminación contiene después de la operación de borrado al menos m/2 hijos el proceso termina. -Si no se produce esa situación, es necesario reestructurar el árbol para que siga manteniendo su estructura del árbol B. 10 20 65 4 5 8 70 75 80 85 12 18 10 20 65 4 5 - 70 75 80 85 12 18 Eliminar el 8 25 56 25 56