Fundamentos De Bases De Datos Distribuidas - Ocw.uc3m.es

Transcription

Fundamentos de Bases de DatosDistribuidasTEMA VII Grupo de Bases de Datos Avanzadas – Univ. Carlos III de MadridÍndiceVII.1 IntroducciónVII.2 Definición de Base de Datos DistribuidaVII.3 Sistema Gestor de Bases de DatosDistribuidasVII.4 Tiposided SGBDDsVII.5 Problemas de los SGBDDsTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.21

Fundamentos deBases de DatosDistribuidasIntroducción Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridEvolución de las Bases de DatosBD CentralizadasSistemasCliente/ServidorBD DistribuidasTEMA VIIFBD3 VII.3Fundamentos deBases de DatosDistribuidasIntroducción Evitar la sobrecarga de trabajo en servidores (cuellos debotella) Se trata de varias BD almacenadas en diferentes nodosque: forman una única BD lógica cooperan ejecutando consultas o transacciones globalesTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridMotivaciónFBD3 VII.42

Definición de Base deDatos DistribuidaColección de múltiples bases de datos,datoslógicamente interrelacionadas (integradas),distribuidas sobre una red de ordenadores.INTEGRACIÓNÓ DISTRIBUCIÓNÓTEMA VIIFBD3 VII.5Definición de Base deDatos DistribuidaIntegración Problemas derivados al desarrollar bases de datosindependientes: Datos redundantes Inconsistencia en datos SGBD distintos Dificultad interoperatividad Plataformas variadas Aislamiento grupos usuariosTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.63

Fundamentos deBases de DatosDistribuidasDefinición de Base deDatos Distribuida Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridDistribución Finalidad: Compartición de datos Optimización de datosz Respecto a su disponibilidadz Respecto a su localizaciónTEMA VIIFBD3 VII.7Definición de Base deDatos DistribuidaRequisitos de una BD Distribuida1) Integración lógica de datos (un único esquema globalcomún)2) Almacenamiento físico distribuido en sedes3) Acceso común (interfaz) todos los usuarios pueden acceder a todos los datos (locales oremotos) en una única operación se puede acceder a datos de variassedes Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasE.d. un único esquema y varios nodos de almacenamientoTEMA VIIFBD3 VII.84

Definición de Base deDatos Distribuida Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasComponentes Bases de Datos Locales (BD local) Diccionario de datos global Procesador de Aplicaciones Distribuidas (SGBDD) SW y Red de comunicacionesTEMA VIIDefinición de Base deDatos Distribuida Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.9Imagen tomada de [1]TEMA VIIFBD3 VII.105

Fundamentos deBases de DatosDistribuidasDefinición de Base deDatos Distribuida. Réplica. Fragmentación. Réplica y FragmentaciónEn el diccionario de la BDD se guardará información sobre laubicación de los datos, sobre los fragmentos de cada relación ysobre la duplicación de los datos.TEMA VIIFBD3 VII.11Fundamentos deBases de DatosDistribuidasDefinición de Base deDatos DistribuidaOOrganizativas/Políticas:i ti/P líti. Adaptación a la organización de la institución - unión decompañías /descentralización. Almacenar los datos donde son generados y/o usados. Proporcionar autonomía localEconómicas:. CosteTécnicas:. Flexibilidad.DisponibilidadModularidadMejora del rendimientoCrecimiento incrementalAcceso concurrente Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridVENTAJASTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridENFOQUES PARA EL ALMACENAMIENTO DISTRIBUIDO DE LOSDATOSFBD3 VII.126

Fundamentos deBases de DatosDistribuidasDefinición de Base deDatos Distribuida Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridINCONVENIENTES. CoComplejidadp ej dad dedel sistemas ste a. Distribución del control - Problemas de Sincronización yComunicación . Dependencia de la red de comunicaciones. Dificultad de diseñoproductos comerciales. Poca madurez de los p. Funciones de administración compleja. Dificultad de cambio. Personal especializadoTEMA VIISistema Gestor de Bases deDatos DistribuidasDefiniciónProducto software capaz de gestionar una BDD,suministrando mecanismos de acceso quehacen transparente la distribución Objetivos: Transparencia de red Transparencia de fragmentación Transparencia de réplicasTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.13FBD3 VII.147

