Q82_Parte B
Una tabla de base de datos T1 tiene 2000 registros y ocupa 80 bloques de disco. Otra tabla T2 tiene 400 registros y ocupa 20 bloques de disco. Estas dos tablas deben unirse según una condición de unión específica que debe evaluarse para cada par de registros de estas dos tablas. El espacio de búfer de memoria disponible puede contener exactamente un bloque de registros para T1 y un bloque de registros para T2 simultáneamente en cualquier momento. No hay índice disponible en ninguna de las tablas.
Si, en lugar de la unión de bucle anidado, se utiliza la unión de bucle anidado de bloque, de nuevo con la elección de tabla más adecuada en el bucle exterior, la reducción en el número de accesos de bloque necesarios para leer los datos será
(A) 0
(B) 30400
(C) 38400
(D) 798400
Respuesta: (B)
Explicación:
Número de acceso al bloque = n r * b s + b r
donde b r y b s son el número de bloques en las relaciones R y S respectivamente, y n r es el número de tuplas en la relación R.
Seleccionamos la relación con un pequeño número de tuplas como relación externa R. Entonces, R es T2.
Número de acceso a bloque = 400 * 80 + 20 = 32020
El espacio de búfer de memoria contiene un bloque de registros para T1 y un bloque de registros para T2 simultáneamente.
Entonces, el número de accesos a bloques es 80 * 20 + 20 = 1620
Entonces, Número total de accesos a bloques = 32020 – 1620 = 30400
Por lo tanto, la opción (B) es correcta.
Comente a continuación si encuentra algo incorrecto en la publicación anterior.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA