You are on page 1of 2

Base de Datos Paralelas

24MAR
Bases de Datos Paralelas. De forma general el concepto de paralelismo en las bases de datos lo podramos definir como la particin de la base de datos (normalmente a nivel de relaciones) para poder procesar de forma paralela en distintos discos y con distintos procesadores una sola operacin sobre la base de datos. El paralelismo se usa para mejorar la velocidad en la ejecucin de consultas. Adems el paralelismo se usa para proporcionar dimensionabilidad ya que la creciente carga de trabajo se trata sin incrementar el tiempo de respuesta pero incrementando el grado de paralelismo. Existen cuatro arquitecturas de sistemas paralelos: De memoria compartida: Todos los procesadores comparten una memoria comn. De discos compartidos: Todos los procesadores comparten un conjunto de discos comn. Sin compartimiento: Los procesadores no comparten ni memoria ni disco. Jerrquica: Este modelo es un hbrido de las arquitecturas anteriores.

1. SGBD paralelo Un SGBD que se ejecuta sobre mltiples procesadores y discos que han sido diseados para ejecutar operaciones en paralelo, cuando sea posible, con el propsito de mejorar el rendimiento. Los sistemas paralelos mejoran la velocidad de procesamiento y de E/S mediante la utilizacin 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 nmero 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 travs de una red de interconexin 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 nmero 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 enve. Un sistema que procese un gran nmero de pequeas transacciones puede mejorar su productividad realizando muchas transacciones en paralelo. Un sistema que procese transacciones ms largas puede mejorar tanto su productividad como sus tiempos de respuesta realizando en paralelo cada una de las subtareas de cada transaccin. 2. Paralelismo de E/S

De forma general podemos hablar de paralelismo de E/S cuando hablamos de divisiones en las relaciones entre varios discos para reducir el tiempo necesario de su recuperacin. Normalmente la divisin ms comn en un entorno de bases de datos paralelas es la divisin horizontal. En este tipo de divisin las tuplas de cada relacin se dividen entre varios discos de modo que cada tupla resida en un disco distinto. Suponiendo que tenemos n discos (D0,D1,,Dn) entre los que se van a dividir los datos, existen varias estrategias de divisin: Turno rotatorio: Se recorre la relacin y la i-sima tupla se enva al disco Di quedando una distribucin homognea de las tuplas en los discos. Divisin por asociacin: Se escogen varios atributos del esquema de la relacin y se designan como atributos de divisin. Se escoge una funcin de asociacin cuyo rango es {0,1,,n -1}. Cada tupla de la relacin original se asocia en trminos de los atributos de divisin. Si la funcin de asociacin devuelve i, la tupla de ubica en el disco DI. Divisin por rangos: Se distribuye rangos contiguos de valores de los atributos a cada disco. Para ello se escoge un atributo de divisin, AD, como vector de divisin y la relacin se divide de la siguiente manera: o Sea [vo, v1, , vn-2] el vector de divisin con i<j y vi<vj. Considrese una tupla t tal que t[A]=x. o Si x< vo entonces t se ubica en el disco Do. o Si xvn-2 entonces t se ubica en el disco Dn-1. o Si vix < vi+1 entonces t se ubica en el disco DI+1

You might also like