Procesamiento de Consultas Distribuidas 1 era Parte Lic
Procesamiento de Consultas Distribuidas (1 era Parte) Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV
Esquema de la Clase • Problema • Notación • Ejemplo
Problema Consulta de usuario en alto nivel Procesador de Consultas Comandos de manipulación de datos de bajo nivel La consulta de bajo nivel implementa de hecho la estrategia de ejecución para la consulta.
Problema La transformación debe ser correcta y eficiente. Es correcta si la consulta de bajo nivel tiene la misma semántica que la consulta original, esto es, si ambas consultas producen el mismo resultado. Se hace un mapeo entre cálculo relacional y el álgebra relacional. Una consulta en el cálculo relacional puede tener muchas transformaciones correctas y equivalentes en el álgebra relacional, pero cada una consumo de recursos diferentes. Más eficiente -> estrategia que consume menos recursos.
Ejemplo Esquema global de la BD de una empresa de ingeniería Empleado (num. Emp, nombre, titulo) Sueldo (titulo, salario) Proyecto (num. Proy, nombre, presupuesto, localización) Asignación (num. Emp, num. Proy, responsabilidad, duración) Consulta: Encontrar los nombres de los empleados que manejan un proyecto. (responsabilidad = “Manager”)
Notación de Algebra Relacional Selección: Project: Join: σF (R) Π A 1, A 2, … An (R) R ⊲⊳F S Semi-Join: R F S Unión: RUS
Ejemplo Considere que las tablas empleado y asignación están fragmentadas así: EMP 1 = SL num. Emp <= ‘E 3’ Empleado EMP 2 = SL num. Emp > ‘E 3’ Empleado ASG 1 = SL num. Emp <= ‘E 3’ Asignacion ASG 2 = SL num. Emp > ‘E 3’ Asignacion La consulta se hace en el nodo 5. -> -> nodo 1 2 3 4
Ejemplo Modelo de Costo de acceso a una tupla Costo de la transferencia de una tupla -> 1 unidad -> 10 unidades En donde: Empleado tiene 400 tuplas Asignación tiene 100 tuplas Hay 20 empleados que son managers en asignación Se asume que los datos están uniformemente distribuidos entre los nodos.
- Slides: 8