Instituto Tecnológico de Pachuca
Resumen - Unidad II
Instituto tecnológico de Pachuca
ARQUITECTURA DE BASE DE DATOS DISTRIBUIDA

La arquitectura define la estructura de un sistema. Al definir la arquitectura se deben identificar los componentes de un sistema, las funciones que realiza cada uno y las interrelaciones e interacciones entre cada componente.

NIVEL DE TRANSPARENCIA EN SBDD

El propósito de establecer una arquitectura es ofrecer un nivel de transparencia adecuado para manejar la información. La transparencia se puede entender como la separación de la semántica de alto nivel de las de bajo nivel relacionados a la implementación del sistema. Es decir, que se ocultan los detalles de capas de alto nivel de un sistema, así como a los usuarios. En SBDD el propósito de la transparencia es proporcionar independencia de datos.

*La independencia de datos es la inmunidad de las aplicaciones de un usuario a los cambios en la definición y/u organización de los datos. Esta independencia puede darse en 2 aspectos:

1. La Independencia Lógica de Datos: Se refiere a que un cambio en la estructura lógica de la Base de Datos, no afecta a las aplicaciones de usuario.
2. La Independencia Física de Datos: Las estructuras físicas de datos pueden cambiar sin afectar a las aplicaciones de usuario.

* La transparencia a nivel de red, es cuando los datos en un SBDD se accesan sobre una red, pero las aplicaciones no deben notar su existencia y se da en 2 formas:

1. Transparencia sobre localización de datos: El comando que se usa es independiente de la ubicación de los datos en la red y del lugar en donde se lleve la operación.
2. Transparencia sobre el esquema de nombramiento: Proporciona un nombre único a cada objeto en el sistema distribuido.

* Transparencia sobre replicación de datos: Si existen replicas de objetos de la Base de Datos, su existencia debe ser controlada por el sistema no por el usuario.

· Transparencia a nivel de fragmentación de datos: Cuando los objetos de la Base de Datos, están fragmentados, el sistema maneja la conversión de consultas de usuario definidas sobre relaciones globales a consultas definidas sobre fragmentos.

La transparencia tiene como punto central la independencia de datos. Los diferentes niveles se pueden organizar en capas.
El primer nivel soporta la transparencia de red. El segundo nivel permite la transparencia de replicación de datos. El tercer nivel permite la transparencia de fragmentación. Finalmente le ultimo nivel permite la transparencia de acceso. La responsabilidad de la transparencia debe estar compartida por el S.O, el SMBD y el lenguaje de acceso a la BDD.

ARQUITECTURA DE UN SBDD

La mayoría de los SMBD disponibles están basados en la arquitectura ANSI-SPARC la cual divide a un sistema en 3 niveles: Interno, Conceptual y Externo.
* La vista conceptual (vista lógica global) representa la visión de la comunidad de usuarios de los datos en la Base de Datos. Está basada en el esquema conceptual y su construcción se hace en la fase de Diseño.

* Los usuarios (incluyendo a los programadores de aplicaciones) observan los datos a través de un esquema externo definido a nivel externo. Proporciona una ventan a la vista conceptual, lo cual permite a los usuarios observar únicamente los datos de interés y los aísla de otros datos en la Base de Datos.

* El esquema conceptual se mapea a un esquema de nivel interno el cual es el nivel de descripción más bajo de los datos en una Base de Datos. Este proporciona una interfaz al sistema de archivo del sistema operativo el cual es el responsable del acceso a la Base de Datos. Tiene que ver con la especificación de que elementos serán indexados, qué técnica se usara para organizar archivos y como los se agrupan los datos en el disco.

Para definir un esquema de estandarización en BDD se debe definir un modelo de referencia el cual sería un marco de trabajo conceptual. Para definir ese concepto se puede seguir uno de los siguientes enfoques:

