martes, 27 de septiembre de 2011

técnicas de fragmentación, replicación y reparto de datos para el diseño de base de datos distribuidas

El problema de fragmentación se refiere al particionamiento de la información para distribuir cada parte a los diferentes sitios de la red. Inmediatamente aparece la siguiente pregunta: ¿cuál es la unidad razonable de distribución?. Se puede considerar que una  relación completa es lo adecuado ya que las vistas de usuario son subconjuntos de las relaciones. Sin embargo, el uso completo de relaciones no  favorece las cuestiones de eficiencia sobre todo aquellas relacionadas con el procesamiento de consultas.
La otra posibilidad es usar fragmentos de relaciones (sub-relaciones) lo cual favorece la ejecución concurrente de varias transacciones  que accesan porciones diferentes de una relación. Sin embargo, el uso de sub-relaciones también presenta inconvenientes. Por ejemplo,  las vistas de usuario que no se pueden definir sobre un solo fragmento necesitarán un procesamiento adicional a fin de localizar  todos los fragmentos de una vista. Aunado a esto, el control semántico de datos es mucho más complejo ya que, por ejemplo,  el manejo de llaves únicas requiere considerar todos los fragmentos en los que se distribuyen todos los registros de la relación.

En resumen, 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.

existen 2 tipos:

Fragmentación horizontal: Un fragmento horizontal de una relacion es un  subconjunto de las tuplas de esa relación. Las tuplas que pertenecen al fragmento horizontal se especifican mediante una condicion sobre uno o más de los atributos de la relacion. Con frencuencia solo interviene un atributo.




Fragmentación vertical: Un fragmento vertical de una relacion mantiene solo ciertos atributos de la relacion.



Replicación

Resulta util para mejorar la disponibilidad de datos. Esto puede mejorar la disponibilidad notablemente
porque el sistema puede seguir operando mientras, por lo menos, uno de los sitios este activo. Tambien mejorar el rendimiento de la obtencion de datos en consultas globales porque el resultado de semejante consulta se puede obtener localmente en cualquier sitio. 

La desventaja es que puede reducir drasticamente la rapidez de operaciones de actualizacion debido a que una sola actualizacion logica debera ejecutar con todas y cada una de las copias de la base de datos a fin de mantener consistencia. 

Reparto de datos

Cada fragmento o copia se debe asignar a un sitio determinado. La eleccion de sitios y el grado de replicación depende de los objetivos de rendimiento y disponibilidad para el sistema y de los tipos y frecuencias de transacciones introducidas en cada sitio.

No hay comentarios:

Publicar un comentario