Tipos de SGBDDs Segúngel ggrado de homogeneidadgde los SGBD locales: SGBDD homogéneos: todos los SGBD locales soniguales SGBDD heterogéneos: los SGBD locales son distintos Según el grado de distribución: Datos Distribuidos Datos CentralizadosTEMA VIIFBD3 VII.15Tipos de SGBDDs Según el grado de autonomía: Sistemas Compuestos (EstrechamenteIntegrados): ninguna autonomía funcional en SGBDlocal. Todo acceso a través del SGBDD. Sistemas Federados (Semiautónomos): SGBDlocales autónomos, permite acceso a través del SGBDD apartes de su BD. Sistemas Multi-Base de Datos (Autonomía Total):SGBD locales autónomos e independientes.TEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.168

Fundamentos deBases de DatosDistribuidasSistemasFederados Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridSistemasCompuestosTipos de SGBDDsSistemasMultiBaseImagen tomada de [4]TEMA VIIProblemas de los SGBDD1. Diseño Distribuido de BD: Particionamiento y Replicación. Fragmentación y Distribución.2. Procesamiento de Consultas y Optimización: Estrategia global, seguida de optimización local en cada sede3. Propagación de actualizaciones en caso dereplicación: Solución por medio de copia primaria4. Gestión de actualizaciones que involucren variassedes en una única transacción: Protocolo de confirmación en dos fasesTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.17FBD3 VII.189

Problemas de los SGBDD5. Gestión de concurrencia: CCostet dde lasl técnicasté ided bloqueoblpor ell tráficot áfi en lal red.dSolución por copia primaria Aparición de interbloqueo global - más de un nodo implicado -6. Recuperación de fallos: Reconfiguración y Recuperación (Sincronización). Archivo delog.7 Integridad:7. Restricciones locales y globales.8. Seguridad: Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Usuarios y Sistemas Remotos.TEMA VIIProblemas de los SGBDDProcesamiento y optimización de consultas Objetivo: Reducir la cantidad de transferencia de datos por la red Aplicar una estrategia global de optimizaciónz RealizarR lilosl joinsj i ded manera óptimaó tiz Tratar la consulta a alto nivelz Localizar datos y distribuir operaciones entre las distintassedesTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.19FBD3 VII.2010

Problemas de los SGBDDProcesamiento y optimización de consultasConsulta en SQLNodo de Control Optimización global Expresión de la consultaen álgebra de fragmentosNodo Local 1 Optimización localNodo Local n Optimización localTEMA VIIFBD3 VII.21Problemas de los SGBDDEjemplo de optimización de consultasEMPLEADO(10.000 registros)DEPARTAMENTO(100 registros)EMPLEADO (nss: char(9), nombre:char(15), apellido:char(15), nd:char(4),dirección:char(57))DEPARTAMENTO (numeroD:char(4), nombreD:char(10), nssgte:char(9),fecha:char(12)) Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.2211

Problemas de los SGBDDEjemplo de optimización de consultas(E l d θ Departamento)Dtt ) Nombre, Apellido, NombreD (EmpleadoEstrategias simplesSede 1EmpleadoSede 2DepartamentoSolución 1: Sede 1 Sede 2 Sede31.000.000 3.500 1.003.500 bytesSolución 2: Sede 1 Sede 2Sede 2 Sede 3Sede 3Consulta1.000.000 10.000 reg.* 40 1.400.000bytesSolución 3: Sede 2 Sede 1Sede 1 Sede 3 Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas3.500 10.000 reg.* 40 403.500 bytesTEMA VIIProblemas de los SGBDDPropagación de actualizaciones en caso dereplicacióna) Replicación inmediata: copia instantánea a todas lassedes replicadasb) Copia primaria: propagación diferidaprimaria -- resto sedesb.1)) sede pb.2) sede primaria -- sede siguiente -- .TEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.23FBD3 VII.2412

