190 likes | 346 Views
Bases de Datos II ESTRUCTURAS DE LOS ARCHIVOS. Elaborado por: Guillermo Baquerizo I Término 2012-2013. CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS. BÚSQUEDA Y EXTRACCIÓN DE REGISTROS
E N D
Bases de Datos IIESTRUCTURAS DE LOS ARCHIVOS Elaborado por: Guillermo Baquerizo I Término 2012-2013
CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS BÚSQUEDA Y EXTRACCIÓN DE REGISTROS • Si se examina un registro individual, es conveniente identificarlo con una clave o llave respecto de los demás, la cual se basa en el contenido del registro. • Cuando se busca un registro se debe definir una forma estándar para el manejo de claves. A esta forma se le denomina forma canónica. • Una forma canónica para una clave es la representación única para esa clave que se ajusta a algún tipo de regla.
CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS BÚSQUEDA SECUENCIAL • Una medida de la eficiencia de este método está basada en el número de comparaciones requeridas para realizar la búsqueda. • Si el registro está al inicio, sólo se necesitará un intento. • Si el registro está al final, se necesitarán n intentos, siendo n la cantidad de registros. • En promedio se necesitarán n/2 intentos hasta realizar la búsqueda secuencial.
CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS BÚSQUEDA BINARIA • La restricción es que los registros deben estar previamente ordenados. • En cada nuevo intento se decide buscar en la mitad del arreglo y así recursivamente. • Si n es la cantidad de registros y ésta es igual a 1024 • Para la búsqueda secuencial se necesitarán 512 intentos en promedio. • Para la búsqueda binaria se necesitará en el peor de los casos un total de 10 iteraciones.
CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS BÚSQUEDA SECUENCIAL vs.BÚSQUEDA BINARIA Mientras mayor sea el número de registros, la BS será más ineficiente que la BB. La búsqueda secuencial tiene un orden O(n) La búsqueda binaria tiene un orden O(log 2 n)
CONCEPTOS FUNDAMENTALES DE ESTRUCTURAS DE ARCHIVOS BÚSQUEDA SECUENCIAL MEJORADA • Si el dispositivo de almacenamiento es de acceso directo se puede colocar al inicio del registro y leerlo. • El orden para este caso será O(1). • Es necesario disponer del NRR (número relativo de registro) para poder acceder directamente. • Para algunos lenguajes el NRR comienza en 0, el siguiente en 1 y así sucesivamente.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS SOBRECARGA POR DATOS USADOS PARA CONTROL • Suponga que se tiene una unidad de disco con referencia a direcciones por bloques con 20000 bytes por pista, y que la cantidad de espacio dedicada a los sub-bloques y los huecos entre bloques es equivalente a 300 bytes por bloque. • ¿Cuántos registros pueden almacenarse por pista? • Si el factor de bloque es 10 • Si el factor de bloque es 60
Dispositivos de almacenamiento DISCOS MAGNÉTICOS SOBRECARGA POR DATOS USADOS PARA CONTROL • Si hay 10 registros de 100 bytes por bloque y cada bloque almacena 1000 bytes de datos y emplea 300 + 1000, o 1300 bytes de espacio de la pista, tomando en cuenta la sobrecarga de datos de control. El número de bloques que pueden entrar en una pista se puede expresar como: 20000/1300 = 15 De modo que se pueden almacenar 15 bloques, o 150 registros, por pista. (Nótese que se tiene que redondear hacia abajo el resultado, debido a que un bloque no puede distribuirse en 2 pistas).
Dispositivos de almacenamiento DISCOS MAGNÉTICOS SOBRECARGA POR DATOS USADOS PARA CONTROL b) Si hay 60 registros de 100 bytes por bloque y cada bloque almacena 6000 bytes de datos y emplea 300 + 6000, o 6300 bytes de espacio de la pista, tomando en cuenta la sobrecarga de datos de control. El número de bloques que pueden entrar en una pista se puede expresar como: 20000/6300 = 3 De modo que se pueden almacenar 3 bloques, o 180 registros, por pista. (Nótese que se tiene que redondear hacia abajo el resultado, debido a que un bloque no puede distribuirse en 2 pistas).
Dispositivos de almacenamiento DISCOS MAGNÉTICOS SOBRECARGA POR DATOS USADOS PARA CONTROL • Está claro que un factor de bloque mayor puede dar paso a un uso más eficiente al almacenamiento. Cuando los bloques son grandes se requieren menos para contener un archivo, de tal forma que es menor el espacio consumido por los 300 bytes de sobrecarga que acompañan a cada bloque. • ¿Se puede concluir de este ejemplo que los factores de bloque grandes siempre conducen a una utilización más eficiente del almacenamiento? No necesariamente, recuerde el problema de la fragmentación interna.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Los factores que intervienen en la suma total del tiempo necesario para acceder a un archivo que se encuentra en un disco fijo se puede dividir en 3 operaciones físicas distintas: • Tiempo de desplazamiento: Considere que si las posiciones de inicio y fin para cada acceso son aleatorias, el desplazamiento promedio atraviesa una tercera parte del número total de pistas • Retraso por rotación • Tiempo de transferencia
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Tiempo de desplazamiento: Es el tiempo requerido para mover el brazo de acceso hasta el cilindro adecuado. Depende de la distancia que tenga que recorrer el brazo. • Si se accede en forma secuencial al archivo y éste está comprimido en varios cilindros consecutivos, el desplazamiento se realiza sólo después de que todas las pistas del cilindro han sido procesadas, y aun así la cabeza de lectura/escritura necesitará moverse a lo ancho de una pista tan sólo. • Si por el contrario, se accede en forma aleatoria a sectores de 2 archivos que están almacenados en los extremos opuestos de un disco, el desplazamiento resulta muy caro.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Tiempo de desplazamiento: Implica varias operaciones un tanto lentas. Entre las más importantes se consideran: • El tiempo inicial de arranque (s) • El tiempo que toma recorrer los cilindros que se deben cruzar una vez que el brazo de acceso adquiere su velocidad normal. • Si (n) indica el número de cilindros por atravesar, entonces las contribuciones de esos 2 valores pueden aproximarse por medio de una función lineal de la forma: f(n) = m*n + s donde m es una constante que depende de la unidad de disco en cuestión.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Suponga que 2 fabricantes le han proporcionado las siguientes funciones asociadas a los tiempos de desplazamiento: • f(n) = 0.3n + 20 [mseg] • f(n) = 0.1n + 3 [mseg] Se observa claramente que la segunda arranca más rápido y atraviesa las pistas más velozmente.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Retraso por rotación: Se refiere al tiempo que transcurre para que en el disco que gira el sector que se desea quede bajo la cabeza de lectura/escritura. • Por lo general, los discos giran a una velocidad aproximada de 3600 rpm, lo que significa una revolución cada 16.7 mseg. • En promedio, el retraso por rotación es la mitad de una revolución, o cerca de 8.3 mseg.
Dispositivos de almacenamiento DISCOS MAGNÉTICOS COSTO DE ACCESO A UN DISCO • Tiempo de transferencia: Una vez que los datos que se desean están bajo la cabeza de lectura/escritura, se pueden transferir. Viene dado por la expresión: F= (# de bytes por transferir)/(# de bytes por pista) Tiempo de transferencia = F * Tiempo de rotación
Dispositivos de almacenamiento CINTAS MAGNÉTICAS ORGANIZACIÓN DE DATOS • No se requieren direcciones para identificar la ubicación de los datos porque el acceso en la cinta es secuencial. • La posición lógica de un byte dentro del archivo corresponde directamente con su posición física relativa al inicio del archivo. • Una cinta común puede tener 9 pistas y el último de ellos ser utilizado para la paridad. • Paridad par: número par de unos • Paridad impar: número impar de unos
Dispositivos de almacenamiento CINTAS MAGNÉTICAS ESTIMACIÓN DE REQUERIMIENTOS DE LONGITUD DE UNA CINTA • Sean los parámetros: • b: Longitud física de un bloque de datos • g: Longitud de un hueco entre bloques • n: Número de bloques de datos • El requerimiento de espacio (s) para almacenar el archivo es: s = n*(b + g)
Dispositivos de almacenamiento CINTAS MAGNÉTICAS ESTIMACIÓN DE TIEMPOS DE TRANSMISIÓN • Sean los parámetros: • Densidad de la cinta: Usualmente viene dada en bpi (bits por pulgada, por sus siglas en inglés) • Velocidad de la cinta: Usualmente viene dada en ips (pulgadas por segundo, por sus siglas en inglés) • Tamaño del hueco entre bloques • Se puede calcular: • Tasa nominal: en base a los datos del fabricante • Tasa efectiva: en base a la densidad de grabado efectiva