Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

30
Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV

Transcript of Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Page 1: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitecturas de las BDD

Lic. Bárbara da Silva

Sistemas de Bases de Datos Distribuidas - UCV

Page 2: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Esquema de la Clase

• Arquitectura de las BDD• Transparencia• Niveles de Transparencia• ¿Quién debe proveer la transparencia?• Modelo de Referencia• Arquitectura ANSI/SPARC• Ejemplo de la Arquitectura ANSI/SPARC• Arquitectura de un SMBDD

Page 3: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura de las BDD

La Arquitectura define la estructura de un sistema.

• Componentes• Funciones de los componentes• Interrelaciones entre los componentes

El propósito de establecer una arquitectura para un sistema de bases de datos distribuidas es ofrecer un nivel de transparencia adecuado para el manejo de la información.

Page 4: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Transparencia

El término transparente significa que la aplicación trabajaría, desde un punto de vista lógico, como si un solo Sistema Manejador de Bases de Datos (SMBD) ejecutado en una sola máquina, administrara esos datos.

La 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.

Page 5: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Niveles de Transparencia

Datos

Independencia de Datos

Transparencia de Red

Transparencia de Replicación

Transparencia de Fragmentación

Transparencia del Lenguaje

Page 6: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Independencia de Datos

La independencia de datos es la inmunidad de las aplicaciones de usuario a los cambios en la definición y/u organización de los datos y viceversa.

Se puede dar en dos aspectos:

Independencia lógica de datos: Se refiere a la inmunidad de las aplicaciones de usuario a los cambios en la estructura lógica (cambios en la definición del esquema) 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 7: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Transparencia de Red

La transparencia de red se refiere a que los datos en un SBDD se accedan sobre una red de computadoras sin que las aplicaciones noten su existencia.

La transparencia al nivel de red conlleva a dos cosas:

Transparencia sobre la localización de datos: El comando que se usa es independiente de la ubicación de los datos en la red y del lugar en donde la operación se lleve a cabo.

Transparencia sobre el esquema de nombramiento: Lo anterior se logra proporcionando un nombre único a cada objeto en el sistema distribuido.

Page 8: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Transparencia de Replicación

La transparencia sobre replicación de datos se refiere a que si existen réplicas de objetos de la base de datos, su existencia debe ser controlada por el SMBDD, no por el usuario.

Page 9: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Transparencia de Fragmentación

La transparencia a nivel de fragmentación de datos permite:

• El sistema maneje la conversión de consultas de usuario definidas sobre relaciones globales a consultas definidas sobre fragmentos.

• Las respuestas a consultas fragmentadas para obtener una sola respuesta a una consulta global.

Query GlobalQuery sobre Fragmentos

Query sobre Fragmentos

Query sobre Fragmentos

Page 10: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Transparencia del Lenguaje

Permite la transparencia de acceso por medio del DML (Lenguaje de Manipulación de Datos).

Forma en que el usuario accede a la data:• Lenguajes de Programación• Interfaces gráficas• Sistemas de voz• Otros.

Page 11: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

¿Quién debe proveer la transparencia?

La responsabilidad sobre el manejo de transparencia debe estar compartida por:

•El sistema operativo•El sistema de manejo de bases de datos y •El lenguaje de acceso a la base de datos distribuida.

Page 12: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Modelo de Referencia

Para definir una arquitectura se sigue un modelo de referencia. A partir del modelo de referencia se puede llegar a una estandarización.

Un modelo de referencia “permite dividir el trabajo de estandarización en partes y mostrar como esas partes se relacionan unas con otras”.

Existen tres enfoques para describir un modelo de referencia:

• Componentes• Funciones• Datos -> ANSI/SPARC

Page 13: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura ANSI/SPARC

La arquitectura ANSI/SPARC es un framework propuesto debido a la necesidad de estandarizar la arquitectura de los SMBD. Dicho framework se basa en la organización de la data.

Divide al sistema en tres vistas:

Externa -> Usuario

Conceptual -> Negocio

Interna -> Sistema ó Máquina

Page 14: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura ANSI/SPARC

VistaInterna

VistaConceptual

VistaExterna

VistaExterna

VistaExterna

Usuarios

Esquema Externo

Esquema Conceptual

Esquema Interno

Page 15: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Ejemplo de Arquitectura ANSI/SPARC

Para los ejemplos:• Nos basamos en el modelo relacional.• La sintaxis no es parte de un lenguaje específico.• Las vistas externas serán descritas en SQL.

Ejemplo de Vista Conceptual:

Empleado (numEmpleado, nombre, cargo)Sueldo (titulo, salario)Proyecto (numProyecto, nombre, presupuesto)Asignación (numEmpleado, numProyecto, responsabilidad,

duración)

Page 16: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Ejemplo de Arquitectura ANSI/SPARC

Ejemplo de Vista Interna:

Rel_Interna Empleado ( INDEX ON E# CALL EMINXCAMPOS = { HEADER: BYTE(1)

E#: BYTE(9)ENOMBRE: BYTE(15)TIT: BYTE(10)

})

Page 17: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Ejemplo de Arquitectura ANSI/SPARC

Ejemplo de Vista Externa:

CREATE VIEW nomina ASSELECT Empleado.NumEmpleado, Empleado.Nombre, Sueldo.SalarioFROM Empleado, SueldoWHERE Empleado.Cargo = Sueldo.Cargo

