Expo final

35
BASE DE DATOS DISTRIBUIDAS LINA RUIDIAZ NASER ROMERO JAVIER SERRANO RODRIGO CABRERA JASSER MEJIA

description

base de datos

Transcript of Expo final

Page 1: Expo final

BASE DE DATOS DISTRIBUIDAS

LINA RUIDIAZNASER ROMEROJAVIER SERRANO

RODRIGO CABRERAJASSER MEJIA

Page 2: Expo final

QUE ES UNA BASE DE DATOS DISTRIBUIDAS

• Un sistema de BDD es un sistema en el cual múltiples sitios de base de datos están ligados por un sistema de comunicación .

• En un sistema de base de datos distribuida, los datos se almacenan en varios computadores. Los computadores de un sistema distribuido se comunican entre sí a través de diversos medios de comunicación, tales como cables de alta velocidad o líneas telefónicas

Page 3: Expo final

COMPARACION BD CENTRALIZADA VS

DISTRIBUIDAS• Las Bases de Datos Distribuidas se utilizan

cuando los datos se encuentran en diferentes máquinas, generalmente situados en localizaciones geográficas diferentes(homogéneas o no).

• Una Base de Datos Centralizada es una base de datos que está físicamente situada en un único lugar, controlado por una sola computadora.

Page 4: Expo final

¿QUÉ NO ES UNA BASE DE DATOS DISTRIBUIDA?

Un caso de sistema NO considerado BDD : Considere el mismo banco del ejemplo anterior, pero con la configuración del sistema mostrado , La información en diferentes sucursales esta distribuida en tres computadores ( "backend" computers ), que realizan el control de funciones de la base de datos. Las aplicaciones son ejecutadas por diferentes computadores.

(BDD sistema multiproceso)

Page 5: Expo final

ARQUITECTURA DE UN SISTEMA DE BASES DE DATOS DISTRIBUIDAS

La mayoría de los sistemas de manejo de bases de datos disponibles actualmente están basadas en la arquitectura ANSI-SPARC la cual divide a un sistema en tres niveles: interno, conceptual y externo.• LA VISTA CONCEPTUAL (CONOCIDA TAMBIÉN COMO VISTA

LÓGICA GLOBAL ) representa la visión de la comunidad de usuarios de los datos en la base de datos, No toma en cuenta la forma en que las aplicaciones individuales observan los datos o como éstos son almacenados.

• Esquema Externo (Definido A Nivel Externo) La vista externa proporciona una ventana 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.

• esquema interno a (nivel interno) es el nivel de descripción más bajo de los datos en una base de datos. Este proporciona una interfaz al sistema de archivos del sistema operativo el cual es el responsable del acceso a la base de datos.

Page 6: Expo final

Para definir un esquema de estandarización en bases de datos distribuidas se debe definir un modelo de referencia el cual sería un marco de trabajo conceptual cuyo propósito es dividir el

trabajo de estandarización en piezas manejables y mostrar a un nivel general como esas piezas se

relacionan unas con otras. Para definir ese modelo de referencia se puede seguir uno de los

siguientes tres enfoques:

•BASADOS EN COMPONENETES: Se definen las componentes del sistema junto con las relaciones

entre ellas.

•BASADO EN FUNCIONES: Se identifican las diferentes clases de usuarios junto con la

funcionalidad que el sistema ofrecerá para cada clase.

•BASADOS EN DATOS: Se identifican los diferentes tipos de descripción de datos y se

especifica un marco de trabajo arquitectural el cual define las unidades funcionales que

realizarán y/o usarán los datos de acuerdo con las

diferentes vistas.

Page 7: Expo final

VENTAJAS Y DESVENTAJAS DE UNA BDD

VENTAJAS• los datos son localizados en lugar más

cercano.• el acceso es más rápido.• el procesamiento es rápido.• nuevos nodos se pueden agregar fácil y

rápidamente.• La comunicación entre nodos se mejora.• los costos de operación se reducen.• son amigables al usuario. • probabilidad de que una falla en un solo nodo

afecte al sistema es baja.

Page 8: Expo final

DESVENTAJAS

• Menos rendimiento.

• Menos confiable.

• Altos costos de construcción y mantenimiento.

• Complejidad del manejo y control.

• Carencia de estándares

• Diseño de la base de datos se vuelve más complejo

• Falta de experiencia

• Integridad

Page 9: Expo final

TIPOS DE ARCHIVOS FRAGMENTACIÓN

• FRAGMENTACIÓN HORIZONTAL• FRAGMENTACIÓN VERTICAL• FRAGMENTACIÓN MIXTA O HIBRIDA

Page 10: Expo final

FRAGMENTACIÓN HORIZONTALEjemplo: Se ilustra una posible fragmentación de la tabla Alumnos de dos fragmentos: uno para el nodo de la EUI y otro para el nodo de la EUIT.

Page 11: Expo final

En este caso: ALUMNOS=ALUMNOS_EUI ∪ ALUMNOS_EUIT

Page 12: Expo final

FRAGMENTACIÓN VERTICAL

Departamento Infraestructura

Departamento ordenación académica

Datos Rectorado

Supongamos que en el rectorado existen dos departamentos ubicados en distinto lugares y con necesidades distintas de información.

Page 13: Expo final

FRAGMENTACIÓN MIXTA O HIBRIDA

Secretaria

Datos EUI

Jefatura estudios

Resultante de fragmentación horizontal previa

Page 14: Expo final

NIVELES DE TRANSPARENCIA EN SBDDLa transparencia se puede entender como la separación de la semántica de alto nivel de un sistema de los aspectos de bajo nivel relacionados a la implementación del mismo. En sistemas de bases de datos distribuidos el propósito fundamental de la transparencia, es proporcionar independencia de datos en el ambiente distribuido.hay 3 niveles de transparencia los cuales son:• LA TRANSPARENCIA AL NIVEL DE RED.• LA TRANSPARENCIA SOBRE REPLICACIÓN DE

DATOS.• LA TRANSPARENCIA A NIVEL DE FRAGMENTACIÓN

DE DATOS.

Page 15: Expo final

TRANPARENCIA A NIVEL DE REDLa transparencia al nivel de red conlleva a dos cosas:

• transparencia sobre la localización de datos.

• transparencia sobre el esquema de nombramiento.LA TRANSPARENCIA SOBRE REPLICACIÓN DE DATOSse refiere a que si existen réplicas de objetos de la base de datos, su existencia debe ser controlada por el sistema no por el usuario.

LA TRANSPARENCIA A NIVEL DE FRAGMENTACIÓN DE DATOSPermite que cuando los objetos de la bases de datos están fragmentados, el sistema tiene que manejar la conversión de consultas de usuario definidas sobre relaciones globales a consultas definidas sobre fragmentos

Page 16: Expo final

• La independencia de datos se puede dar en dos aspectos:

INDEPENDENCIA DE DATOS

• INDEPENDENCIA LÓGICA DE DATOS: Se refiere a la inmunidad de las aplicaciones de usuario a los cambios en la estructura lógica de la base de datos.

• INDEPENDENCIA FÍSICA DE DATOS: Se refiere al ocultamiento de los detalles sobre las estructuras de almacenamiento a las aplicaciones de usuario.

Page 17: Expo final

CARÁCTERÍSTICAS DE LAS BDD

• Los datos deben estar físicamente en más de un ordenador.

• Las sedes deben estar interconectadas mediante una red

• Los datos han de estar lógicamente integrados tanto en local como remoto

• En una única operación se puede acceder datos que se encuentran en más de una sede

• Todas las acciones que necesiten realizarse sobre más de una sede serán transparentes al usuario

Page 18: Expo final

COMPONENTES DE UNA BDDHARDWARE• El hardware utilizado no difiere mucho del

hardware utilizado en un servidor normal.SOFTWARE

Esta constituido por 4 partes• Sistema Manejador de Base de Datos

Distribuida (DDBMS)• Administrador de transacciones

distribuidas (DTM)• Sistema Manejador de base de datos

(DBMS)• Nodo.

Page 19: Expo final

PROCESAMIENTO DISTRIBUIDO DE CONSULTAS

Ejemplo de consulta distribuidaNODO1EMPLEADO

