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:
- Nivel de distribución
- . Comportamiento de los patrones de acceso.
- . 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
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.