sábado, 21 de abril de 2007

BASE DE DATOS PARALELAS

INTRODUCCIÓN

Un sistema de gestión de bases de datos (SGBD o DBMS ‘Database Management System”) consiste en una colección de datos interrelacionados y un conjunto de programas que permiten a los usuarios acceder y modificar dichos datos. La colección de datos se denomina base de datos.

La arquitectura de un sistema de base de datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta el sistema de base de datos. En la arquitectura de un sistema de base de datos se reflejan aspectos como la conexión en red:



  • Base de datos Distribuidas
  • Base de datos Paralelas

DEFINICIÓN

SGBD paralelo: Un SGBD que se ejecuta sobre múltiples procesadores y discos que han sido diseñados para ejecutar operaciones en paralelo, cuando sea posible, con el propósito de mejorar el rendimiento.

Los sistemas paralelos mejoran la velocidad de procesamiento y de E/S mediante la utilización de UCP y discos en paralelo. La fuerza que ha impulsado a los sistemas paralelos de bases de datos ha sido la demanda de aplicaciones que han de manejar bases de datos extremadamente grandes (del orden de terabytes, esto es, 1012 bytes) o que tienen que procesar un número enorme de transacciones por segundo (del orden de miles de transacciones por segundo).

Los sistemas paralelos de base de datos constan de varios procesadores y varios discos conectados a través de una red de interconexión de alta velocidad. Para medir el rendimiento de los sistemas de base de datos existen 2 medidas principales:

  1. La productividad (throughput) que se entiende como el número de tareas que pueden completarse en un intervalo de tiempo determinado.
  2. El tiempo de respuesta (response time) que es la cantidad de tiempo que necesita para completar una única tarea a partir del momento en que se envíe. Un sistema que procese un gran número de pequeñas transacciones puede mejorar su productividad realizando muchas transacciones en paralelo. Un sistema que procese transacciones más largas puede mejorar tanto su productividad como sus tiempos de respuesta realizando en paralelo cada una de las subtareas de cada transacción.

Modelos de Arquitectura

    • Memoria compartida. Todos los procesadores comparten una memoria común.
    • Disco compartido. Todos los procesadores comparten un disco común.
    • Sin compartimiento. Los procesadores no comparten ni memoria ni disco.
    • Jerárquico. Es un híbrido de las anteriores.

    El objetivo del paralelismo en los sistemas de bases de datos suele ser asegurar que la ejecución del sistema continuará realizándose a una velocidad aceptable, incluso en el caso de que aumente el tamaño de la base de datos o el número de transacciones (ampliabilidad).


    Factores negativos de Paralelismo

    Estos pueden atenuar tanto la ganancia de velocidad como la ampliabilidad:

    • Costes de inicio. El inicio de un único proceso lleva asociado un coste de inicio.
    • Interferencia. Como los procesos que se ejecutan en un sistema paralelo acceden con
      frecuencia a recursos compartidos, pueden sufrir un cierto retardo como consecuencia de la esta.
    • Sesgo. Al dividir cada tarea en un cierto número de pasos paralelos se reduce el tamaño del paso medio. Normalmente es difícil dividir una tarea en partes exactamente iguales, entonces se dice que la forma de distribución de los tamaños es sesgada.

    Referencias

    http://alarcos.inf-cr.uclm.es/doc/bbddavanzadas/RENDIMIENTO.pdf

    http://macine.epublish.cl/tesis/index-3_3_.html

    http://atlas.puj.edu.co/~caolarte/puj/cursos/cc100/files/clases/BDParalelas.pdf

    No hay comentarios: