You are on page 1of 20

AO DE LA INVERSION PARA EL DESARROLLO RURAL Y LA SEGURIDAD ALIMENTARIA

UNIVERSIDAD SAN PEDRO

FACULTAD DE INGENIERA ESC. DE ING. INFORMTICA Y DE SISTEMAS CICLO V


ASIGNATURA DE TEMA DOCENTE INTEGRANTES: CORREA MARTINEZ ANGEL. GARCIA GARCIA IRVIN. CASTILLO SILUPU EDY. : BASE DE DATOS II. : BASE DE DATOS DISTRIBUIDAS. : FREDY RIVERA MONTERO.

SULLANA PER JUNIO DEL 2013

Dedicatoria El presente trabajo est dedicado a Dios, quien ilumina mi existir; a mi docente gua, por su ardua labor de facilitador en nuestra futura profesin; y a la juventud de informticos, promesa presente y futura para lograr un futuro mejor.

BASE DE DATOS DISTRIBUIDAS


RESUMEN En este trabajo de investigacin aprenderemos el funcionamiento, as como las ventajas y desventajas del uso de bases de datos distribuidas. Esta investigacin se realizara con la ayuda de diferentes fuentes de navegacin en internet, resaltando los puntos importantes y necesarios para su ejecucin. 1. INTRODUCCION Una Base de Datos Distribuida (BDD) es una coleccin de datos distribuidos en diferentes nodos de una red de computadoras. Cada sitio de la red es autnomo, puede ejecutar aplicaciones locales y al menos una aplicacin global, lo cual requiere el acceso a datos, ubicados en varios sitios, usando un subsistema de comunicacin [Ceri, 1984]. Para el diseo de BDDs se han definido dos grandes estrategias [Ceri, 1987]: el enfoque TopDown y el Bottom-Up. En el enfoque Top-Down se comienza diseando el esquema global, luego se concibe la fragmentacin de la BD y la localizacin de los fragmentos en los sitios. Se completa ejecutando, en cada sitio, el diseo fsico de los datos. Por otro lado el enfoque Bottom-Up se basa en la integracin de esquemas ya creados en un esquema global a partir de las BD existentes. Los Sistemas de Bases de Datos Distribuidas representan ms naturalmente la estructura geogrficamente descentralizada de una organizacin, aumentan la disponibilidad de los datos, reducen el trfico de comunicacin y es justificable, adems, por el abaratamiento de los costos en el equipamiento y la infraestructura de comunicaciones de las redes de computadoras. El diseo de las Bases de Datos Distribuidas posee las fases del diseo centralizado y cuenta, adems, con dos nuevos problemas que caracterizan el proceso de distribucin de datos, e incluyen la determinacin de: cmo dividir la base de datos en componentes para localizarlos en diferentes sitios, qu cantidad de datos debe ser replicados y cmo deben los fragmentos replicados ser localizados.Existen varias definiciones sobre qu es un sistema distribuido pero hay divergencias entre ellas, para nuestros propsitos es suficiente expresar que un sistema distribuido es una coleccin de computadoras independientes interconectadas entre s que aparecen ante los usuarios del sistema como una nica computadora [zsu, 1991].

2. OBJETIVOS Los objetivos de este curso de bases de datos distribuidos son:

El reconocimiento de las bases de datos distribuidas. La aplicacin de estas de acuerdo a sus ventajas ofrecidas. El uso correcto para no caer en las limitaciones que son parte de sus desventajas. Entender las arquitecturas de base de datos distribuida.

3. MARCO CONCEPTUAL VENTAJAS ORGANIZATIVAS: 1. Adaptacin a la organizacin de la institucin (unin de compaas/descentralizacin), respondiendo a cambios 2. Almacenar los datos donde son generados y/o usados, la mayor parte locales 3. Proporcionar autonoma local, controlndose desde cada nodo. Poltica general contra poltica local

