La transparencia se define como la separación de la
semántica de alto nivel de un sistema de los aspectos de bajo nivel
relacionados a la implementación del mismo. Un nivel de transparencia adecuado
permite ocultar los detalles de implementación a las capas de alto nivel de un
sistema y a otros usuarios.
La independencia de datos se puede dar en dos aspectos:
lógica y física.
.1 Independencia lógica de datos. Se refiere a la
inmunidad de las aplicaciones de usuario a los cambios en la estructura lógica
de la base de datos. Esto permite que un cambio en la definición de un esquema
no debe afectar a las aplicaciones de usuario. Por ejemplo, el agregar un nuevo
atributo a una relación, la creación de una nueva relación, el reordenamiento
lógico de algunos atributos.
.2 Independencia física de datos. Se refiere al
ocultamiento de los detalles sobre las estructuras de almacenamiento a las
aplicaciones de usuario. La descripción física de datos puede cambiar sin
afectar a las aplicaciones de usuario. Por ejemplo, los datos pueden ser
movidos de un disco a otro, o la organización de los datos puede cambiar.
La transparencia sobre replicación de datos se refiere a
que si existen réplicas de objetos de la base de datos, su existencia debe ser
controlada por el sistema no por el usuario. Se debe tener en cuenta que cuando
el usuario se encarga de manejar las réplicas en un sistema, el trabajo de éste
es mínimo por lo que se puede obtener una eficiencia mayor. Sin embargo, el
usuario puede olvidarse de mantener la consistencia de las réplicas teniendo
así datos diferentes.
La transparencia a nivel de fragmentación de datos
permite que cuando los objetos de la bases de datos están fragmentados, el
sistema tiene que manejar la conversión de consultas de usuario definidas sobre
relaciones globales a consultas definidas sobre fragmentos. Así también, será
necesario mezclar las respuestas a consultas fragmentadas para obtener una sola
respuesta a una consulta global. El acceso a una base de datos distribuida debe
hacerse en forma transparente.
Transparencia de la ubicación. Puede darse el caso
de que el usuario conozca cómo se encuentran fragmentadas las tablas, pero no
conoce y no es necesario que sepa la ubicación de etas.
Fragmentación
Es una relación que corresponde a una tabla, consiste en
dividirla en fragmentos menores, cada fragmento se guarda en sitio diferente, tiene como objetivo buscar
alternativas para dividir una de las tablas o instancias en otras más pequeñas
Existen tres tipos de fragmentación:
1. 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.
2. 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.
3. Fragmentación mixta: La fragmentación mixta puede
llevarse a cabo de tres formas diferentes: desarrollando primero la
fragmentación vertical y, posteriormente, aplicando la fragmentación
horizontal sobre los fragmentos verticales (denominada partición VH), o
aplicando primero una división horizontal para luego, sobre los fragmentos generados,
desarrollar una fragmentación vertical (llamada partición HV), o bien, de forma
directa considerando la semántica de las transacciones.
No hay comentarios:
Publicar un comentario