Blogger templates

sábado, 1 de febrero de 2014

PUNTO DE VISTA DE UNA BASE DE DATOS DISTRIBUIDAS





Como toda base de datos, la base de datos distribuida consiste en un almacén de datos, es decir en un conjunto de datos almacenado de manera sistemática siempre dispuesto a ser utilizado. Pero tiene una particularidad que la diferencia y que consiste en que estos datos están almacenados en distintas máquinas que integran un sistema y que tienen conexión entre si.
Cada uno de los procesadores que integran dicho sistema se conoce con el nombre de localidad o nodo, y por lo tanto la información va a estar distribuida en las distintas localidades y no en una sola localidad, que es lo que ocurre con las bases de datos centralizadas. 
Cada localidad tiene una base de datos local aunque la información que se necesite puede provenir tanto de la base de datos local como de otras localidades, lo que se conoce como transacciones locales o transacciones globales respectivamente.En cuanto al las formas que pueden conectarse las localidades, las más comunes son: la red totalmente conectada, la red prácticamente conectada, la red con estructura de árbol, la red de estrella o la red de anillo.
¿Cuáles son las ventajas? 
Debido a que la informaciones está distribuida en localidades, los resultados a las consultas se pueden obtener de manera rápida, ágil y fiable. Asimismo, en caso de que alguna de las localidades falle, como todas tienen autonomía local, el resto sigue trabajando sin que se desactive el sistema. 
¿Cuáles son las desventajas?
 La instalación de este sistema es mucho más compleja que el de una base de datos centralizada.

ESQUEMA DE FRAGMENTACIÓN

Fragmentación Horizontal

Definir fragmentos horizontales se hace a través del operador de selección del algebra relacional operando sobre una relación global.




Los predicados que nos permiten definir una fragmentación de una relación son llamados la calificación de la fragmentación.
En el ejemplo la calificación de la fragmetación hecha a S, son:
q1 : CD = ‘L’
q2 : CD = ‘P’

En general una fragmentación horizontal es correcta, si cumple que:
  • El conjunto de calificaciones mapea todo el dominio del atributo(s) bajo el cual se hace la calificación.
  • Si siempre es posible reconstruir la tabla global por medio del operador UNION del algebra relaciónal:
    R = F1 UNION F2 UNION …UNION Fn
  • Si todas las calificaciones de los fragmentos son mutuamente exclusivas, es decir, si al aplicar las calificaciones se producen fragmentos que al intersectarlos generan un conjunto vacio.
    F = F1 INTERSECT F2 INTERSECT ..
    INTESECT Fn

Fragmentación Horizontal Derivada

Este tipo de fragmentación particiona una tabla en base a un atributo(s) que esta presente en otra tabla(s).



  
Los fragmentos se definirían de la sig. manera:



Fragmentación Vertical


Definir fragmentos verticales se hace a través del operador de proyección del algebra relacional operando sobre una relación global.




 Una característica importante de la fragmentación vertical, es que todos los fragmentos deben incluir la llave primaria de la relación global.
La razón es que si no incluímos la llave primaria no es posible reconstruir la relación original.
Para reconstruir la relación original debemos realizar un JOIN de todos los fragmentos.
R = F1 JOIN F2 JOIN … JOIN F3
En fragmentación vertical no se cumple que los fragmentos sean disjuntos (la llave está repetida en todos los fragmentos).

  Fragmentación Híbrida

Consiste en aplicar las operaciones de fragmentación vistas anteriormente de manera recursiva, satisfaciendo las condiciones de correctés cada vez que se realiza la fragmentación.
La reconstrucción puede ser obtenida aplicando las reglas de reconstrucción en orden inverso.
De esta forma podemos fragmentar nuestra tabla global en los pedazos que queramos y como queramos.

Ejemplo: Considere la relación de empleado (E).
Una posible fragmentación híbrida sería:

FRACMENTACION DE BASE DE DATOS

Fragmentación es la descomposición o partición de una tabla en pedazos llamados fragmentos.
La fragmentación básicamente se puede hacer de dos formas:
  • Fragmentación Horizontal. selecciona registros completos de una relación
  • Fragmentación Vertical. selecciona columnas completas de una relación
  Reglas a Cumplir por Fragmentación
  • Condición de Completés.
    Todos los datos de la relación global deberán ser mapeados a algún fragmento.
  • Condición de Reconstrucción.
    Deberá ser siempre posible reconstruir la relación global a partir de sus fragmentos.
  • Condición de Conjuntos Disjuntos.
    Es conveniente que los fragmentos sean disjuntos.
 Fragmentación Horizontal
Se realiza sobre las tuplas de la relación, es decir que cada fragmento será un subconjunto de las tuplas de la relación. Una tabla T se divide en subconjuntos, T1, T2, ...Tn. Los fragmentos se definen mediante una operación de selección. Su reconstrucción se realizará mediante la unión de los fragmentos componentes. Existen dos tipos de fragmentación como es: fragmentación horizontal primaria y la fragmentación horizontal derivada.
La Fragmentación Horizontal Primaria
Consiste en particionar las tuplas(columnas) de una relación global en subconjuntos, donde cada subconjunto tenga propiedades comunes, se puede definir expresando cada fragmento como una operación de selección sobre la relación global.

 La fragmentación horizontal derivada.
Consiste en dividir una relación partiendo de los predicados definidos sobre alguna otra, debido a que la relación R depende de la relación Q, sobre cuyos atributos está definido el predicado de la fragmentación

 Fragmentación Vertical
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 fragmentación vertical se basa en los atributos de la relación para realizar la división, es decir: la subdivisión de atributos en grupos. La fragmentación es correcta si cada atributo se mapea en al menos un atributo del fragmento.

BASES DE DATOS DISTRIBUIDAS

El procesamiento de bases de datos distribuidas es el procesamiento de bases de datos en el cual la ejecución de transacciones y la recuperación y actualización de los datos acontece a través de dos o más computadoras independientes, por lo general separadas geográficamente. La figura 1 muestra un sistema de base de datos distribuida que involucra cuatro computadoras.

Figura 1
Arquitectura de base de datos distribuida




El sistema de administración de base de datos distribuida (DDBMS), está formado por las transacciones y los administradores de base de datos distribuidos de todas las computadoras. Tal y como se muestra, tal DDBMS es un esquema genérico que implica un conjunto de programas que operan en diversas computadoras. Estos programas pueden ser subsistemas de un producto único DDBMS, concesionado por un sólo fabricante, o también pudiera resultar una colección de programas de fuentes dispares: algunos concesionados por fabricantes, y algunos otros escritos en casa. El propósito de esta figura es ilustrar las funciones que deban atenderse en el procesamiento de bases de datos distribuidas.


Un administrador de transacciones distribuidas (DTM) es un programa que recibe so- licitudes de procesamiento de los programas de consulta o de transacciones ya su vez las traduce en acciones para los administradores de la base de datos. Una función importante del DTM es coordinar y controlar dichas acciones. Dependiendo de la naturaleza de la aplicación del DDBMS, el DTM puede ser proporcionado como parte de DDBMS o puede desarrollarse en casa por la organización que pone en práctica el sistema distribuido. En aplicaciones menos complejas, una parte de sus funciones puede ser llevada a cabo por personas, siguiendo sólo procedimientos manuales.

Un administrador de la base de datos (DBM) es un programa que procesa cierta porción de la base de datos distribuida, como es el hecho de recuperar y actualizar datos del usuario y generales, de acuerdo con comandos de acción recibidos de los DTM. El DBM puede ser un subconjunto de un producto DDBMS, o ser también un DBMS comercial no distribuido. En algunos casos, el DDBMS pudiera contener diferentes productos DBMS.

Ventajas y desventajas del procesamiento de una base de datos distribuida






 

Blogger news

Blogroll

About