ECONMICAS: 1. Costes de comunicacin y de creacin de pequeos sistema TCNICAS: 1. vez. 2. 3. 4. 5. Fiabilidad/disponibilidad, en un determinado momento / intervalo. Varios sitios, duplicaciones, evitan fallos Modularidad Mejora del rendimiento, BD ms pequeas, operaciones de menor volumen Crecimiento incremental, aadiendo poder de procesamiento y almacenamiento Flexibilidad, acceso desde distintos lugares y por distintas personas a la

DESVENTAJAS Complejidad del sistema, desarrollo de software ms costoso, problemas de sincronizacin, dificultad para conocer la correccin de los algoritmos paralelos, deteccin de cadas de nodos Dependencia de la red de comunicaciones, sobrecarga de procesamiento de mensajes Dificultad de diseo, fases adicionales Poca madurez de los productos comerciales, orientados a replicacin Funciones de administracin compleja, sincronizacin y coordinacin Dificultad de cambio, inexistencia de metodologas Personal especializado

SISTEMA DE GESTIN DE BASE DE DATOS DISTRIBUIDA Un sistema de gestin de bases de datos distribuidas (SGBDD) es un Sistema de Gestin de bases de datos que gestiona la BD distribuida Funcionalidades adicionales de un SGBDD

Accede a sitios remotos y transmite consultas y datos a travs de varios sitios mediante una red de comunicacin. Almacena el esquema de distribucin y replicacin de los datos en el catlogo del sistema. Establece las estrategias de ejecucin de las consultas y las transacciones que acceden a los datos en ms de un sitio. Decide sobre cual copia de los datos replicados acceder. Mantiene la consistencia de las copias de los datos replicados. Realiza la recuperacin ante los fallos. AMBIENTES DE BASES DE DATOS DISTRIBUIDAS

Las BDD pueden ser: Homogneas: Todos los sitios tienen el mismo SGBD, son conscientes de la existencia de los dems sitios y cooperan en el procesamiento de las solicitudes. Los sitios locales mantienen un mismo esquema y SGBD. Heterogneas: Cada sitio puede tener un SGBD distinto as como esquemas diferentes. Puede que algunos sitios no conozcan a otros. Puede que solo ofrezcan facilidades limitadas para la cooperacin en el procesamiento de transacciones.

El medio ambiente tpico de un SMBDD consiste de un conjunto de sitios o nodos los cuales tiene un sistema de procesamiento de datos completo que incluye una base de datos local, un sistema de manejo de bases de datos y facilidades de comunicaciones. Si los diferentes sitios pueden estar geogrficamente dispersos, entonces, ellos estn interconectados por una red de tipo WAN. Por otro lado, si los sitios estn localizados en diferentes edificios o departamentos de una misma organizacin pero geogrficamente en la misma ubicacin, entonces, estn conectados por una red local (LAN).

1.- Ambientes con mltiples procesadores: Desde el punto de vista de las bases de datos, conceptualmente existen tres tipos de ambientes que se integran con mltiples procesadores: 1.1. Arquitecturas de memoria compartida. Consisten de diversos procesadores los cuales accesan una misma memoria y un misma unidad de almacenamiento (uno o varios discos). Algunos ejemplos de este tipo son las computadoras SequentEncore y los mainframes IBM4090 y Bull DPS8 (Figura 1.5).

1.2. Arquitecturas de disco compartido. Consiste de diversos procesadores cada uno de ellos con su memoria local pero compartiendo una misma unidad de almacenamiento (uno o varios discos). Ejemplos de estas arquitecturas son los cluster de Digital, y los modelos IMS/VS Data Sharing de IBM (Figura 1.6).

1.3. Arquitecturas nada compartido. Consiste de diversos procesadores cada uno con su propia memoria y su propia unidad de almacenamiento. Aqu se tienen los clusters de estaciones de trabajo, la computadoras Intel Paragon, NCR 3600 y 3700 e IBM SP2 (Figura 1.7).

2.- Aplicaciones: Los ambientes en los que se encuentra con mayor frecuencia el uso de las bases de datos distribuidas son:

Cualquier organizacin que tiene una estructura descentralizada. Casos tpicos de lo anterior son: organismos gubernamentales y/o de servicio pblico. La industria de la manufactura, particularmente, aquella con plantas mltiples. Por ejemplo, la industria automotriz. Aplicaciones de control y comando militar. Lneas de transportacin area. Cadenas hoteleras. Servicios bancarios y financieros.