1. Basado en componentes: Se definen los componentes del sistema junto con las relaciones entre ellos. Cada uno tiene una función.
2. Basado en funciones: Se identifican las diferentes clases de usuarios junto con la funcionalidad que el sistema ofrecerá para cada clase. No proporciona una forma de alcanzar objetivos.
3. Basado en datos: Se identifican los diferentes tipos de descripciones de datos y se especifica un marco de trabajo arquitectural el cual define las unidades funcionales que realizaran y/o usaran los datos de acuerdo con las diferentes vistas.

ALTERNATIVAS PARA LA IMPLEMENTACIÓN DE SMBD

Para la implementación de un SMBD se deben considerar 3 dimensiones (factores) que son:

1. Distribución: Determina si los componentes del sistema están localizados en la misma computadora o no.
2. Heterogeneidad: Se puede presentar en varios niveles, en Hardware, Sistemas de comunicaciones, Sistemas Operativos y SMBD.
3. Autonomía: Se puede presentar en diferentes niveles, como son:
* Autonomía de diseño: Habilidad de un componente del SMBD para decidir cuestiones relacionadas a su propio diseño.
* Autonomía de comunicación: Habilidad de un componente del SMBD para decidir como y cuando comunicarse con otros SMBD.
* Autonomía de ejecución: Habilidad de un componente del SMBD para ejecutar operaciones locales como quiera.

Desde el punto de vista funcional y de organización de datos, los SDD están divididos en 2 clases, con 2 filosofías diferentes y diseñadas para satisfaces necesidades diferentes:

1. Sistemas de Manejo de Base de Datos Distribuidas homogéneas
2. Sistemas de Manejo de Base de Datos Distribuidas heterogéneas

Un Sistema Manejador de Base de Datos Distribuidas homogéneo tiene múltiples colecciones de datos, integra múltiples recursos de datos, se parecen a un sistema centralizado, pero en lugar de almacenar todos los datos en un solo lugar, los dotas se distribuyen en varios sitios comunicados por la red. No existen usuarios locales y todos accesan a la Base de Datos a través de una interfaz global.

Para manejar los aspectos de la distribución, se deben agregar dos niveles a la arquitectura ANSI-SPARC. El esquema de fragmentación describe la forma en que las relaciones globales se dividen entre las Bases de Datos locales. El esquema de asignamiento especifica el lugar en el cual cada fragmento es almacenado.
La clase de Sistemas Heterogéneos es aquella caracterizada por manejar diferentes SMBD en los nodos locales. Un Sistema Multi-Bases de Datos tiene múltiples SMBD's que pueden ser de tipos diferentes y múltiples Bases de Datos existentes. La integración de todos ellos se realizan mediante subsistemas de software. Existen usuarios locales y globales.

En algunas ocasiones es importante caracterizar a las SBDD por la forma en que se organizan sus componentes. Consiste en dos partes fundamentales el procesador de usuario y el procesador de datos.

El procesador de usuario procesa las solicitudes de usuario, utiliza el esquema externo de usuario y el esquema conceptual global. Utiliza un diccionario de datos global. Consiste en 4 partes: Manejador de interfaz, Controlador semántico de datos, Optimizador global de consultas y Supervisor de la ejecución global.

El procesador de datos existe en cada nodo de la BDD. Utiliza un esquema local conceptual y un esquema local interno. Consiste en 3 partes: Un procesador de consultas locales, Un manejador de recuperación de fallas locales y Un procesador de soporte para tiempo de ejecución.

En la arquitectura basa en componentes de un Smulti-base se tiene un SMBD para usuarios globales y uno par usuarios locales.

En cada sitio existe un SMBD completo el cual consiste en la interfaz con el usuario, el procesador y optimizador de consultas, el manejador de transacciones, despachador de operaciones, manejador de recuperación de fallas y el sistema de soporte para tiempo de ejecución, todos de forma local. Para comunicación global se define una interfaz común entre componentes.

El manejo del directorio de datos es de una importancia mayor en Bases de Datos Distribuidas. Puede haber directorios locales o un solo directorio global. Su manejo puede ser local o distribuido. Puede ser replicado o no replicado.