Problemas de los SGBDDActualizaciones que involucren varias sedes enuna única transacción Transacción: Unidad fundamental de recuperación,consistencia y concurrencia.z Conjunto de operaciones primariasz No se puede dividirpde las transacciones Propiedadesz Atomicidad (A) (todo o nada)z Consistencia (C) (conservar la integridad)z Aislamiento (I) (cambios invisibles hasta confirmación)z Persistencia (D) (Una vez confirmada)TEMA VIIFBD3 VII.25Problemas de los SGBDDActualizaciones que involucren varias sedes enuna única transacción Protocolo CONFIRMACIÓN EN DOS FASES (TwoPhase-Commit) Sincroniza la actuación de gestores de recursosindependientes dentro de una única Transacción. El coordinador centraliza la decisión de confirmar, peroda a cada participante derecho de veto sobre toda laoperación.z Fase de Consulta.z Fase de ConfirmaciónTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.2613

Problemas de los SGBDD2PC FASE I: ConsultaCoordinador Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasSede 1¿ready?OKSede 2Sede 32PC FASE II: ConfirmaciónS d 1SedeCoordinadorSede 2Sede 3TEMA VIIFBD3 VII.27Problemas de los SGBDD2 PC FASE I: ConsultaCoordinador Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasSede 1¿ready?OKSede 2Sede 32PC FASE II: ConfirmaciónS d 1SedeCoordinadorSede 2Sede 3TEMA VIIFBD3 VII.2814

Problemas de los SGBDD Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasGestión de Concurrencia Nuevos problemas: Múltiples copias Fallos enz Sedesz RedR d comunicacióni ió Confirmación distribuida Interbloqueo distribuidoTEMA VIIFBD3 VII.29Problemas de los SGBDDProcesos Gestión Concurrencia COPIA DISTINGUIDA SEDE PRIMARIA: sólo un coordinador para todas las sedes SEDE PRIMARIA CON SEDE DE RESPALDO: se designa unasede de respaldo para la sede primaria COPIA PRIMARIA: copias de datos distinguidas almacenadasen distintas sedes VOTACIÓN Las solicitudes de bloqueo se envían a todas las sedes queparticipan. Si la mayoría aceptan la transacción, se realiza.TEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.3015

Problemas de los SGBDDRecuperación ante fallos Tipos de fallos: En una sede -- protocolos de confirmación en 3 fases Pérdida de mensaje -- uso de protocolos de transmisión fiables(TCP) Fallo de enlace de comunicación: transmisión reiterada sin ackpara distinguirlo -- ruta alternativa Segmentación de la red (no existe ruta alternativa)TEMA VIIFBD3 VII.31Problemas de los SGBDDIntegridad Problemas de integridad más intensos en SGBDD Inconsistencia entre las Restricciones Locales Dificultad en especificar las Restricciones Globales Inconsistencia entre las Restricciones Locales y lasGlobalesTEMA VII Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.3216

Problemas de los SGBDDSeguridad Confianza en los usuarios, en la red y en los sitios remotos Identificación y Autenticación Remotas A nivel de usuarios A nivel de nodos Distribución de las reglas de autorización Encriptación Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidas Mecanismos de vistas globalesTEMA VIIBibliografía1. Miguel,g , A. De,, Piattini,, M. Fundamentos y modelos deBases de Datos, Ed. Rama 19992. Miguel, A. De, Piattini, M. y Marcos, E. Diseño de Basesde Datos Relacionales, Ed. Rama 19993. Miguel, A. De, Martínez, P., Castro, E., Cavero, J.M.,Cuadra, D., Iglesias, A.M. y Nieto, C. Diseño de Bases deDatos. Problemas Resueltos, Ed. Rama, 20014. Oszu, M.T. y Valduriez, P., Principles of Distributeddatabase systems, 2ª Edición, Prentice Hall, 1999Tema I Grupo de Basses de Datos Avanzadas – Univ. Carloos III de MadridFundamentos deBases de DatosDistribuidasFBD3 VII.33FBD3 VII.3417

Evolución de las Bases de Datos es de Datos Avanzadas - Univ. Carl o BD Centralizadas Sistemas . Sistema Gestor de Bases de Datos Distribuidas Definición es de Datos Avanzadas - Univ. Carl . Producto software capaz de gestionar una BDD, suministrando mecanismos de acceso que hacen transparente la distribución Objetivos: FBD3 VII.14 s .