CARACTERISTICAS DE LAS BASE DE DATOS DISTRIBUIDAS


Los datos deben estar fsicamente en ms de un ordenador (distintas sedes) Las sedes deben estar interconectadas mediante una red. (Cada sede es un nodo de la red.) Los datos han de estar lgicamente integrados (recuperacin y actualizacin) tanto en local como remoto (esquema lgico global y nico) En una nica operacin se puede acceder (recuperar o actualizar) datos que se encuentran en ms de una sede (acceso a datos locales o remotos) Todas las acciones que necesiten realizarse sobre ms de una sede sern transparentes al usuario (transparencia de distribucin para el usuario PROBLEMAS FUNDAMENTALES A RESOLVER EN LAS BASES DE DATOS DISTRIBUIDAS

Diseo de bases de datos distribuidas Procesamiento y optimizacin de consultas

Manejo de transacciones y control de concurrencia


ETAPAS DEL DISEO

La etapa diferenciadora entre el diseo de una base de datos centralizada y una base de datos distribuidos es el "Diseo de la distribucin" que consta de dos actividades: Fragmentacin: Decidir "como" dividimos la BD y en "que" partes. Asignacin: Decidir "donde" ubicamos cada parte, as como si tendremos replicacin de datos. Aspectos a considerar en el diseo de una BD distribuida

Fragmentacin: Una relacin puede ser dividida en un nmero de sub-relaciones, denominadas fragmentos, los cuales son entonces distribuidas Asignacin: cada fragmento debe ser almacenado en un sitio en base a una distribucin ptima. Replicacin: El SGBDD puede mantener una copia de un fragmento en diferentes sitio

FRAGMENTACIN El problema de fragmentacin se refiere al particionamiento de la informacin para distribuir cada parte a los diferentes sitios de la red Objetivos de la fragmentacin El objetivo de la fragmentacin consiste en dividir la relacin en un conjunto de relaciones ms pequeas tal que algunas de las aplicaciones de usuario slo hagan uso de un fragmento. Sobre este marco, una fragmentacin ptima es aquella que produce un esquema de divisin que minimiza el tiempo de ejecucin de las aplicaciones que emplean esos fragmentos. La unidad de fragmentacin ideal no es la tabla sino una subdivisin de sta. Esto es debido a:

Las aplicaciones usan vistas definidas sobre varias relaciones, es decir, se forman a partir de "trozos" de varias tablas. Si conseguimos que cada una de las vistas est definida sobre subtablas locales (o en su defecto lo mas "cerca" posible) a cada aplicacin, es de esperar un incremento en el rendimiento. Si mltiples vistas de diferentes aplicaciones estn definidas sobre una tabla no fragmentada, se tiene : Si la tabla no est replicada entonces se produce generacin de trfico por accesos remotos. Si la tabla est replicada en todos o algunos de los sitios donde residen cada una de las aplicaciones entonces la generacin de trfico innecesario es producida por la necesidad de la actualizacin de las copias.

Ventajas Al descomponer una relacin en fragmentos (unidades de distribucin) :

Permitimos el procesamiento concurrente de transacciones ya que no se bloquean tablas enteras sino subtablas, por lo que dos consultas pueden acceder a la misma tabla a fragmentos distintos. Permitimos la paralelizacin de consultas al poder descomponerlas en subconsultas, cada una de la cuales trabajar con un fragmento diferente incrementndose as el rendimiento. Desventajas

Degradacin del rendimiento en vistas definidas sobre varios fragmentos ubicados en sitios distintos (es necesario realizar operaciones con esos trozos lo cual es costoso) El control semntico se dificulta y el rendimiento se degrada debido que la verificacin de restricciones de integridad (claves ajenas, uniques, etc) implican buscar fragmentos en mltiples localizaciones. Por lo tanto divisin y ubicacin de los fragmentos no es trivial. Tipos de fragmentacin de datos: Existen tres tipos de fragmentacin: Fragmentacin horizontal Fragmentacin vertical Fragmentacin hbrida Para que una la fragmentacin de una relacin sea correcta debe satisfacer las siguientes condiciones:

Condicin de completitud. La descomposicin de una relacin R en los fragmentos R1, R2,..., Rn es completa si y solamente si cada elemento de datos en R se encuentra en alguno de los fragmentos Ri. Condicin de Reconstruccin. La descomposicin de una relacin R en los fragmentos R1, R2,..., Rn es completa si y solamente si cada elemento de datos en R se encuentra en alguno de los fragmentos Ri. Condicin de fragmentos disjuntos. Si la relacin R se descompone en los fragmentos R1, R2,..., Rn, y el dato di est en Rj, entonces, no debe estar en ningn otro fragmento Rk (k?j). Fragmentacin horizontal primaria Antes de presentar un algoritmo formal que lleve a cabo la fragmentacin horizontal, intentaremos explicar de manera intuitiva los procesos de fragmentacin horizontal primaria y derivada. La fragmentacin horizontal primaria se define como una operacin de seleccin de las relaciones propietarias del esquema de la base de datos Ahora definiremos la fragmentacin horizontal ms formalmente. Un fragmento horizontal Ri de una relacin R contiene todas las tuplas de Rque satisfacen un predicado

mintrminomi. Por tanto, dado un conjunto de predicados mintrmino M, existen tantos fragmentos horizontales de la relacin R como predicados mintrmino. Este conjunto de fragmentos horizontales tambin se conocen como conjuntos de fragmentos mintrmino. En los prrafos siguientes se asumir que la definicin de fragmentos horizontales se basa en los predicados mintrmino. Adems, el primer paso para el algoritmo de fragmentacin consiste en establecer un conjunto de predicados con ciertas propiedades. Un aspecto importante de los predicados simples es su complecin, as como su minimalidad. Un conjunto de predicados simples Pr se dice que es completo si y solo si existe una probabilidad idntica de acceder por cada aplicacin a cualquier par de tuplas pertenecientes a cualquier fragmento mintrmino que se define de acuerdo con Pr. Se puede apreciar como la definicin de complecin de un conjunto de predicados simples difiere de la regla de complecin de la fragmentacin. El segundo paso en el proceso de fragmentacin primaria consiste en derivar el conjunto de predicados mintrmino que pueden definirse sobre los predicados del conjunto Pr'. Estos predicados mintrmino establecen los fragmentos candidatos para el proceso de asignacin. El establecimiento de los predicados mintrmino es trivial; la dificultad radica en el tamao del conjunto de predicados mintrmino, que puede ser muy grande (de hecho, exponencial respecto al nmero de predicados simples). En el paso siguiente se presentarn formas de reducir el nmero de predicados mintrmino necesarios para la fragmentacin. Fragmentacin horizontal derivada Una fragmentacin horizontal derivada se define sobre una relacin miembro de acuerdo a una operacin de seleccin especificada sobre su propietaria. Se deben dejar claros dos puntos. Primero, el enlace entre las relaciones propietaria y miembro se define como un equi-yunto. Segundo, un equi-yunto puede desarrollarse a travs de semiyuntos. Este segundo punto es especialmente importante para nuestros propsitos, ya que deseamos fraccionar una relacin miembro segn la fragmentacin de su propietaria, adems es necesario que el fragmento resultante se defina nicamente sobre los atributos de la relacin miembro. Las tres entradas necesarias para desarrollar la fragmentacin horizontal derivada son las siguientes: el conjunto de particiones de la relacin propietaria, la relacin miembro y el conjunto se predicados resultados de aplicar el semi-yunto entre la propietaria y la miembro. El algoritmo de fragmentacin resulta tan trivial que no se ve la necesidad de entrar en detalles. Fragmentacin mixta o hbrida: En muchos casos la fragmentacin vertical u horizontal del esquema de la base de datos no ser suficiente para satisfacer los requisitos de las aplicaciones. Como ya se cit al comienzo de este documento podemos combinar ambas, utilizando por ello la denominada fragmentacin mixta. Cuando al proceso de fragmentacin vertical le sigue una horizontal, es decir, se fragmentan horizontalmente los fragmentos verticales resultantes, se habla de la fragmentacin mixta HV. En el caso contrario, estaremos ante una fragmentacin VH. Una caracterstica comn a ambas es la generacin de rboles que representan la estructura de fragmentacin (vea la figura 8). Considere, por ejemplo, la relacin PROVINC. Recordar que se le aplic una fragmentacin horizontal de acuerdo al valor del atributo CCODZONA resultando cuatro fragmentos horizontales. Podramos pensar en aplicarle una nueva fragmentacin de carcter vertical. Entonces resultaran cuatro fragmentos horizontales divididos, por ejemplo, en dos fragmentos verticales. En este caso el nmero total de fragmentos ascendera, lgicamente, a ocho.

4. Procedimientos

LAS 12 REGLAS DE UN SGBDD


La regla cero conduce a las restantes 12 reglas. Todas las reglas no son independientes entre s, ni tienen igual importancia pero son tiles para entender la tecnologa distribuida.

1.

Autonoma Local: Los sitios de un sistema distribuido deben ser autnomos. La autonoma Local Implica:

Propietario local. Administracin local. Responsabilidad local. Integracin local. Representacin local.

2. No dependencia de un sitio central No debe existir un nico sitio, ya que implicara:


Cuello de botella. Vulnerabilidad

3. Operacin contina

Adicin de elementos Actualizacin de versiones

4. Independencia de Localizacin

El usuario desconoce dnde estn fsicamente los datos.

5. Independencia de fragmentacin.

Deseable porque simplifica los programas de los usuarios y sus actividades en la terminal

6. Independencia de rplica La creacin y destruccin de rplicas debe hacerse transparente al usuario. La rplica proporciona: Ventajas:

Mayor Prestacin: los datos son locales. Mayor disponibilidad: los datos son accesibles siempre.

Desventajas:

Hay que propagar las actualizaciones.

7. Procesamiento distribuido de consultas


Los Sistemas relacionales brindan herramientas de consulta muy eficientes. Varias maneras de trasladar los datos

8.- Administracin de transacciones distribuidas. Existen dos aspectos principales en la administracin de transacciones: control de recuperacin y control de la concurrencia.

Ambos aspectos requieren un tratamiento amplio en el ambiente distribuido. Ya que una sola transaccin puede involucrar la ejecucin de cdigo en muchos sitios. Puede involucrar actualizaciones en muchos sitios y se debe de cuidar que la transaccin no caiga en un bloqueo mortal (basado en el bloqueo). Para el control de la recuperacin, es necesario asegurarse que una transaccin dada sea atmica en el ambiente distribuido, el sistema debe por lo tanto asegurarse de que la transaccin sea confirmada o deshecha (se puede utilizar el protocolo de confirmacin de dos fases).

9.- Independencia de hardware. Soporte para un gran nmero de mquinas diferentes. Poder integrar todos los datos de todos estos sistemas y presentar al usuario una imagen del sistema nico. 10. Independencia con respecto al Sistema Operativo El SGBD debe ser multioperativo sin afectar al usuario. 11. Independencia con respecto a la Red

El SGBD debe soportar mltiples redes sin afectar al usuario. 12. Independencia con respecto al SGBD Se pueden manejar distintas copias de SGBD si manejan la misma norma estndar de SQL: Oracle, Informix, Multibase, etc.

COMPONENTES DE UNA BDD BD locales Provee cierto grado de transparencia de distribucin (captulo 3), dado que existe una fuerte relacin entre el desempeo y la necesidad de trabajar como si la BD no estuviera distribuida.

SGBDD Se encarga de llevar a cabo el acceso remoto a la BD a travs de un programa de aplicacin. Provee el medio que interpreta las solicitudes del usuario y lleva acabo las aplicaciones distribuidas.

Red de comunicaciones Provee un control sobre el monitoreo de la BD global entre los diferentes sitios.

Diccionario o directorio global Provee informacin acerca de los datos, control de concurrencia y recuperacin de transacciones.

Ejemplo de una Base de Datos Distribuidas

Ejemplo 1 Considere un banco que tiene tres sucursales, en cada sucursal, un computador controla las terminales de la misma y el sistema de cuentas. Cada computador con su sistema de cuentas local en cada sucursal constituye un "sitio" de la BDD; las computadoras estn conectadas por la red. Durante las operaciones normales, las aplicaciones en las terminales de la sucursal necesitan solo accesar la BD de la misma. Como solo accesan la misma red local, se les llaman aplicaciones locales. Desde el punto de vista tecnolgico, aparentemente lo importante es la existencia de algunas transacciones que accesen informacin en ms de una sucursal. Estas

transacciones son llamadas transacciones globales o transacciones distribuidas. La existencia de transacciones globales ser considerada como una caracterstica que nos ayude a discriminar entre las BDD y un conjunto de base de datos locales. Una tpica transaccin global sera una transferencia de fondos de una sucursal a otra. Esta aplicacin requiere de actualizar datos en dos diferentes sucursales y asegurarse de la real actualizacin en ambos sitios o en ninguno. Asegurar el buen funcionamiento de aplicaciones globales es una tarea difcil. En el ejemplo 1 las computadoras estaban geogrficamente en diferentes puntos; tambin, BDD pueden ser construidas en una red local.

Ejemplo 2 Considere el mismo banco del ejemplo previo, con las mismas aplicaciones, pero con un sistema configurado como en la figura. Los mismos procesadores con sus bases de datos han sido movidos de sus sucursales a un edificio comn y ahora estn conectados entre s en un radio con un amplio ancho de banda. Las terminales de las sucursales estn conectadas a sus respectivos computadores por lneas telefnicas. Cada procesador y su base de datos constituyen un sitio de la red local.

Vemos que la estructura fsica de las conexiones a cambiado con respecto al ejemplo 1, pero las caractersticas de la arquitectura son las mismas. En particular, los mismos computadores ejecutan las mismas aplicaciones, accesando las mismas bases de datos. La transaccin local del ejemplo anterior an es local, no por el hecho geogrfico, si no por el hecho de que solo un computador por bases de datos est envuelto en el proceso. Si hay aplicaciones globales, es conveniente considerar este ejemplo como BDD, ya que muchas caractersticas que el ejemplo previo present son an vlidas. A pesar de todo, el hecho de que la BDD sea implementada en una red local o en una grficamente distribuida, cambian muchas veces el tipo de solucin que se busca para un problema.

5.-Conclusiones
Las bases de datos distribuidas son cada vez ms usadas por las empresas y suponen una ventaja competitiva frente a los sistemas centralizados, siempre y cuando la empresa en cuestin tenga necesidad de usar una base de datos de este tipo. Lo ms habitual es disponer de varias sedes y tener que manejar informacin comn, para lo cual las bases de datos distribuidas son especialmente tiles. Considere los dos componentes bsicos de los sistemas de bases de datos distribuidos (la propia base de datos y la red de ordenadores) y piense en la situacin actual de la informtica. Si las bases de datos es una de las ramas ms antiguas e importantes de la informtica, muchas empresas compran ordenadores para dedicarlos exclusivamente a la gestin de sus datos (pienso que, prcticamente, en el 100% de las PYMES se produce este hecho) y, como parece ser que se ha asumido por parte de todo tipo de empresarios los beneficios que acarrea la conexin de los ordenadores, la instalacin de una red, se puede concluir diciendo que el terreno ya est abonado para su extensin comercial. Slo falta que determinadas multinacionales decidan apostar ms fuerte por este enfoque a travs de sus famosos sistemas gestores de bases de datos y que se produzca la consolidacin de la resolucin de los problemas que el enfoque distribuido acarrea.

6.-Referencia bibliogrfica
http://html.rincondelvago.com/bases-de-datos-distribuidas_1.html

http://cmapspublic.ihmc.us/rid=1161027353218_44637313_464/2.pdf http://www.monografias.com/trabajos82/base-datos-distribuidas/base-datosdistribuidas2.shtml

You might also like