• El contenido de la relación EMPLEADO es el siguiente:

• 10.000 tuplas. • Cada tupla tiene 100 bytes de longitud. • El campo COD tiene 9 bytes de longitud. • El campo Depto tiene 4 bytes de longitud. • El campo Nombre tiene 15 bytes de longitud. • El campo Apellido tiene 15 bytes de longitud

Page 20: Expo final

• NODO 2: DEPARTAMENTO

• 100 tuplas. • Cada tupla tiene 35 bytes de longitud. • El campo NDpto tiene 4 bytes de longitud. • El campo Responsable tiene 9 bytes de longitud. • El campo Edificio tiene 10 bytes de longitud.

Page 21: Expo final

EJEMPLO DE CONSULTA DISTRIBUIDAConsideremos la consulta “Por cada empleado, obtener el nombre del empleado y el nombre del departamento al que pertenece”.

• Transferir tanto la relación EMPLEADO como la del DEPARTAMENTO al nodo respuesta (nodo 3) y realizar allí mismo la operación de join.

• Transferir la relación EMPLEADO al nodo 2, ejecutar el join en este nodo y enviar el resultado al nodo 3.

• Transferir la relación DEPARTAMENTO al nodo 1, ejecutar el join en este nodo y enviar el resultado al nodo 3.

Page 22: Expo final

EJEMPLO DE CONSULTA DISTRIBUIDA

Supongamos ahora la consulta: “para cada departamento, obtener el nombre del departamento y el de su director”.

• Transferimos las relaciones DEPARTAMENTO y EMPLEADO al nodo 3.

• Transferimos la relación EMPLEADO al nodo 2 y enviamos el resultado del join al nodo 3.

• Transferimos la relación DEPARTAMENTO al nodo 1 y enviamos el resultado del join al nodo 3.

Page 23: Expo final

EJEMPLO DE CONSULTA DISTRIBUIDA

En este caso la mejor alternativa el tercer supuesto, Sin embargo, se puede plantear el

siguiente caso: “Que el nodo respuesta contenga parte de la

información necesaria para resolver la consulta. Supongamos que en este caso el nodo respuesta

es el nodo 2”.• Transferir la relación EMPLEADO al nodo 2,

realizar el join y presentar el resultado al usuario del nodo 2.

• Transferir la relación DEPARTAMENTO al nodo 1, realizar el join y enviar el resultado al nodo 2.

Page 24: Expo final

PROCESO DISTRIBUIDO DE CONSULTAS UTILIZANDO SEMIJOIN • Reducción de el número de tuplas antes

de ser transferidas a otro nodo. • Se envía la columna con la que se va a

realizar el join de una relación R al nodo donde se encuentra la otra relación, allí se realiza el join con la otra relación S.

• Se envían las columnas implicadas en el resultado al nodo inicial y se vuelve a realizar el join con R.

• Sólo se transfieren las columnas de R que intervienen en la realización del join en una dirección y el subconjunto de columnas de S resultantes en la otra.

Page 25: Expo final

EJEMPLO DE PROCESO DISTRIBUIDO DE CONSULTAS UTILIZANDO SEMIJOIN

Caso 1:Para la consulta Q, proyectamos los atributos de DEPARTAMENTO que van a intervenir en la operación de join y los transferimos al nodo 1:

F: Π NDpto(DEPARTAMENTO)Para la consulta Q’:

F’: Π Responsable(DEPARTAMENTO)

Page 26: Expo final

EJEMPLO DE PROCESO DISTRIBUIDO DE CONSULTAS UTILIZANDO SEMIJOIN

Caso 2:Para la consulta Q realizamos el join de los tulpas transferidas en el paso anterior. Del resultado de ésta operación de join, transferiremos de nuevo al nodo 1 los atributos necesarios para realizar el join final:

R: Π Dpto, Nombre, Apellido(F * EMPLEADO)

En el caso de Q’, tendremos:

R’: Π Responsable(F’ * EMPLEADO)

Page 27: Expo final

RECUPERACION

Vamos a estudiar ahora algunos de los problemas más comunes que se presentan en los sistemas de bases de datos distribuidas. En los entornos distribuidos de datos podemos encontrar lo siguientes:

• Fallo de los nodos

• Copias múltiples de fragmentos de datos

• Transacción distribuida correcta

• Fallo de las conexiones de comunicación

Page 28: Expo final

ALTERNATIVAS PARA LA IMPLEMENTACION DE SMBD

Presentan las diferentes dimensiones (factores) que se deben considerar para la implementación de un sistema manejador de base de datos.

DIMENSIONES DE SMBD

• Distribución

• Heterogeneidad

• Autonomía - de diseño - de comunicación - de ejecución

Page 29: Expo final

LOS SISTEMAS DISTRIBUIDOS ESTAN DIVIDIDOS EN DOS CLASES SEPARADAS

HOMOGÉNEAS

• No existen usuarios locales y todos ellos accesan la base de datos a través de una interfaz global.

• El esquema global es la unión de todas las descripciones de datos locales y las vistas de los usuarios se definen sobre el esquema global.

• El esquema de fragmentación describe la forma en que las relaciones globales se dividen entre las bases de datos locales.

HETEROGÉNEAS

• Una subclase importante dentro de esta clase es la de los sistemas de manejo multi-bases de datos.

• Un sistema multi-bases de datos (Smulti-BD) tiene múltiples SMBDs, que pueden ser de tipos diferentes, y múltiples bases de datos existentes.

• La integración de todos ellos se realiza mediante subsistemas de software.

Page 30: Expo final

LAS DOCE REGLAS DE UN DDBMS

I. AUTONOMÍA LOCALII. NO DEPENDENCIA DE UN SITIO CENTRAL

III. OPERACIÓN CONTINUAIV. INDEPENDENCIA CON RESPECTO A LA LOCALIZACIÓN

V. INDEPENDENCIA CON RESPECTO A LA FRAGMENTACIÓNVI. INDEPENDENCIA DE RÉPLICA

VII. PROCESAMIENTO DISTRIBUIDO DE CONSULTASVIII. MANEJO DISTRIBUIDO DE TRANSACCIONESIX. INDEPENDENCIA CON RESPECTO AL EQUIPO X. INDEPENDENCIA CON RESPECTO AL SISTEMA

OPERATIVO  

XI. INDEPENDENCIA CON RESPECTO ALA RED 

XII. INDEPENDENCIA CON RESPECTO AL DBMS

Page 31: Expo final

M. en C. Anastacio Antolino Hernández

Principio Fundamental

“Ante el usuario, un sistema distribuido debe lucir exactamente igual que un sistema que no es distribuido”

Page 32: Expo final

DISEÑO DE LA BDD• En el diseño de bases de datos

distribuidas se debe considerar el problema de como distribuirla información entre diferentes sitios. Existen razones organizacionales las cuales determinan en gran medida lo anterior. Sin embargo, cuando se busca eficiencia en el acceso a la información, se deben abordar dos problemas relacionados. Primero, como fragmentarla información. Segundo, como asignar cada fragmento entre los diferentes sitios de la red.

Page 33: Expo final

ESTRATEGIAS DE DISEÑO

• LA ESTRATEGIA ASCENDENTE(BOTTON-UP): En este caso se partirá de los esquemas conceptuales locales y se trabajaría para llegar a conseguir el esquema conceptual global. Después se pasaría al diseño de distribución. Esta estrategia suele ser utilizada para integrar varias bases de datos centralizadas existentes.

• LA ESTRATEGIA DESCENDENTE(TOP-DOWN):Se parte de cero y se avanza en el desarrollo del trabajo. Los pasos a realizar mediante esta estrategia son:

• Análisis de requisitos• Diseño de Vistas• Diseño conceptual• Diseño de la distribución• Fragmentación• Asignación• Diseño físico• Monitorización y ajuste

Page 34: Expo final

DICCIONARIO DE DATOS

• Es el lugar donde se deposita información acerca de todos los datos que forman la BD. Es una guía en la que se describe la BD y los objetos que la forman.

• El diccionario contiene las características lógicas de los sitios donde se almacenan los datos del sistema, incluyendo nombre, descripción, alias, contenido y organización. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la información

Page 35: Expo final

GRACIAS