CREATE VIEW presupuestos ASSELECT Proyecto.Nombre, presupuestoFROM Proyectos

Page 18: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Tarea

1. Características de distribución en los SMBD Comerciales

2. Tipos de Distribución en los SMBD Comerciales.

3. Transparencia en los SMBD comerciales.

4. Recuperar el nombre del proveedor de un producto. Se asume que:

• El número del producto es dado por el usuario. • Un producto es suplido por un solo proveedor.Escriba la consulta para cada uno de los niveles de transparencia

Page 19: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura de un SMBDD

La arquitectura se puede especificar de acuerdo a:

• Autonomía: se refiere al grado de operación independiente de un SMBD. Se refiere a la distribución del control.

• Distribución: se refiere a la distribución de la data.

• Heterogeneidad: se refiere a las diferencias en cuanto a hardware, protocolos de red y SMBD (modelos de datos, lenguajes para realizar las consultas y el manejo de transacciones).

Page 20: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura de un SMBDD

Los requerimientos que debe cumplir un sistema autónomo:

• Las operaciones locales no se ven afectadas por la participación en el sistema de multi base de datos.

• El procesamiento de querys local no afecta la ejecución de los querys globales.

• Se debe mantener la consistencia cuando los SMBD locales se unan para la multi base de datos.

Page 21: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura de un SMBDD

Las dimensiones de la autonomía:

Autonomía en el Diseño -> modelo de datos y manejo de transacciones.

Autonomía de Comunicación -> información a proveer a otros SMBD.

Autonomía de Ejecución -> ejecución de las transacciones

Page 22: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura de un SMBDD

Nombre Descripción

Autonomía

Integración Fuerte

A0

Uno de los nodos es el que controla las peticiones de los usuarios, incluso si la petición incluye

Semi-autónomo

A1

Cada SMBD determina que parte de su propia BD va a compartir. No es totalmente autónomo porque necesita modificar su esquema para compartir la data.

Aislamiento totalA2

SMBD que no saben de la existencia de otros DBMS ni cómo comunicarse entre sí.

DistribuciónCliente/Servidor

D1

Se diferencias los nodos como clientes (vista al usuario) o servidores (manejo de la data).

Peer to PeerD2

Todos los nodos tienen igualdad de funciones

Heterogeneidad

Homogéneos H0

HardwareRedSMBDHeterogéneos H

1

Page 23: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Cliente/Servidor

(Ax, D1, Hy)

Servidores -> procesamiento y optimizacion de querys, manejo de transacciones y almacenamiento de la data.

Clientes -> interfaz al usuario, manejo de data en cache y manejo de bloqueos de transacciones de la cache.

SO

User interface

SMBD Cliente

Software de Comunicación

SO

Software de Comunicación

SMBD Servidor

BD

Queries SQL Relación Resultado

Page 24: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Peer to Peer

(A0, D2, H0)

Esquema Interno Local: definición interna de los data en cada nodo.

Esquema Conceptual Global: modela la información contenida en una colección de BD.

Esquema Conceptual Local: organización lógica de la data local.

Esquema Externo: vista a los usuarios de los datos.

Page 25: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Peer to Peer

Esquema deFragmentación

EsquemaGlobal

VistaExterna

VistaExterna

Esquema deAsignación

Vista ConceptualLocal 1

Vista ConceptualLocal n

Vista InternaLocal 1

Vista InternaLocal n

Usuarios

Esquema Externo

EsquemaConceptual

Global

EsquemasConceptuales

Locales

EsquemasInternos Locales

Page 26: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Multi-Base de Datos

(A2, Dx, Hy)

La principal diferencia entre una arquitectura peer to peer (arquitectura de BDD) con una arquitectura de multi base de datos es la definición de un esquema global.

BDD -> El Esquema Conceptual Global define la vista conceptual de toda la BD.

Multi-BD -> El Esquema Conceptual Global representa la colección de BD locales que cada SMBD local quiera compartir.

Page 27: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Multi-Base de Datos

Arquitectura de Multi Bases de Datos con un Esquema Conceptual Global

VEG1 VEG2 VEG3

ECGVEL11 VEL12 VEL13 VELn1 VELn2 VELnm

ECL1 ECLn

EIL1 EILn

...

...

Page 28: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Multi-Base de Datos

Arquitectura de Multi Bases de Datos sin un Esquema Conceptual Global

VE1 VE2 VE3

ECL1 ECLn

EIL1 EILn

ECL2

EIL2

Capa de Multi BDCapa de Sistemas Locales

Page 29: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Arquitectura Multi-Base de Datos

BD Federadas

No usan un Esquema Conceptual Global sino que cada SMBD define un esquema export el cual indica cual es la data que va a compartir con los otros SMBD.

Cada aplicación que accede a la BD Federada define un esquema import (es como una vista externa global)

En Conclusión:BDD -> Existen verdaderos SMBDs cada uno manejando una BD diferenteMBD -> Provee una capa de software que corre sobre un SMBD individual que le provee al usuario acceder a varias BD.

Page 30: Arquitecturas de las BDD Lic. Bárbara da Silva Sistemas de Bases de Datos Distribuidas - UCV.

Tarea

1. Relacionar los conceptos presentados con los SMBD Comerciales.

2. ¿En que arquitectura ubican los SMBD Comerciales?