FF

martes, 5 de noviembre de 2013

CLASES DE DE SGBDD
Sistema Homogéneo: todos los nodos utilizan el mismo SGBDD.
Los sistemas homogéneos son mucho más fáciles de diseñar y mantener
Sistema Heterogéneo: los nodos pueden utilizar diferentes SGBD y esto pueden estar basados en distintos modelos de daros subyacentes. En un sistema heterogéneos requieren labor de traducción para que los distintos SGBD puedan comunicarse entre sí pueden darse el caso que tengamos;
·         Un hardware diferente (pero el mismo SGBD)
·         Productos SGBD distintos (pero hardware igual)
·         Hardware y software son distintos


ARQUITECTURA DE UN  SGBDD
La arquitectura de los SGBDD  hay en dos tipos:
·         la arquitectura  ANSI/X3/SPARC para sistemas gestores distribuidos




  

·         la arquitectura de los sistemas SGBD Multibase



Esquema conceptual global: Es una descripción lógica total de BD, como si no estuviera distribuida.  Esquemas de fragmentación: Es una descripción del modo que hay que particional lógicamente los datos
 Esquema de Asignación: Es una descripción de donde hay que ubicar los datos , teniendo en cuenta los mecanismos de replicación utilizados.
Esquemas Locales: Cada SGBD local tiene su propio conjunto de esquema. El esquema de correspondencia local establece la correspondencia entre los fragmentos del esquema de asignación y los objetos externos de la base de datos local.



DISEÑO Y ESQUEMA DE FRAGMENTACIÓN  DE UNA BASE DE DATOS DISTRIBUIDA

El diseño de los sistemas distribuido. Se ha sugerido que la organización de sistemas distribuidos puede ser investigada a lo largo de tres dimensiones ortogonales según Levin & Morgan.
Estos tres niveles son:
  1.        Nivel de distribución
  2.     . Comportamiento de los patrones de acceso.
  3. .       Nivel de conocimiento en el comportamiento del patrón de acceso.



Primero: cada aplicación y sus datos se ejecutan en un sitio y no hay comunicación con algún otro programa o acceso a algún archivo de datos de otro sitio. Esto caracterizaba a los primeros días de trabajo en red pero ya no es tan común en nuestros tiempos.

Segundo: Distribución de datos; Todos los programas son replicados en todos los sitios pero no los archivos de datos por consiguiente las peticiones de los usuarios son manejadas en el sitio donde fueron originados y solo los archivos de datos necesarios son movidos alrededor de la red.

Datos + programas: los archivos de datos y los programas pueden ser compartidos

ESQUEMA DE FRAGMENTACIÓN

El objetivo de la fragmentación es encontrar un nivel de particionamiento adecuado en el rango que va desde tuplas o atributos hasta relaciones completas.

Cada relación global puede ser dividida en porciones que no se solapen llamados fragmentos. El mapa resultante se denomina esquema de fragmentación. Una relación global puede dividirse en n fragmentos y un fragmento sólo puede pertenecer a una relación global


Completitud: La completitud de una fragmentación horizontal primaria está basada en los criterios de selección usados ya que la base del algoritmo de fragmentación es un conjunto de predicados completos y mínimos. La completitud de una fragmentación horizontal derivada es un poco más difícil de definir.

Reconstrucción: la reconstrucción de una relación global a partir de sus fragmentos es llevada a cabo por el operador Unión tanto en la fragmentación horizontal primaria como en la derivada.

Disyunción: es fácil establecer la disyunción de una fragmentación primaria que la de una fragmentación derivada. En una fragmentación primaria la disyunción está garantizada mientras que los predicados de minterms de la fragmentación sean mutuamente excluyentes.
En la fragmentación derivada hay un semi-join involucrado que agrega una complejidad considerable. La disyunción puede ser garantizada si el join es simple de no ser así será necesario investigar los valores actuales de las tuplas.


TIPOS DE FRAGMENTACIÓN

La fragmentación horizontal se realiza sobre las tuplas de la relación. Cada fragmento será un subconjunto de las tuplas de la relación. Existen dos variantes de la fragmentación horizontal: la primaria y la derivada. La fragmentación horizontal primaria de una relación se desarrolla empleando los predicados definidos en esa relación. Por el contrario, la fragmentación horizontal derivada consiste en dividir una relación partiendo de los predicados definidos sobre alguna otra


 

FRAGMENTACION HORIZONTAL DERIVADA
Se define sobre una relación miembro de acuerdo a una operación de selección especificada sobre su propietaria. Se deben dejar claros dos puntos. Primero, el enlace entre las relaciones propietaria y miembro se define como un equi−yunto. Segundo, un equi−yunto puede desarrollarse a través de semiyuntos.

Este segundo punto es especialmente importante para nuestros propósitos, ya que deseamos fraccionar una relación miembro según la fragmentación de su propietaria, además es necesario que el fragmento resultante se defina únicamente sobre los atributos de la relación miembro.

Las tres entradas necesarias para desarrollar la fragmentación horizontal derivada son las siguientes: el conjunto de particiones de la relación propietaria, la relación miembro y el conjunto se predicados resultados de aplicar el semi−yunto entre la propietaria y la miembro. El algoritmo de fragmentación resulta tan trivial que no se ve la necesidad de entrar en detalles.

Existe una posible complicación que necesita nuestro estudio. En un esquema de base de datos, resulta frecuente que existan más de dos enlaces sobre una relación R. En este caso, aparecen más de una posibilidad de fragmentación horizontal derivada. La decisión para elegir una u otra se basa en dos criterios: Uno, la fragmentación con mejores características de yunto. Dos, la fragmentación empleada en más aplicaciones

Esta información implica al esquema conceptual global. Es importante señalar cómo las relaciones de la base de datos se conectan con otras. En una conexión de relaciones normalmente se denomina relación propietaria a aquella situada en la cola del enlace, mientras que se llama relación miembro a la ubicada en la cabecera del vínculo. Dicho de otra forma podemos pensar en relaciones de origen cuando nos refiramos a las propietarias y relaciones destino cuando lo hagamos con las miembro. 









FRAGMENTACION VERTICAL
a fragmentación vertical de una relación R produce una serie de fragmentos R1, R2, ..., Rr, cada uno de los cuales contiene un subconjunto de los atributos de R así como la clave primaria de R. El objetivo de la fragmentación vertical consiste en dividir la relación en un conjunto de relaciones más pequeñas tal que algunas de las aplicaciones de usuario sólo hagan uso de un fragmento. Sobre este marco, una fragmentación óptima es aquella que produce un esquema de división que minimiza el tiempo de ejecución de las aplicaciones que emplean esos fragmentos.

La partición vertical resulta más complicada que la horizontal. Esto se debe al aumento del número total de alternativas que tenemos disponibles. Por ejemplo, en la partición horizontal, si el número total de predicados simples de Pr es n, existen 2n predicados mintérminos posibles que puedan definirse. Además, sabemos que algunos de estos predicados resultarán contradictorios con algunas de las aplicaciones existentes, por lo que podremos reducir el número inicial. 

En el caso vertical, si una relación tiene m atributos clave no primarios, el número de posibles fragmentos es igual a B(m), es decir el m−ésimo número de Bell [3]. Para valores grandes de m, B(m) mm; por ejemplo, para m = 10, B(m) 115.000, para m = 15, B(m) 109, para m = 30, B(m) = 1023.

Estos valores indican que la obtención de una solución óptima de la fragmentación vertical resultará una tarea inútil, sino nos apoyamos en el uso de heurísticos. 

FRAGMENTACION MIXTA O HIBRIDA

En muchos casos la fragmentación vertical u horizontal del esquema de la base de datos no será suficiente para satisfacer los requisitos de las aplicaciones. Podemos combinar ambas, utilizando por ello la denominada fragmentación mixta. Cuando al proceso de fragmentación vertical le sigue una horizontal, es decir, se fragmentan horizontalmente los fragmentos verticales resultantes, se habla de la fragmentación mixta HV. En el caso contrario, estaremos ante una fragmentación VH. Una característica común a ambas es la generación de árboles que representan la estructura de fragmentación.

Debe tenerse en cuenta el número de niveles arbóreos que se generen, es decir, nadie impide que tras realizar una fragmentación VH, podamos aplicar a los fragmentos resultantes una nueva fragmentación vertical, y a estos última una nueva fragmentación horizontal, etc. Dicho número puede ser grande, pero también será ciertamente finito. En el caso horizontal, el nivel máximo de profundidad se alcanzará cuando cada fragmento albergue una única tupla, mientras que en el caso vertical el final llegará cuando cada fragmento contenga un único atributo. Sin embargo, aunque no deba tomarse como dogma, el número de niveles no debería superar el par (VH y HV). El porqué de esta afirmación es bien sencillo, piense, por ejemplo, en el coste que supondría realizar la unión o el yunto de una relación con fragmentación nivel 7.

Evidentemente, el coste sería muy elevado y ese aumento de rendimiento que se persigue al aplicar estas técnicas, quizás, no se produzca.