Estrategias de procesamiento de consultas distribuidas

Preview:

DESCRIPTION

BDD y Estrategias

Citation preview

Estrategias de procesamiento de consultas distribuidas.

Morelia, Michoacán a 18 de marzo de 2014

Optimización de consultas distribuidas.

Transacciones.

Instituto Tecnológico de

Morelia

Integrantes del Equipo:Jessica Comparan CarrilloEduardo Sánchez CoronaMendoza Heredia José Alfredo

Problema de Procesamiento de

Consultas• El éxito creciente de la tecnología de

bases de datos relacionales en el procesamiento se debe a:

• La disponibilidad de lenguajes no procedurales.

• Mejoran desarrollo de aplicaciones y productividad del usuario final.

Problema de Procesamiento de

Consultas• Ocultando detalles de bajo nivel

acerca de la localización física de datos.

• Los lenguajes de BD relacionales permiten la expresión de consultas complejas en forma:

CONCISA SIMPLE

Problema de Procesamiento de

ConsultasPara construir la respuesta a una consulta:

El usuario no tiene que especificar de manera precisa el procedimiento que se debe de seguir.

El procedimiento es llevado a cabo por un módulo del DBMS llamado:

PROCESADOR DE CONSULTAS

Procesador de Consultas

Su función principal:TRANSFORMAR UNA CONSULTA EN UNA

ESPECIFICACIÓN DE ALTO NIVELtípicamente en cálculo relacional

A UNA CONSULTA EQUIVALENTE EN UNA ESPECIFICACIÓN DE BAJO NIVEL

típicamente alguna variación del álgebra relacional.

Considere el siguiente subconjunto del esquema de una BD:

Empleado (No_Emp, Nombre_Emp, Titulo)Proyecto (No_Emp, No_Proy, Nombre_Proy, Responsable)

Y la siguiente consulta:

“Encuentre todos los nombres de empleados que manejan un proyecto”

Ejemplo 1

La expresión de la consulta en SQL se puede ver como: Select Nombre_EmpFrom Empleado, ProyectoWhere Empleado.No_Emp = Proyecto.No_EmpAnd Responsable= “Administrador”

Dos consultas equivalentes en el álgebra relacional que son transformaciones correctas de la consultaen SQL son:

Y

Como es intuitivamente obvio, la segunda estrategia que evita calcular el producto cartesiano entre Empleado yProyecto, consume mucho menos recursos que la primera y, por lo tanto, es mejor.

Nombre_Emp(Responable=“Administrador” Empleado.No_Emp =

Proyecto.No_Emp (Empleado X Proyecto))

Nombre_Emp(Empleado X Proyecto Responable=“Administrador” (Proyecto))

Estrategias de Procesamiento de

Consultas Distribuidas

• Las consultas distribuidas tienen acceso a datos de varios orígenes de datos heterogéneos.

• Estos orígenes de datos pueden estar almacenado en el mismo equipo o en equipos diferentes.

Consulta Distribuida

• El procesamiento de consultas tiene varas etapas a seguir para resolver una consulta SQL.

• Las características del modelo relacional permiten que cada motor de BD elija su propia representación:

ÁLGEBRA RELACIONAL

Consulta Distribuida

Existen varios medios para calcular la respuesta a una consulta.

Es preciso tener en cuenta otros factores como son:El costo de transmisión de

datos en la red.

Repetición y fragmentación.

Procesamiento de intersección simple.

En Sistemas Distribuidos

Son estructuras de datos en forma de árbol, en donde , los datos al estar ordenados en la estructura, hace más ágiles las consultas.

Arboles de Consultas

PASOS Parsing y traducción de la consulta.

Optimización

Generación de código/

Interprete

Ejecución de la consulta.

Lenguaje de Consultas (SQL)

Cálculo Relacional

Álgebra Relacional

Cáculo Relacional

Transformaciones Equivalentes

Recommended