You are on page 1of 22

Arquitecturas de Bases de Datos

Carlos A. Olarte (carlosolarte@puj.edu.co)


BDII

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Contenido

1 Introducción

2 Arquitectura Centralizada

3 Arquitectura Cliente-Servidor

4 Arquitecturas Paralelas

5 Bases de Datos Distribuidas

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Introducción

Evolución de los sistemas de cómputo


Ventajas de los sistemas actuales
Relación directa entre el sistema de computo y la arquitectura
de la base de datos
Arquitecturas Disponibles:
Centralizada
Cliente-Servidor
Paralelas
Distribuidas

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Arquitectura Centralizada

Sistemas con un único servidor que se encarga de todas las


tareas (terminales brutas)

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Arquitectura Cliente-Servidor

De la arquitectura centralizada a la arquitectura


Cliente-Servidor
Mejoras en los equipos del lado del cliente:
Memoria
Procesador
Disco
Tarjeta de Vı́deo (Soporte de las GUIs del sistema)

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Distinción entre el cliente y el servidor

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Continuación

El Cliente: manejo de la interfaz gráfica, entradas, reportes,


algunas validaciones, notificaciones, etc (la parte visible al
usuario). Otras formas de cliente: Hojas de cálculo, paquetes
estadı́sticos, etc
El Servidor: Manejo de las transacciones, procesamiento,
validaciones de integridad, control de concurrencia, etc.
Posibles arquitecturas: Servidor de Transacciones y Servidor
de Datos
La Interfaz (Api): Mecanismo de comunicación entre el cliente
y el servidor (JDBC, ODBC)

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Servidor de Transacciones

Los clientes envı́an peticiones (SQL), el servidor las resuelve y


retorna el resultado al cliente. Componentes:
Procesos servidor: Proceso o hilo que atiende las peticiones
del usuario
Gestor de bloqueos: Concesión de bloqueos y detección de
interbloqueos
Proceso escritor: Volcado a disco de bloques en memoria
principal
Escritor de registros: Escritura del registro histórico
Proceso de puntos de revisión
Monitor de Procesos: Revisión y recuperación de otros
procesos

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Continuación

1
1
Tomado de Oracle9i Database Concepts. Release 2 (9.2)
Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos
Servidor de Datos

Utiles en BDOO
Los datos son enviados a los clientes y este puede realizar
procesamiento de los mismos y enviarlos al servidor
Se requiere un buen canal de comunicación entre los nodos

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Arquitecturas Paralelas

Solución al problema de transacciones masivas


Paralelismo a nivel de disco (I/O) y de procesador
Medidas del rendimiento en:
Productividad (Throughput): #Tareas/U.Tiempo
Tiempo de Respuesta: ∆T para una tarea

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


continuación

Niveles de Paralelismo
Grano Grueso: Cada transacción en un procesador diferente
Grano Fino: Las operaciones de cada transacción se pueden
distribuir en varios procesadores
Ganancia o escalamiento:
Velocidad: A mayor sea la cantidad de recursos, mayor es la
velocidad del sistema
Ampliabilidad: Tareas más largas en menos tiempo. Puede ser
medida en:
Lotes: Base de datos mas grande (mayor número de registros),
las transacciones duran mas tiempo
Transacciones: Aumenta el número de transacciones que llegan
a la base de datos y crece el tamaño de la misma

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Continuación

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Inconvenientes con el Paralelismo

Costo de Inicio: Tiempo para iniciar un proceso.


Interferencia: Cuellos de botella para acceder a los recursos
compartidos
Sesgo: La partición de las tareas en procesos paralelos no
siempre es uniforme

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Comunicación de los nodos

Bus Malla

Hipercubo Estrella

Costos?, tolerancia ante fallos?, velocidad?

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Esquema con Memoria Compartida

Comunicación a través de
escrituras en memoria
Lı́mite del número de
procesadores por el canal de
comunicación

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Esquema con Disco Compartido

Creación de Cluster
Aumento de la redundancia
(tolerancia a fallos)
Cuello de botella el acceso a los
discos

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Esquema sin Compartimento

Alta ampliabilidad
Deficiencia en la comunicación de datos entre nodos

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Esquema Jerárquico

Combinación de las anteriores.


Obtener las ventajas de cada esquema
Memoria virtual distribuida

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Bases de Datos Distribuidas

Nodos (Emplazamiento) distribuidos geográficamente


Administración independiente (Autónoma) de cada nodo
Canales de comunicación mas lentos
Utilización de transacciones globales, locales y remotas
Sistemas distribuidos heterogéneos

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Ventajas

Compartimento de Datos: Los usuarios de cada nodo pueden


acceder a los datos de otros nodos (transacciones globales)
Autonomı́a: La administración de cada nodo es local
(independiente de los otros) distribuyendo ası́ la carga del
DBA
Disponibilidad: La existencia de réplicas permite que la caida
de un nodo no implique la caida total del sistema ( se
aumenta en complejidad de recuperación pero se gana en
disponibilidad del sistema)

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos


Desventajas

Complejidad en la coordinación de la distribución de los datos


Costos en el desarrollo de software
Aumento en la probabilidad de errores
Mayor sobrecarga de procesamiento

Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Arquitecturas de Bases de Datos

You might also like