You are on page 1of 5

BASES DE DATOS PARALELAS - ENSAYO

CARLOS ANDRS ACOSTA 20072020001 JOSE ALFREDO ROJAS 20072020078 DANIELA MIRANDA RESTREPO - 20081020111

BASES DE DATOS 2 PROFESORA ALBA CONSUELO NIETO

UNIVERSIDAD DISTRITAL FRANCISCO JOS DE CALDAS FACULTAD DE INGENIERA INGENIERA DE SISTEMAS BOGOT D.C. 2013

BASES DE DATOS PARALELAS Es bien sabido que una base de datos es una coleccin o conjunto de datos interrelacionados y que para acceder, modificar o administrar estos datos se recurre a los sistemas de gestin. Dependiendo del sistema informtico sobre el cual se ejecuta el sistema gestor de bases de datos, se puede establecer la arquitectura de la misma, examinando sobre todo la arquitectura del computador, como lo son la conexin de red, la distribucin y el paralelismo. Los sistemas paralelos mejoran la velocidad de procesamiento y de E/S mediante la utilizacin de UCP y discos en paralelo.[1] Por lo que se hace necesaria la profundizacin en el estudio de las bases de datos paralelas, que haban sido descartadas pero que ahora representan mejoras en el funcionamiento de las aplicaciones y el manejo de la informacin en la actualidad. El paralelismo en este contexto puede definirse 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.[2] Con esto lo que se logra bsicamente es una mejora en la velocidad, y esto representa un beneficio debido a las tendencias actuales, tales como el aumento de aplicaciones en la nube y la creciente cantidad de visitantes que acceden por medio de estas aplicaciones a las bases de datos exigiendo velocidad transaccional, otra tendencia es el aumento en el volumen de datos que crece con el pasar del tiempo y que no podra ser soportado correctamente por un solo procesador as como la disminucin del costo de las mquinas paralelas y La naturaleza orientada a conjuntos de las consultas de bases de datos [3]. Existen 4 clases de las arquitecturas de los distintos sistemas de bases de datos: La de memoria compartida, cuyos procesadores tienen discos y memoria comn; la de disco compartido, cuyos procesadores tienen memoria independiente y discos en comn; aquella sin compartimiento, cuyos procesadores tienen disco y memoria independientes y la arquitectura jerrquica que viene a ser un hbrido de todas las anteriores las arquitecturas jerrquicas tienen nodos que no comparten entre s ni la memoria ni los discos, pero cada nodo tiene internamente una arquitectura de memoria o de disco compartido[4]. Todas estas arquitecturas poseen ciertas ventajas que pueden ser eficiencia en la comunicacin entre procesadores(memoria compartida), tolerancia ante fallos(disco compartido) e independencia y soporte a gran nmero de procesadores(sin compartimiento); as como presentan algunas de las que cabe resaltar la limitacin en el nmero de procesadores, comunicacin lenta entre ellos y mayor costo de comunicacin y acceso a los discos remotos, respectivamente. Teniendo en cuenta los discos mencionados, sale a flote otro aspecto de las bases de datos denominado paralelismo E/S (Entrada/Salida), que se entiende como la disminucin del tiempo que se requiere para recuperar las relaciones del disco partindose en varios discos. la divisin horizontal es la forma ms comn de divisin de datos en el contexto de bases de datos paralelas, y consiste en que las tuplas de las relaciones son divididas en varios discos, de tal forma que haya una tupla por disco. Para realizar esta divisin existen tres tcnicas, cada una con sus ventajas y desventajas: -Turno rotatorio: Esta estrategia asegura que cada uno de los discos tendr aproximadamente el mismo nmero de tuplas. -Divisin por asociacin:

Esta estrategia designa uno o varios atributos del esquema de relacin como atributos de la divisin. -Divisin por rangos: Esta regla define y distribuye rangos con valores contiguos a cada uno de los discos. Partiendo de estas definiciones generales, se puede establecer un cuadro comparativo en donde se muestran las ventajas y desventajas mencionadas anteriormente enfocadas a la exploracin completa de la relacin, las consultas concretas y por rango. Exploracin completa de la relacin Turno rotatorio Divisin por asociacin Divisin por rangos S S Consulta concreta Consulta por rango

No Se adapta perfectamente si y slo si se adaptan al atributo de divisin. Se adapta perfectamente si y slo si se adaptan al atributo de divisin.

No No

Se adapta perfectamente si y slo si se adaptan al atributo de divisin.

Tabla 1. Cuadro comparativo estrategias de divisin. Si se observa la Tabla 1, la estrategia de divisin por rangos parece ser una estrategia ideal ya que es la que mejor se adapta de las tres a las distintas operaciones de exploracin y/o consulta. Por otro lado, existe el concepto del paralelismo entre consultas que trata con un aspecto muy importante y es el de evitar que dos procesadores no actualicen simultneamente los mismos datos de forma independiente. Cuando un procesador accede a los datos o los actualiza, el sistema de bases de datos debe garantizar que tenga su ltima versin en la memoria intermedia. El problema de asegurar que la versin sea la ltima disponible se denomina problema de coherencia de cache.[5]. Este problema se presenta cuando la arquitectura es de disco compartido, y existe un protocolo para garantizar esa coherencia de cach: 1. Se presenta una transaccin de bloqueo en modo compartido antes de cualquier acceso de lectura o escritura 2. Se traslada la transaccin al disco compartido antes de que libere un bloqueo exclusivo As como existe el paralelismo entre consultas, lo hay en consultas; este paralelismo hace referencia a la consecucin en paralelo de una misma consulta en distintos procesadores y discos. Para lograr este paralelismo, se puede paralelizar las operaciones que forman dicha consulta; esto se puede hacer de dos maneras: El paralelismo entre operaciones y el paralelismo en operaciones. La primera forma se refiere a aumentar la velocidad del procesamiento de las consultas ejecutando en paralelo cada una de las operaciones; la segunda forma por otro lado, hace referencia a aumentar la velocidad del procesamiento

de las consultas ejecutando de forma paralela el procesamiento de cada una de las operaciones de las expresiones de consultas. Ya que las operaciones relacionales trabajan con relaciones que contienen grandes conjuntos de tuplas, las operaciones se pueden paralelizar ejecutndolas sobre subconjuntos diferentes de las relaciones en paralelo [6]. Si a grosso modo se explica el manejo y tratamiento de estas operaciones relacionales, se puede mencionar los criterios de manejo que son la ordenacin y la reunin paralela de tuplas. Existen tambin otras operaciones relacionales, tales como la seleccin, la eliminacin de duplicados, la proyeccin y la agregacin. Todas estas operaciones realizadas en paralelo representan una serie de costes, como los son el coste de inicio de una operacin en varios procesadores, el sesgo en la distribucin de trabajo entre los procesadores, con algunos procesadores con mayor nmero de tuplas que otros [7], la administracin efectiva de los recursos y la construccin de un resultado final. Ahora bien, existen dos formas de paralelismo entre operaciones, el paralelismo de encauzamiento que supone una mayor economa en el procesamiento y el paralelismo independiente que representa al paralelismo en menor grado que el de encauzamiento.

Es evidente que la arquitectura paralela en las bases de datos ha mostrado un gran desarrollo en los ltimos aos (ltimos 20 aos), en los cuales ha intentado solucionar bastantes problemas de ineficiencia y velocidad, por lo que se pueden considerar varias conclusiones. Entre estas conclusiones, se evidencia que las bases de datos han entrado en auge debido al aumento en la cantidad de informacin con el paso de los aos, la disminucin de costos en las mquinas paralelas, la escalabilidad para mejorar el desempeo de la base de datos, su alta disponibilidad y rpida recuperacin ante fallos, as como el aumento de la aceleracin en el procesamiento de tales cantidades de dicha informacin. Profundizando un poco ms en esta arquitectura, tambin se puede concluir que el trmino de paralelismo se evidencia no solo en la arquitectura de mquina (Entrada/Salida) sino tambin entre las consultas para aumentar la productividad, dentro de la consulta misma (para reducir el costo de su ejecucin), el paralelismo en las operaciones relacionales que se realiza de forma natural debido a que estn orientadas a conjuntos y el paralelismo entre operaciones que complementa al paralelismo en operaciones y ambos se pueden usar de manera simultnea en una misma consulta; todos estos tienen un objetivo general que es optimizar el rendimiento del manejo de la base de datos. Es de importancia mencionar que el modelo relacional ha sido un xito debido a la optimizacin de las consultas, sin embargo, en las consultas paralelas la optimizacin de las consultas ha sido ms complicada que en las consultas secuenciales, ya que hay que tener en cuenta factores de coste, sesgo y administracin de recursos. Finalmente, a la hora del diseo de un sistema paralelo hay que tener bastante cuidado ya que un sistema mal diseado puede fallar si alguno de sus componentes dejar de funcionar, por lo que se hace necesario tener en cuenta aspectos importantes de disponibilidad como la capacidad de recuperacin ante fallos de cada disco y procesador, y un comportamiento interactivo de los datos y las operaciones con el fin de que se ejecuten transacciones simultneas sin violar la integridad de la informacin.

BIBLIOGRAFA [1 ]. Silberschatz A., Korth H. F., Sudershan S. Fundamentos de Bases de datos. Mc Graw Hill, 4ta .Edicin, 2002. Capitulo 18., pgina 451. [2]. Portillo J., Valero J., Lpez P., De la Cruz I., Del Fresno M. Rendimiento: Bases de datos Paralelas y Grid. Universidad de Castilla La mancha. 2008., Pgina 3. [3]. Silberschatz A., Korth H. F., Sudershan S. Fundamentos de Bases de datos. Mc Graw Hill, 4ta .Edicin, 2002. [4]. Silberschatz A., Korth H. F., Sudershan S. Fundamentos de Bases de datos. Mc Graw Hill, 4ta .Edicin, 2002. [5]. Portillo J., Valero J., Lpez P., De la Cruz I., Del Fresno M. Rendimiento: Bases de datos Paralelas y Grid. Universidad de Castilla La mancha. 2008. Pgina 5. [6]. Portillo J., Valero J., Lpez P., De la Cruz I., Del Fresno M. Rendimiento: Bases de datos Paralelas y Grid. Universidad de Castilla La mancha. 2008. Pgina 6. [7]. Portillo J., Valero J., Lpez P., De la Cruz I., Del Fresno M. Rendimiento: Bases de datos Paralelas y Grid. Universidad de Castilla La mancha. 2008. Pgina 10. REFERENCIAS http://www.slideshare.net/pineda2/bases-de-datos-paralelas http://prezi.com/q9dhr9djk1cy/bases-de-datos-paralelas-y-bases-de-datos-en-lanube/ http://books.google.com.co/books?id=Ix9JR2LkZSkC&pg=PA101&dq=%22bases+ de+datos+paralelas%22&hl=es&sa=X&ei=EJwfUbDuAoye9QSj4YDoDA&redir_esc =y#v=onepage&q=%22bases%20de%20datos%20paralelas%22&f=false http://atlas.puj.edu.co/~caolarte/puj/cursos/cc100/files/clases/BDParalelas.pdf REFERENCIAS EN INGLS http://telaga.cs.ui.ac.id/~wibowo/publik/PDF/RESOURCE/paralleldb.pdf http://code.google.com/p/shard-query/ http://www.cs.berkeley.edu/~brewer/cs262/5-dewittgray92.pdf

You might also like