BASE DE DATOS DISTRIBUIDAS

OBJETIVOS.

Conocer las Bases de Datos Distribuidas y sus diferentes aplicaciones Relacionar las Bases de Datos distribuidas con las diferentes arquitecturas de redes

. una base de datos construida sobre una red computacional.Introducción   Una Base de Datos Distribuida es. La información que constituye la base de datos esta almacenada en diferentes sitios en la red.

tal como si todos los datos estuvieran almacenados en el sitio propio del usuario. en el cual: – Cada sitio es un sistema de base de datos en sí mismo. conectados entre sí mediante algún tipo de red de comunicaciones.Introducción  Un sistema de base de datos distribuidas se compone de un conjunto de sitios. – Los sitios han convenido en trabajar juntos (si es necesario) con el fin de que un usuario de cualquier sitio pueda obtener acceso a los datos de cualquier punto de la red . .

recuperación. sus propios DBMS y programas para la administración de transacciones (incluyendo programas de bloqueo. . y su propio administrador local de comunicación de datos (administrador DC). bitácoras. etc. cada sitio tiene sus propias bases de datos "reales" locales. sus propios usuarios locales.).Introducción  En otras palabras.

Introducción  El sistema de administración de Base de Datos Distribuida (DDBMS). esta formado por las transacciones y los administradores de base de datos distribuidos de todas las computadoras. Tal DDBMS en un esquema genérico implica un conjunto de programas que operan en diversas computadoras .

Una función importante del DTM es coordinar y controlar dichas acciones. de acuerdo con comandos de acción recibidos de los DTM. Un administrador de la base de datos (DBM) es un programa que procesa cierta porción de la base de datos distribuida. .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.  Un administrador de transacciones distribuidas (DTM) es un programa que recibe so. como es el hecho de recuperar y actualizar datos del usuario y generales.

los cuales tienen la capacidad de procesamiento autónomo lo cual indica que puede realizar operaciones locales o distribuidas .Definición de Base de Datos Distribuida  Una Base de Datos Distribuida (BDD) es un conjunto de múltiples bases de datos lógicamente relacionadas que se encuentran distribuidas entre diferentes sitios interconectados por una red de comunicaciones.

.    Autonomía Local: Los sitios distribuido deben ser autónomos. como añadir un nuevo sitio.Características de las Base de Datos Distribuidas. No dependencia de un sitio central: No debe de haber dependencia de un sitio central para obtener un servicio. Operación Continua: Nunca debería apagarse para que se pueda realizar alguna función. es decir que todas las operaciones en un sitio dado se controlan en ese sitio.

   Independencia con respecto a la localización: No debe de ser necesario que los usuarios sepan dónde están almacenados físicamente los datos. los datos. sino que más bien el usuario debe ver como si solo existiera un sitio local Independencia con respecto a la fragmentación: La fragmentación es deseable por razones de desempeño.Características de las Base de Datos Distribuidas. Independencia de réplica: Si una relación dada (es decir. . pueden almacenarse en la localidad donde se utilizan con mayor frecuencia de manera que la mayor parte de las operaciones sean sólo locales y se reduzca el tráfico en la red. un fragmento dado de una relación) se puede presentar en el nivel físico mediante varias copias almacenadas o réplicas. en muchos sitios distintos.

cada uno de los cuales requiere un tratamiento más amplio en el ambiente distribuido. el control de recuperación y el control de concurrencia. Manejo Distribuido de Transacciones: Tiene dos aspectos principales.     Procesamiento Distribuido de Consultas: El objetivo es convertir transacciones de usuario en instrucciones para manipulación de datos. Independencia con respecto al equipo Independencia con respecto al Sistema Operativo .Características de las Base de Datos Distribuidas. y así reducir el tráfico en la red implica que el proceso mismo de optimización de consultas debe ser distribuido.

 Sobresalen dos aspectos en los que hay que poner especial atención para lograr aportar confiabilidad a una base de datos en un ambiente multiusuario:  . Una responsabilidad importante para un administrador de base de datos es la confiabilidad de la misma. es decir. errores de programas y errores humanos.Alternativas de Procesamiento de Base de Datos Multiusuario. asegurar que los programas y procedimientos proporcionen la confiabilidad de los datos a pesar de malas operaciones del equipo.

lo que ocurre con más frecuencia en un ambiente multiusuario .Control del procesamiento concurrente  Se conoce como procesamiento concurrente al procesamiento que se realiza cuando dos o más transacciones están interconectadas.

