bases de datos distribuidas carlos rojas kramer universidad cristóbal colón
TRANSCRIPT
Bases de datos distribuidas
Carlos Rojas Kramer
Universidad Cristóbal Colón
Orígenes
• Evolución acelerada de los sistemas de información
• Crecimiento no planeado de la información al interior de las organizaciones
• Dispersión en sitios geográficamente distantes
• Sistemas tecnológicamente diferentes
Orígenes
• Necesidad de compartir e integrar la información dispersa
• Se requiere un tipo de tecnología diferente al tradicional
• La Base de Datos Distribuida es una buena solución a lo anterior.
Definición
• Una Base de Datos Distribuida (BDD) es una colección de datos relacionados lógicamente, pero dispersos entre diversos sitios de una red de computadoras. [Ceri y Pelagatti]
• Cada sitio en la red tiene capacidad de procesamiento autónomo y puede ejecutar aplicaciones locales.
BDD (ilustración esquemática)
Razones para la dispersión
• Naturaleza de la información
• Motivos económicos
• Consideraciones de desempeño
• Necesidades de fiabilidad
• Requerimientos de disponibilidad
• Etc.
Consecuencias de la dispersión
• Incremento en la complejidad de diseño
• Mayores dificultades para la instrumentación de las soluciones
• Administración y resolución de problemas implican aplicación de mejores recursos
• Necesidad de apego a estándares
Software para BDD
• DDBMS = Distributed DataBase Management System
• Debe permitir la creación, el uso y el mantenimiento de la BDD
• Debe realizar funciones típicas de un DBMS no distribuido
• También debe soportar otras funciones
Funciones extra para un DDBMS
• Capacidad de accesar sitios remotos y transmitir consultas y datos entre diversos sitios a través de una red de computadoras
• Capacidad de rastrear la pista de distribución y de replicación de los datos en el catálogo del DDBMS
• Capacidad de elaborar estrategias de ejecución para consultas y transacciones que accesan datos en más de un sitio
• Capacidad de mantener la consistencia en las copias de un elemento de información
• Capacidad de recuperarse ante caídas de sitios individuales y fallos de un enlace de comunicación
• Capacidad de decidir cual de las copias de un elemento de información será accesada
Componentes de un DDBMS
• Componente de manejo de Base de Datos (DB)
• El componente de Comunicación de Datos (DC)
• El Diccionario de Datos (DD), el cual es
extendido para representar información sobre la
distribución de los datos sobre la red
• El componente de base de datos distribuida (BDD)
Tipos de DDBMs
• Clasificados según su grado de:
– homogeneidad / heterogeneidad
– autonomía
– transparencia de la distribución
Grado de homogeneidad
• Un DDBMS homogéneo se caracteriza principalmente por la utilización del modelo descendente para la conceptualización del diseño de la BD, en donde la fragmentación vertical u horizontal de un esquema global de datos determina la naturaleza de cada uno de los componentes de la BDD
• Un DDBMS heterogéneo se caracteriza por la diversidad de DBMSs, modelos de diseño, sistemas operativos, conceptualización del diseño y hardware utilizado en cada uno de sus componentes de BD
• La heterogeneidad debida a diversos DBMSs es común en organizaciones que crecen sin una planeación en cuanto a sus sistemas de información.
• Dichos sistemas evolucionan paulatinamente en diferentes DBMSs o diferentes modelos de conceptualización, tales como: jerárquico, de red, relacional u orientado a objetos
Tipos de heterogeneidad según Larson y Sheth
Heterogeneidad semántica
• Ocurre cuando existe una diferencia en el significado, interpretación o uso del mismo modelo de datos
Sistemas de Multibase de Datos
• MDBMS = multi database management system
• También llamado Sistema de Base de Datos Federado
• Es un tipo de DDBMS
• Se compone de una colección de DBMS con alto grado de autonomía
MDBMS (cont.)
• Cada servidor es un DBMS centralizado independiente y autónomo que tiene sus propios usuarios locales, transacciones locales y administrador de base de datos (DBA)
• Por lo mismo, cada uno posee un alto grado de autonomía local
• En un MDBMS cada servidor puede autorizar el acceso a porciones específicas de la BD definiendo un esquema de exportación, el cual especifica la parte de la BD a la cual puede tener acceso una cierta parte de usuarios no locales
• Los MDBMS son catalogados como un sistema híbrido entre los sistemas distribuidos y los centralizados
Grado de autonomía
• Es el grado de independencia de operación de cada uno de los DBMS componentes del DDBMS
Autonomía de diseño
• La capacidad de que cada Base de Datos Componente (BDC) decida los aspectos concernientes con su diseño. Es decir, las personas involucradas son libres de decidir cualquier particularidad e incluso decidir que DBMS usar.
Aspectos a considerar en la autonomía de diseño
– El universo de datos relevante para el sistema
– La representación (modelo de datos, lenguaje de consultas) y el nombrado de los datos
– La conceptualización o interpretación semántica de los datos (heterogeneidad semántica)
– Restricciones usadas para administrar los datos
– La funcionalidad del sistema
– La asociación y compartición con otros sistemas y
– La implementación (p.e. registros y estructuras de archivos).
Autonomía de comunicación
• La habilidad de que una BDC decida comunicarse o no con otro componente de una misma federación
Autonomía de ejecución
• Es la habilidad de una BDC para ejecutar operaciones locales sin la interferencia de operaciones externas, en el orden que la BDC lo decida
Autonomía de asociación
• Cada BDC decide cuánto y cuándo puede compartir su funcionalidad y recursos con otros componentes, inclusive la capacidad de asociarse o retirarse de una o más federaciones
Grado de Transparencia de Distribución
• Si el usuario percibe un solo esquema integrado sin información alguna relativa a la fragmentación, replicación o distribución, se dice que el DDBMS tiene un alto grado de transparencia de distribución.
• Si el usuario puede ver toda la fragmentación, el reparto y la aplicación, el DDBMS no tiene transparencia de distribución
Distribución de los datos
Fragmentación
• La fragmentación de una base de datos consiste en descomponer en partes los datos, siguiendo algún patrón conveniente y relacionado con la forma como estos serán alimentados y explotados.
Tipos de fragmentación
• Tipos primitivos de fragmentación:– Horizontal– Vertical
• Tipos derivados:– Horizontal derivada– Mixta
Objetivos ideales
• Separar el concepto de fragmentación de los datos del concepto de localización (o ubicación) de los mismos.
• Control explícito de la redundancia
• Independencia de DBMSs locales
Tipos de transparencia
• Transparencia de fragmentación
• Transparencia de localización
• Transparencia de replicación
• Transparencia de correspondencia
Niveles de transparencia
1. Transparencia de fragmentación
2. Transparencia de localización
3. Transparencia de correspondencia local
4. Sin transparencia