Procesamiento de
consultas distribuidas.
El procesamiento de consultas tiene varias etapas a seguir para resolver una consulta SQL, las características del modelo relacional permiten que cada motor de base de datos elija su propia representación que, comúnmente, resulta ser el álgebra relacional .
Existen varios medios para calcular la respuesta a una consulta. En el caso del sistema centralizado, el criterio principal para determinar el costo de una estrategia específica es el número de acceso al disco. En un sistema distribuido 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.
TRANSFORMACIONES EQUIVALENTES
Cuando una base de datos se encuentra en múltiples servidores y distribuye a un número determinado de nodos tenemos:
El servidor recibe una petición de un nodo.
El servidor es atacado por el acceso concurrente a la base de datos cargada localmente.
El servidor muestra un resultado y le da un hilo a cada una de las maquinas nodo de la red local.
Cuando una base de datos es acezada de esta manera la técnica que se utiliza es la de fragmentación de datos que puede ser hibrida, horizontal y vertical.
En esta fragmentación lo que no se quiere es perder la consistencia delos datos, por lo tanto se respetan las formas normales de la base de datos.
JOIN
Existen diferentes algoritmos que pueden obtener transformación es eficientes en el procesamiento de consultas.
Join por mezcla
Este algoritmo se puede utilizar para calcular si un Join natural es óptimo en la búsqueda o consulta.
- Se tiene que ordenar primero, para después utilizar este método.
- Se tiene que considerar el costo de ordenarlo / las relaciones.
- Es más fácil utilizar pequeñas tuplas.
Join por asociación
Al igual que el algoritmo de join por mezcla, el algoritmo de join por asociación se puede utilizar para un Join natural o un equi-join. Este algoritmo utiliza una función de asociación h para dividir las tuplas de ambas relaciones.
Join por asociación híbrida
El algoritmo de join por asociación híbrida realiza otra optimización; es útil cuando el tamaño de la memoria es relativamente grande paro aún así, no cabe toda la relación s en memoria.
Join complejos
Los join en bucle anidado y en bucle anidado por bloques son útiles siempre, sin embargo, las otras técnicas de join son más eficientes que estas, pero sólo se pueden utilizar en condiciones particulares tales como join natural o equi-join.
OLE BD
Es un enlace de incrustación de objetos para base de datos al igual que una tecnología desarrollada por Microsoft usada para tener acceso a diferentes fuentes de información.
Los proveedores OLE DB pueden ser creados para tener acceso a almacenes de datos que van desde simples archivos de texto y hojas de cálculo, hasta bases de datos complejas como Oracle, Microsoft SQL Server o Sybase ASE.
OLE DB permite separar los datos de la aplicación que los requiere, de hizo así ya que distintas aplicaciones dependen de distintos accesos y almacenas de datos, no necesariamente desean conocer el acceso de cierta funcionalidad