Bloqueo de recursos   Los bloqueos pueden colocarse. ya sea de manera automática por el DBMS o por medio de un comando emitido al DBMS partiendo del programa de aplicación o del usuario de la consulta Los bloqueos pueden ser aplicados a distintos niveles: registro. tabla o base de datos. . página.

Conjunto de recursos distintos.Manejador de recursos. . – Printers. – Justificación: Costos  Compartir Objetos Software – – – – Archivos Base de Datos Procesos Justificación: requerimiento esencial para desarrollo y aplicaciones .Recursos Compartidos  Compartir Hardware – Discos.

se pueden obtener los datos extraídos de otras computadoras – Una tercera ventaja es que los sistemas distribuidos pueden variar su tamaño de un modo más sencillo. los datos duplicados aumentan su confiabilidad. Cuando falla una computadora.– La primera.Procesamiento de Base de Datos Distribuidos  VENTAJAS DEL PROCESAMIENTO DISTRIBUIDO. los sistemas distribuidos se pueden adecuar de una manera más sencilla a las estructuras de la organización de los usuarios. puede dar como resultado un mejor rendimiento que el que se obtiene por un procesamiento centralizado – Segundo. Se pueden agregar computadoras adicionales a la red conforme aumentan el número de usuarios y su carga de procesamiento – Por último. .

– Primero. el rendimiento puede ser peor para el procesamiento distribuido que para el procesamiento centralizado. de las transacciones y de las tasas de error en la carga de trabajo. el procesamiento de base de datos distribuida puede resultar menos confiable que el procesamiento centralizado. del DDBMS. . ya que éstos pueden ser abrumados por las tareas de coordinación y de control requeridas – Segundo. De nuevo.Procesamiento de Base de Datos Distribuidos  DESVENTAJAS DEL PROCESAMIENTO DISTRIBUIDO – Las primeras dos desventajas de las bases de datos distribuidas son las mismas que las dos primeras ventajas. así como las ventajas del acceso local a los datos y de los procesadores múltiples. Depende de la naturaleza de la carga de trabajo. el DDBMS y las estrategias utilizadas de concurrencia y de falla. depende de la confiabilidad de las computadoras de procesamiento. de la red. la red.

– – – – Sistema de Administración de Base de Datos Distribuida (DDBMS) Administrador de transacciones distribuidas (DTM) Administrador de la base de datos (DBM) Nodo o Sitio .Componentes de los sistemas de Base de Datos Distribuidos   Hardware . Software.-El hardware que compone una base de datos distribuida se reduce a servidores y la red.

Cuatro Metas para un DBMS Distribuido. Las transacciones necesitan tener acceso a la base de datos vía un DDBMS que proporcione los cuatro siguientes tipos de transparencia:  Transparencia de Localización  Transparencia de Duplicación  Transparencia de Concurrencia  Transparencia de Falla  .

Todas las transacciones quedan aisladas de la modificación en la localización.TRANSPARENCIA DE LOCALIZACIÓN  Se puede conseguir la transparencia de localización si los administradores de transacciones distribuidas (los DTM en la Figura 1) son responsables de determinar la localización de los datos y de emitir las acciones a los DBM apropiados. . sólo el DTM necesita involucrarse. lo cual se puede llevar a cabo si los DTM poseen acceso a los directorios de las localizaciones de los datos. Si los datos se mueven.

. se pueden crear nuevos duplicados.TRANSPARENCIA DE DUPLICACIÓN  Con la transparencia de duplicación. sin provocar efecto alguno sobre la transacción del usuario o el procesamiento de la consulta. o los duplicados existentes pueden ser eliminados.

en algún orden serial arbitrario. El DDBMS proporciona transparencia de concurrencia si los resultados de todas las transacciones concurrentes son consistentes de manera lógica con los resultados que se habrían obtenido si las transacciones se hubieran ejecutado una por una. . los resultados de las transacciones no deberán afectarse.TRANSPARENCIA DE CONCURRENCIA  Aunque múltiples transacciones que involucran la base de datos distribuida se lleven a cabo al mismo tiempo.

Además. . serán permanentes. ya sea que se procesen todas las transacciones o ninguna de ellas. en el DDBMS. lo que significa que las transacciones sean procesadas de un modo correcto a pesar de fallas en la transacción. una vez comprometidos los resultados de las transacciones.TRANSPARENCIA DE FALLAS   La cuarta meta del DDBMS es proporcionar transparencia de fallas. las transacciones deberán ser atómicas. en la red y en la computadora. Frente a una falla. esto es.