domingo, 5 de mayo de 2013

ARQUITECTURA DE BASE DE DATOS


Ventajas de los sistemas actuales

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

ARQUITECTURA CENTRALIZADA
Sistemas con un único servidor que se encarga de todas lastareas (terminales brutas)
ARQUITECTURA  CLIENTE-SERVIDOR
v  De la arquitectura centralizada a la arquitectura
   Cliente-Servidor
v  Mejoras en los equipos del lado del cliente:
Memoria
Procesador
Disco
Tarjeta de Video (Soporte de las GUIS del sistema)


DISTINCIÓN ENTRE  EL CLIENTE  Y  EL SERVIDOR





El Cliente:
manejo de la interfaz grafica, entradas, reportes,algunas validaciones, notificaciones, etc. (la parte visible alusuario). Otras formas de cliente: Hojas de calculo, paquetes estadísticos, etc. El Servidor: Manejo de las transacciones, procesamiento, validaciones de integridad, control de concurrencia, etc. Posibles arquitecturas: Servidor de Transacciones y Servido de Datos
La Interfaz (Api): Mecanismo de comunicación entre el cliente y el servidor (JDBC, ODBC)
SERVIDOR DE TRANSACCIONES
v  Los clientes envían peticiones (SQL), el servidor las resuelve y retorna el resultado al cliente. Componentes:
v  Procesos servidor: Proceso o hilo que atiende las peticiones del usuario
v  Gestor de bloqueos: Concesión de bloqueos y detección de Interbloqueos
v  Proceso escritor: Volcado a disco de bloques en memoria Principal
v  Escritor de registros: Escritura del registro histórico Proceso de puntos de revisión
v  Monitor de Procesos: Revisión y recuperación de otros procesos




SERVIDOR DE DATOS
v  Útiles en BDOO
v  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

ARQUITECTURAS  PARALELAS
v  Solución al problema de transacciones masivas
v  Paralelismo a nivel de disco (I/O) y de procesador
v  Medidas del rendimiento en:
v  Productividad (Throughput): #Tareas/U.Tiempo
v  Tiempo de Respuesta: T para una tarea

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

INCONVENIENTES  CON  EL PARALELISMO
v  Costo de Inicio: Tiempo para iniciar un proceso.
v  Interferencia: Cuellos de botella para acceder a los recursos Compartidos
v  Sesgo: La partición de las tareas en procesos paralelos no siempre es uniforme

ESQUEMA CON MEMORIA COMPARTIDA


Comunicación a través de escrituras en memoria, Límite del numero de procesadores por el canal de comunicación

ESQUEMA CON DISCO COMPARTIDO



  Creación de Clúster  Aumento de la redundancia
   (tolerancia a fallos)
v  Cuello de botella el acceso a los discos


ESQUEMA SIN COMPARTIMENTO



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

ESQUEMA  JERARQUICO




v  Combinación de las anteriores.
v  Obtener las ventajas de cada esquema
v  Memoria virtual distribuida
Bases de Datos Distribuidas
v  Nodos (Emplazamiento) distribuidos geográficamente
v  Administración independiente (Autónoma) de cada nodo
v  Canales de comunicación mas lentos
v  Utilización de transacciones globales, locales y remotas
v  Sistemas distribuidos heterogéneos

VENTAJAS
v  Compartimento de Datos: Los usuarios de cada nodo pueden acceder a los datos de otros nodos (transacciones globales)
v  Autonomía: La administración de cada nodo es local (independiente de los otros) distribuyendo así la carga del
DBA
v  Disponibilidad: La existencia de replicas permite que la caída de un nodo no implique la caída total del sistema ( se aumenta en complejidad de recuperación pero se gana en disponibilidad del sistema)


DESVENTAJAS
v  Complejidad en la coordinación de la distribución de los datos
v  Costos en el desarrollo de software
v  Aumento en la probabilidad de errores
v  Mayor sobrecarga de procesamiento







No hay comentarios:

Publicar un comentario