Arquitecturas de bd

2.049 visualizaciones

Publicado el

Publicado en: Educación
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
2.049
En SlideShare
0
De insertados
0
Número de insertados
2
Acciones
Compartido
0
Descargas
109
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.
  • Se ejecutan en un único sistema informático, sin interactuar con ninguna otra computadora. Abarcan desde los DBMS monousuario hasta sistemas multiusuario de alto rendimiento que se ejecutan en grandes sistemas (teleproceso).
  • Homogeneidad: Según si todos los SGBD son iguales, se tiene un único producto y lenguaje de consultas: muy integrados; o si por el contrario los SGBD son distintos, por lo que aunque utilicen el mismo modelo de datos, distintos productos y lenguajes de consulta requieren su integración. Distribución: Si los datos están distribuidos físicamente sobre múltiples sitios que se comunican, o si se mantienen en un único lugar, datos centralizados Autonomía (Se refiere a la distribución del Control): Sistemas estrechamente integrados (sistemas compuestos) si todo el acceso a los datos se realiza siempre a través del procesador de datos distribuidos con las sedes locales totalmente dependientes de éste, él gestiona todos los accesos y funciones de administración. Sistemas semiautónomos (Sistemas Federados), donde cada procesador local actúa de forma autónoma e independiente, con usuarios, administradores, transacciones y aplicaciones exclusivamente locales, además de poseer porciones específicas de la BDD. Sistemas con total autonomía (Sistema Multi-Base de Datos) donde al no haber un control global el acceso a los datos de distintos nodos es especialmente complicado.
  • Esta arquitectura corresponde a los sistemas federados, es una extensión de la dada para los sistemas centralizados donde si se omiten los esquemas externos locales tendríamos un sistema integrado
  • El los Sistemas Multibase no tenemos un Esquema Conceptual Global, por lo que la autonomía local es completa
  • Arquitecturas de bd

    1. 1. Base de Datos: Arquitecturas de Bases de Datos Multiusuario Profesor: Msc. Luis Serna Jherry
    2. 2. Objetivos del Dia de Hoy <ul><li>Sistemas Centralizados </li></ul><ul><li>Sistemas Cliente Servidor </li></ul><ul><li>Sistemas Distribuidos </li></ul>
    3. 3. Sistemas Centralizados Os cc = Control de comunicaciones del sistema operativo Os dm = Administración de datos del sistema operativo OS cc AP 1 AP 2 AP 3 D B M S OS dm DB Usuario 1 Usuario 2 Usuario n
    4. 4. Arquitectura cliente - servidor BD OS net AP 1 AP 2 OS net AP 2 AP 3 OS net AP 2 OS net OS dm DBMS Red Usuario 1 Usuario 2 Usuario n Os net = porción de comunicaciones de red del SO Od dm = porción de administración de datos del SO
    5. 5. Sistemas Cliente/Servidor Interfaz (SQL + API) Funcionalidades de la parte visible al usuario y del sistema subyacente Parte visible al usuario Sistema subyacente Motor SQL Interfaz de usuario SQL Interfaz de formularios Diseñador de Informes Interfaz gráfica
    6. 6. <ul><li>Existen dos arquitecturas básicas: </li></ul><ul><li>De dos niveles , en los que: </li></ul><ul><ul><li>La lógica de la Presentación está en el Cliente. </li></ul></ul><ul><ul><li>La lógica de los Datos y del negocio está en el Servidor. </li></ul></ul><ul><li>De tres niveles, que implica servicios de gestión de transacciones complejas, y donde: </li></ul><ul><ul><li>La lógica de la Presentación está en el Cliente. </li></ul></ul><ul><ul><li>La lógica de los Datos está en el Servidor de Datos </li></ul></ul><ul><ul><li>La lógica del Negocio está en el Servidor de Aplicaciones. </li></ul></ul>Sistemas Cliente/Servidor
    7. 7. Sistema Distribuido de Base de Datos Red de Comunicaciones Sitio 1 Sitio 2 Sitio 3 Sitio 4 Sitio 5
    8. 8. Arquitectura de BD Distribuida AP 1 AP 2 DDBMS OS net OS dm AP 2 DDBMS OS net OS dm DDBMS OS net OS dm AP 2 AP 3 DDBMS OS net OS dm red BD BD BD BD
    9. 9. <ul><li>En un sistema distribuido la base de datos se almacena en varias computadoras. </li></ul><ul><li>Varios medios de comunicación, como redes de alta velocidad o líneas telefónicas, ponen en contacto a las distintas computadoras. </li></ul><ul><li>No comparten memoria ni discos. </li></ul><ul><li>Las computadoras pueden variar en tamaño y función. </li></ul>Sistemas Distribuidos
    10. 10. <ul><li>Un conjunto de localizaciones o sitios conectados entre si mediante algún tipo de red de comunicaciones, en el cual: </li></ul><ul><ul><li>Cada sitio es un sistema de base de datos en sí mismo. </li></ul></ul><ul><ul><li>Los sitios han convenido en trabajar juntos (si es necesario) como si los datos estuvieran almacenados localmente en el propio sitio del usuario. </li></ul></ul>Sistemas Distribuidos
    11. 11. Sistemas Distribuidos <ul><li>Principio fundamental: Desde el punto de vista del usuario, un sistema distribuido deberá ser idéntico a un sistema no distribuido. </li></ul><ul><li>Permite que cada sitio almacene y mantenga su propia BD. </li></ul><ul><li>Puede mejorar la fiabilidad; esto es, si falla un sitio el resto de la red puede seguir funcionando. </li></ul><ul><li>Permite el control local de los datos que se usan con mas frecuencia en un sitio. </li></ul>
    12. 12. Características <ul><li>Los distintos emplazamientos están informados sobre los demás. </li></ul><ul><li>Aunque algunas tablas pueden estar almacenadas sólo en algunos emplazamientos, éstos comparten un esquema global común. </li></ul><ul><li>Cada emplazamiento proporciona un entorno para la ejecución de transacciones tanto globales como locales. </li></ul><ul><li>En general, en cada emplazamiento se ejecuta el mismo software de gestión de BD distribuidas. </li></ul>
    13. 13. Ventajas <ul><li>Compartimiento de Datos </li></ul><ul><ul><li>Los usuarios de un emplazamiento pueden acceder a los datos que residen en otros emplazamientos. </li></ul></ul><ul><li>Autonomía . </li></ul><ul><ul><li>Cada emplazamiento conserva un cierto grado de control sobre los datos almacenados localmente. Cada administrador local de BD puede tener una autonomía local diferente, dependiendo del diseño del sistema distribuido de BD. </li></ul></ul><ul><li>Mejora del rendimiento para procesamientos locales </li></ul><ul><ul><li>La base de datos se fragmenta en bases de datos más pequeñas, manteniendo los datos cerca de donde más se necesitan </li></ul></ul><ul><ul><li>Las consultas y transacciones locales tienen mejor rendimiento debido al tamaño de la BD </li></ul></ul>
    14. 14. Ventajas <ul><li>Fiabilidad y Disponibilidad </li></ul><ul><ul><li>La fiabilidad se refiere a la probabilidad de que el sistema esté operativo en cualquier momento dado. </li></ul></ul><ul><ul><li>La disponibilidad consiste en la probabilidad de que el sistema esté disponible continuamente durante un determinado período de tiempo </li></ul></ul><ul><ul><li>Si falla un emplazamiento, los restantes pueden continuar funcionando. </li></ul></ul><ul><ul><li>Si se duplican los elementos de datos acertadamente en varios emplazamientos, una transacción que requiera un determinado elemento puede obtenerlo de cualquiera de dichas copias. </li></ul></ul><ul><ul><li>Así, el fallo de un emplazamiento no implica necesariamente el cierre del sistema. </li></ul></ul>
    15. 15. Inconvenientes <ul><li>Costo de desarrollo del software. </li></ul><ul><ul><li>La implementación de un sistema distribuido de BD es más difícil, y por tanto más costoso. </li></ul></ul><ul><li>Mayor probabilidad de errores. </li></ul><ul><ul><li>Como los emplazamientos operan en paralelo, es mas difícil asegurarse de la corrección de los algoritmos, del funcionamiento especial durante los fallos de parte del sistema, así como de la recuperación. </li></ul></ul><ul><li>Mayor sobrecarga de procesamiento </li></ul><ul><ul><li>Debido al intercambio de mensajes y el cómputo adicional para la coordinación entre los emplazamientos. </li></ul></ul>
    16. 16. Almacenamiento Distribuido de Datos <ul><li>Fragmentación </li></ul><ul><li>Significa dividir una relación en fragmentos para propósito de almacenamiento. Mejora el desempeño. </li></ul><ul><ul><li>Fragmentación Horizontal : Consiste en la partición de una tabla en subconjuntos de filas. </li></ul></ul><ul><ul><li>Fragmentación Vertical : Consiste en particionar una tabla por la proyección del subconjunto de sus atributos. </li></ul></ul>
    17. 17. Fragmentación Horizontal NUM EMP NUM DEPTO SALARIO E1 DX 45K E2 DY 40K E3 DZ 50K E4 DY 63K E5 DZ 40K NUM EMP NUM DEPTO SALARIO E1 DX 45K E3 DZ 50K E5 DZ 40K Almacenamiento físico en Tokyo NUM EMP NUM DEPTO SALARIO E4 DY 63K E2 DY 40K Almacenamiento físico en Lima Percepción del usuario Fragmento en Lima Fragmento en Tokyo
    18. 18. <ul><li>Réplica </li></ul><ul><li>Ocurre si el sistema mantiene copias de una tabla X en diferentes sitios para que la data tenga mas disponibilidad. </li></ul><ul><li>Los usuarios deberán poder comportarse como si solo hubiera una copia de los datos ( Independencia de Réplica ). </li></ul><ul><li>Permite la creación y eliminación dinámica de réplicas en respuesta a cambios en los requerimientos, sin afectar los programas o actividades de los usuarios. </li></ul><ul><li>Ventajas </li></ul><ul><ul><li>Si una de las estaciones que contiene la tabla X falla, la tabla puede recuperarse de otro sitio </li></ul></ul><ul><ul><li>Si la mayoría de los accesos a la tabla X sólo involucran una consulta a la tabla, entonces varios sitios pueden estar solicitando datos de X en forma concurrente. Mientras mas copias haya de X será menor el tráfico de la red. </li></ul></ul>Almacenamiento Distribuido de Datos
    19. 19. Réplica Fragmento de Lima Fragmento de Tokyo Réplica del fragmento de Lima Réplica del fragmento de Tokyo Percepción del Usuario Almacenamiento físico en Tokyo Almacenamiento físico en Lima NUM EMP NUM DEPTO SALARIO E4 DY 63K E2 DY 40K NUM EMP NUM DEPTO SALARIO E1 DX 45K E2 DY 40K E3 DZ 50K E4 DY 63K E5 DZ 40K NUM EMP NUM DEPTO SALARIO E1 DX 45K E3 DZ 50K E5 DZ 40K NUM EMP NUM DEPTO SALARIO E1 DX 45K E3 DZ 50K E5 DZ 40K NUM EMP NUM DEPTO SALARIO E4 DY 63K E2 DY 40K
    20. 20. <ul><li>Mínimo Coste: </li></ul><ul><ul><li>De almacenamiento de cada fragmento en el nodo correspondiente </li></ul></ul><ul><ul><li>De modificar un fragmento que está replicado en distintos nodos </li></ul></ul><ul><ul><li>De trasferencia de datos en la red </li></ul></ul><ul><li>Rendimiento: </li></ul><ul><ul><li>Minimizar tiempos de respuesta </li></ul></ul><ul><ul><li>Maximizar capacidad de procesamiento en cada nodo </li></ul></ul>Esquema de Asignación y Replicación: objetivos
    21. 21. Funciones Adicionales de los SGBDD <ul><li>Mantenimiento de la pista de los datos </li></ul><ul><ul><li>Expandiendo el catálogo de la BD para seguir la pista de la distribución de los datos, la fragmentación y la réplica </li></ul></ul><ul><li>Gestión de Transacciones Distribuidas </li></ul><ul><ul><li>Determinar estrategias de ejecución de consultas y transacciones que acceden a datos de más de una localización, sincronizar el acceso a dichos datos y mantener la integridad </li></ul></ul><ul><li>Gestión de datos replicados </li></ul><ul><ul><li>Decidir a qué copia de los datos acceder y mantener la consistencia entre dichas copias </li></ul></ul><ul><li>Recuperación de la base de datos distribuida </li></ul><ul><ul><li>La capacidad de recuperarse de caídas de sitios individuales y de fallos de los enlaces de comunicación </li></ul></ul>
    22. 22. Funciones Adicionales de los SGBDD <ul><li>Seguridad </li></ul><ul><ul><li>Controlar la seguridad y privilegios de acceso de los usuarios de las transacciones distribuidas </li></ul></ul><ul><li>Gestión del directorio (catálogo) distribuido </li></ul><ul><ul><li>Información de dónde y cómo se almacenan los datos, el modo de acceso y características físicas. </li></ul></ul><ul><ul><li>Alternativas: catálogo centralizado, replicado completamente, dividido, combinación de centralizado y dividido. </li></ul></ul>
    23. 23. Procesamiento Distribuido de Consultas <ul><li>Consideraciones: </li></ul><ul><ul><li>El número de accesos a disco </li></ul></ul><ul><ul><li>El costo de la trasmisión de datos por la red (número y volumen de mensajes) </li></ul></ul><ul><ul><li>La ganancia potencial en rendimiento respecto de hacer que varios emplazamientos procesen en paralelo parte de la consulta </li></ul></ul><ul><li>“ Buscar todas las tuplas de la tabla Cuenta” </li></ul><ul><ul><li>Si replicada, si fragmentada, si replicada y fragmentada. </li></ul></ul>
    24. 24. Procesamiento Distribuido de Transacciones <ul><li>Agente: proceso ejecutado a nombre de una determinada transacción en un determinado sitio. </li></ul><ul><ul><li>Control de concurrencia: No se permite bloqueo mutuo entre dos agentes que sean parte de una misma transacción. </li></ul></ul><ul><ul><li>Control de recuperación: Todos los agentes de la misma transacción se comprometen (Commit) o abortan (Rollback) simultáneamente. </li></ul></ul>
    25. 25. <ul><li>Manejar múltiples copias de los datos: </li></ul><ul><ul><li>Debe mantenerse la consistencia entre las copias: El control de concurrencia debe asegurar que cada copia sea consistente con todas las demás, aún cuando el sitio en el que reside falla y se recupera posteriormente </li></ul></ul><ul><li>Fallo de sitios individuales: </li></ul><ul><ul><li>El sistema debe continuar operando con sus sitios activos, si es posible, cuando fallen sitios individuales. </li></ul></ul><ul><ul><li>Cuando el sitio que falló se recupera, su BD local debe sincronizarse con las demás antes de reincorporarse al sistema. </li></ul></ul>Control de Concurrencia y Recuperación en BDD
    26. 26. <ul><li>Confirmación (commit) distribuida: </li></ul><ul><ul><li>Podría haber problemas al confirmar una transacción distribuida si alguno de los sitios involucrados falla durante la confirmación </li></ul></ul><ul><li>Bloqueo mortal distribuido: </li></ul><ul><ul><li>Podría ocurrir bloqueo mortal (interbloqueo) entre varios sitios, por lo que deben extenderse las técnicas para su tratamiento para considerar esta situación </li></ul></ul>Control de Concurrencia y Recuperación en BDD
    27. 27. <ul><li>Se designa una de las copias de cada elemento de datos como copia distinguida </li></ul><ul><li>Todos los bloqueos se asocian a la copia distinguida , y todas las solicitudes de bloqueo y desbloqueo se envían al sitio que contiene esa copia </li></ul>Control de Concurrencia por “ Copia Distinguida”
    28. 28. <ul><li>Técnicas de elección de copia distinguida: </li></ul><ul><li>Sitio primario: </li></ul><ul><ul><li>Se designa un sitio como coordinador para todos los elementos de la base de datos. Los bloqueos son hechos en este sitio. </li></ul></ul>Control de Concurrencia por “ Copia Distinguida”
    29. 29. <ul><li>Técnicas de elección de copia distinguida: </li></ul><ul><li>Sitio primario con sitio de respaldo </li></ul><ul><ul><li>Se designa un segundo sitio como de respaldo, y los bloqueos se mantienen en ambos sitios </li></ul></ul>Control de Concurrencia por “ Copia Distinguida”
    30. 30. <ul><li>Técnicas de elección de copia distinguida: </li></ul><ul><li>Copia primaria </li></ul><ul><ul><li>Se mantienen las copias distinguidas de los elementos de datos almacenadas en diferentes sitios. </li></ul></ul><ul><ul><li>Se puede combinar con sitios de respaldo </li></ul></ul>Control de Concurrencia por “ Copia Distinguida” A B A B A B
    31. 31. Recuperación en BDD <ul><li>El sistema debe ser capaz de detectar un fallo en uno de los emplazamientos, de modo que pueda decidir si es necesaria alguna acción de recuperación. </li></ul><ul><li>El sistema debe dejar de utilizar los servicios del emplazamiento con falla. </li></ul><ul><li>Deben existir mecanismos para reintegrar fácilmente en el sistema al emplazamiento que falló, cuando se haya recuperado. </li></ul>
    32. 32. Tipos de BD Distribuidas BD 1 BD 2 Línea de comunicación Dividida no Duplicada No Distribuida AP 1 AP 2 DBMS/OS Z Y X W AP 1 DBMS/OS AP 2 DBMS/OS Z Y X W
    33. 33. Tipos de BD Distribuidas AP 2 DBMS/OS BD (copia 1) BD (copia 2) Línea de comunicación No Dividida y Duplicada AP 1 AP 2 DBMS/OS AP 1 Z Y X W Z Y X W
    34. 34. Tipos de BD Distribuidas BD 1 BD 2 Línea de comunicación Dividida y Duplicada Y X W Z Y AP 1 DBMS/OS AP 2 DBMS/OS
    35. 35. Clases de SGBDD Heterogeneidad Distribución Autonomía SGDB integrados, heterogéneos SGDB heterogéneo y distribuido Múltiples SGDB homogéneos, lógicamente integrados SGDB homogéneo y distribuido SGDB federado, homogéneo y distribuido Sistema multibase, homogéneo y distribuido SGDB federado, heterogéneo y distribuido SGDB federado, heterogéneo en una sede SGDB federado, homogéneo en una sede Sistema multibase, heterogéneo Sistema multibase, homogéneo Sistema multibase, heterogéneo y distribuido
    36. 36. Arquitectura para SGBDD Esquema Externo Global 1 Esquema Externo Global 2 Esquema Externo Global n Esquema Conceptual Global Esquema Conceptual BD Local 1 Esquema Conceptual BD Local n Esquema Interno BD Local n Esquema Interno BD Local 1 Esquema Externo Local 11 Esquema Externo Local 1h Esquema Externo Local n1 Esquema Externo Local nm
    37. 37. Arquitectura de los SGBD Multibase Esquema Externo 1 Esquema Externo 2 Esquema Externo n Esquema Conceptual BD Local 1 Esquema Conceptual BD Local n Esquema Interno BD Local n Esquema Interno BD Local 1 Esquema Conceptual BD Local 2 Esquema Interno BD Local 2
    38. 38. Diseño de BDD Esquema Lógico Global Esquema Lógico Local 1 Esquema Lógico Local 2 Esquema Lógico Local n Distribución Integración
    39. 39. Bibliografia <ul><li>Fundamentos de Sistemas de Base de Datos. Ramez Elmasri, Shamkant Navathe </li></ul>

    ×