dispersión estática abierta

8
Dispersión Estática Abierta Ubicación de desbordes en unidades ajenas (correspondientes a otra familia de sinónimos) Se define la capacidad del archivo considerando que al alcanzar la máxima cantidad estimada de registros si densidad de carga sería 0,8: 0,8 es a 20, lo que 1 es a la capacidad que debe tener el archivo, entonces capacidad=20/0,8=25. Si se definen bloques con capacidad para 3 registros, los archivos deben tener 25 div 3=8 bloques, y como 25 mod 3>0 le sumamos uno más: 9 Para dispersión doble se considera la función de dispersión mod 5. Claves a insertar con sus dispersiones: Clave Clave mod 9 Clave mod 5 + 1 123 6 4 458 8 4 741 3 2 426 3 2 459 0 5 946 1 2 462 3 3 305 8 1 270 0 1 809 8 5 376 7 2 446 5 2 410 5 1 973 1 4 954 0 5 484 7 5 789 6 5 630 0 1 557 8 3

Upload: federico-gonzalez

Post on 15-Jan-2016

15 views

Category:

Documents


0 download

DESCRIPTION

dispersion

TRANSCRIPT

Page 1: Dispersión Estática Abierta

Dispersión Estática Abierta

Ubicación de desbordes en unidades ajenas (correspondientes a otra familia de sinónimos) Se define la capacidad del archivo considerando que al alcanzar la máxima cantidad estimada de registros si densidad de carga sería 0,8: 0,8 es a 20, lo que 1 es a la capacidad que debe tener el archivo, entonces capacidad=20/0,8=25.Si se definen bloques con capacidad para 3 registros, los archivos deben tener 25 div 3=8 bloques, y como 25 mod 3>0 le sumamos uno más: 9Para dispersión doble se considera la función de dispersión mod 5.Claves a insertar con sus dispersiones:

 

Clave Clave mod 9 Clave mod 5 + 1123 6 4458 8 4741 3 2426 3 2459 0 5946 1 2462 3 3305 8 1270 0 1809 8 5376 7 2446 5 2410 5 1973 1 4954 0 5484 7 5789 6 5630 0 1557 8 3731 2 2

Saturación Lineal

Los registros no se ordenan dentro de los bloques, para evitar reubicaciones de registros cuando un bloque se desborda (si se reubicara un desborde de un bloque previo, se alejaría del bloque correspondiente).Se usa el indicador de desborde para acotar búsquedas infructuosas a secuencias de bloques desbordados. 

Page 2: Dispersión Estática Abierta

Desbordado Contador0 V 3 459 270 9541 V 3 946 973 6302 F 2 557 7313 F 3 741 426 4624 F 05 F 2 446 4106 F 2 123 7897 F 2 376 4848 V 3 458 305 809

 

Saturación Lineal Encadenada

Se puede encadenar los bloques (el puntero de encadenamiento sustituye al indicador de desborde), pero la optimización es poca: 

ProxBloque Contador0 1 3 459 270 9541 -1(*) 3 946 973 6302 -1 2 557 7313 -1 3 741 426 4624 -1 05 -1 2 446 4106 -1 2 123 7897 -1 2 376 4848 2 3 458 305 809

(*) Ningún registro que tuviera al bloque 1 como destino pasó a otro bloque.Este esquema de encadenamiento tiene más sentido cuando los cubos son individuales (ranuras). Para organizar los mismos registros, se deberían inicializar 25 ranuras vacías. Se Deben encadenar sólo sinónimos, y cada cadena debe comenzar en la dirección correspondiente a la familia de sinónimos: 

Clave Clave mod 25123 23458 8741 16426 1

Page 3: Dispersión Estática Abierta

459 9946 21462 12305 5270 20809 9376 1446 21410 10973 23954 4484 9789 14630 5557 7731 6

     

Estado Sig0 V -11 O 426 22 O 376 -13 V -14 V -15 O 305 -16 V -17 V -18 O 458 -19 O 459 10

10 O 809 -111 V -112 O 462 -113 V -114 V -115 V -116 O 741 -117 V -118 V -119 V -120 O 270 -121 O 946 2222 O 446 -123 O 123 -1

Page 4: Dispersión Estática Abierta

24 V -1

Continuación desde inserción de 410: el registro contenido en la ranura 10 no tiene identificador sinónimo de 410; entonces hay que reubicarlo para que la cadena del 10 comience en el lugar que corresponde: 

Clave Clave mod 25123 23458 8741 16426 1459 9946 21462 12305 5270 20809 9376 1446 21410 10973 23954 4484 9789 14630 5557 7731 6

     

Estado Sig0 V -11 O 426 22 O 376 -13 V -14 O 954 -15 O 305 -16 V -17 V -18 O 458 -19 O 459 11

10 O 410 -111 O 809 -1

Page 5: Dispersión Estática Abierta

12 O 462 -113 V -114 V -115 V -116 O 741 -117 V -118 V -119 V -120 O 270 -121 O 946 2222 O 446 -123 O 123 2424 O 973 -1

 Continuación desde inserción de 484: en la ranura 9 comienza una cadena de sinónimos; una política posible es seguir la cadena hasta su último registro, y buscar espacio libre a partir de allí: 

Estado Sig0 V -11 O 426 22 O 376 -13 V -14 O 954 -15 O 305 66 O 630 -17 O 557 -18 O 458 -19 O 459 11

10 O 410 -111 O 809 1312 O 462 -113 O 484 -114 O 789 -115 V -116 O 741 -117 V -118 V -119 V -120 O 270 -121 O 946 2222 O 446 -123 O 123 2424 O 973 -1

Page 6: Dispersión Estática Abierta

 Para insertar el 731, se encuentra su ranura ocupada por un registro cuya clave no es sinónimo, por lo que hay que reubicarlo: 

Estado Sig0 V -11 O 426 22 O 376 -13 V -14 O 954 -15 O 305 156 O 731 -17 O 557 -18 O 458 -19 O 459 11

10 O 410 -111 O 809 1312 O 462 -113 O 484 -114 O 789 -115 O 630 -116 O 741 -117 V -118 V -119 V -120 O 270 -121 O 946 2222 O 446 -123 O 123 2424 O 973 -1

 

Dispersión Doble

Desbordado Contador0 V 3 459 270 9541 F 3 946 973 6302 F 2 557 (*) 7313 F 3 741 426 4624 F 05 F 2 446 4106 F 2 123 7897 F 2 376 484

Page 7: Dispersión Estática Abierta

8 V 3 458 305 809 (*) 557 mod 9 = 8; (8 + 3) mod 9 = 11 mod 9 = 2