Sei sulla pagina 1di 10

Base de Datos Distribuidas

ING. Edgardo Rivera


Univ. Jaime Gustavo Mendoza Vaca

UPDS Gestin 2011

MATERIA: BASE DE DATOS

BASE DE DATOS DISTRIBUIDAS


Una base de datos distribuida (BDD) es un conjunto de mltiples bases de datos lgicamente relacionadas las cuales se encuentran distribuidas en diferentes espacios lgicos (pej. un servidor corriendo 2 maquinas virtuales) e interconectados por una red de comunicaciones. Dichas BDD tienen la capacidad de realizar procesamiento autnomo, esto permite realizar operaciones locales o distribuidas. Un sistema de Bases de Datos Distribuida (SBDD) es un sistema en el cual mltiples sitios de bases de datos estn ligados por un sistema de comu nicaciones de tal forma que, un usuario en cualquier sitio puede acceder los datos en cualquier parte de la red exactamente como si estos fueran accedidos de forma local. Un sistema distribuido de bases de datos se almacena en varias computadoras. Los principales factores que distinguen un SBDD de un sistema centralizado son los siguientes:

Inicio de las bases de datos distribuidas


Originalmente se almacenaba la informacin de manera centralizada, pero con el paso del tiempo las necesidades aumentaron y esto produjo ciertos inconvenientes que no era posible solucionarlos o volverlos eficientes de la forma centralizada. Estos problemas impulsaron la creacin de almacenamiento distribuido, los cuales hoy en da proveen caractersticas indispensables en el m anejo de informacin; es decir, la combinacin de las redes de comunicacin y las bases de datos.

Evolucin
Hay varios factores que han hecho que las bases de datos evolucionen a bases de datos distribuidas. En el mundo de los negocios se ha dado una globa lizacin y a la vez las operaciones de las empresas son cada vez ms descentralizadas geogrficamente. Tambin el poder de las computadoras personales aument y el costo de los Mainframes ya no tena sentido. Adems la necesidad de compartir datos ha hecho que crezca el mercado de las bases de datos distribuidas.

Componente
Hardware involucrado El hardware utilizado no difiere mucho del hardware utilizado en un servidor normal. Al principio se crea que si los componentes de una base de datos eran especializados seran ms eficientes y rpidos, pero se comprob que el decentralizar todo y adoptar un enfoque "nada compartido" ( shared-nothing) resultaba ms barato y eficaz. Por lo que el hardware que compone una base de datos distribuida se reduce a servidores y la red.

Software Sistema Manejador de Base de Datos Distribuida (DDBMS)

Este sistema est formado por las transacciones y los administradores de la base de datos distribuidos. Un DDBMS implica un conjunto de programas que operan en diversas computadoras, estos programas pueden ser subsistemas de un nico DDBMS de un fabricante o podra consistir de una coleccin de programas de diferentes fuentes.
Administrador de transacciones distribuidas (DTM)

Este es un programa que recibe las solicitudes de procesamiento de los programas de consulta o transacciones y las traduce en acciones para los administradores de la base de datos. Los DTM se encargan de coordinar y controlar estas acciones. Este DTM puede ser propietario o desarrollado en casa.
Sistema Manejador de base de datos (DBMS)

Es un programa que procesa cierta porcin de la base de datos distribuida. Se encarga de recuperar y actualizar datos del usuario y generales de acuerdo con los comandos recibidos de los DTM.
Nodo

Un nodo es una computadora que ejecuta un DTM o un DBM o ambos. Un nodo de transaccin ejecuta un DTM y un nodo de base de datos ejecuta un DBM.
Consideraciones importantes Calendarizador distribuido

El calendarizador est encargado de ordenar un conjunto de transacciones u operaciones que se deseen realizar sobre una base de datos. Cualquier orden en el que se decidan hacer este conjunto de operaciones se denomina calendarizacin. Parte del trabajo del calendarizador es realizar estas operaciones de forma que sean serializables y recuperables.
Dos calendarizaciones son serializables (o equivalentes) si
y

Cada operacin de lectura lee valores de los datos que son producidos por la misma operacin de escritura en ambas calendarizaciones (es decir son iguales) La operacin final de escritura en cada elemento de la data es la misma en ambas calendarizaciones

Ventajas de la distribucin de datos

La principal ventaja de los sistemas distribuidos es la capacidad de compartir y acceder a la informacin de una forma fiable y eficaz.

Utilizacin compartida de los datos y distribucin del control

La ventaja principal de compartir los datos por medio de la distribucin es que cada localidad pueda controlar hasta cierto punto los datos almacenados localmente. En un sistema centralizado, el administrador de base de datos de la localidad central controla la base de datos. En un sistema distribuido existe un administrador global de la base de datos que se encarga de todo el sistema. Parte de esta responsabilidad se delega al administrador de base de datos de cada localidad. Dependiendo del diseo del sistema distribuido, cada administrador local podr tener un grado de autonoma diferente, que se conoce como autonoma local. La posibilidad de contar con autonoma local es en muchos caso s una ventaja importante de las bases de datos distribuidas.

Fiabilidad y disponibilidad

Si se produce un fallo en una localidad de un sistema distribuido, es posible que las dems localidades puedan seguir trabajando. En particular, si los datos se rep iten en varias localidades, una transaccin que requiere un dato especfico puede encontrarlo en ms de una localidad. As, el fallo de una localidad no implica necesariamente la desactivacin del sistema.

El sistema debe detectar cuando falla una locali dad y tomar las medidas necesarias para recuperarse del fallo. El sistema no debe seguir utilizando la localidad que fall. Por ltimo, cuando se recupere o repare esta localidad, debe contarse con mecanismos para reintegrarla al sistema con el mnimo de complicaciones.

La disponibilidad es fundamental para los sistemas de bases de datos que se utilizan en aplicaciones de tiempo real. Por ejemplo, si una lnea area no puede

tener acceso a la informacin, es posible que pierda clientes a favor de la competencia.

Agilizacin del procesamiento de consultas

Si una consulta comprende datos de varias localidades, puede ser posible dividir la consulta en varias subconsultas que se ejecuten en paralelo en distintas localidades. Sin embargo, en un sistema dis tribuido no se comparte la memoria principal, as que no todas las estrategias de interseccin se pueden aplicar en estos sistemas. En los casos en que hay repeticin de los datos, el sistema puede pasar la consulta a las localidades ms ligeras de carga.

Desventajas de la distribucin de los datos

La desventaja principal de los sistemas distribuidos es la mayor complejidad que se requiere para garantizar una coordinacin adecuada entre localidades. El aumento de la complejidad se refleja en:
y

Coste del desarrollo de software: es ms difcil estructura un sistema de bases de datos distribuidos y por tanto su coste es menor

Mayor posibilidad de errores: puesto que las localidades del sistema distribuido operan en paralelo, es ms difcil garantizar que los algoritmos sean correctos.

Mayor tiempo extra de procesamiento: el intercambio de mensajes y los clculos adicionales son una forma de tiempo extra que no existe en los sistemas centralizados.

Diseo de la distribucin:
Introduccin

El diseo de un sistema de base de datos distribuido implica la toma de decisiones sobre la ubicacin de los programas que accedern a la base de datos y sobre los propios datos que constituyen esta ltima, a lo largo de los diferentes puestos que configuren una red de or denadores. La ubicacin de los programas, a priori, no debera suponer un excesivo problema dado que se puede tener una copia de ellos en cada mquina de la red (de hecho, en este documento se asumir que as es). Sin embargo, cul es la mejor opcin para colocar los datos: en una gran mquina que albergue a todos ellos, encargada de responder a todas las peticiones del resto de las estaciones sistema de base de datos centralizado , o podramos pensar en repartir las relaciones, las tablas, por toda la r ed. En el supuesto que nos decantsemos por esta segunda opcin, qu criterios se deberan seguir para llevar a cabo tal distribucin? Realmente este enfoque ofrecer un mayor rendimiento que el caso centralizado? Podra optarse por alguna otra alternat iva? En los prrafos sucesivos se tratar de responder a estas cuestiones.

Tipos de fragmentacin:
Dado que una relacin se corresponde esencialmente con una tabla y la cuestin consiste en dividirla en fragmentos menores, inmediatamente surgen dos alternativas lgicas para llevar a cabo el proceso: la divisin horizontal y la divisin vertical. La divisin o fragmentacin horizontal trabaja sobre las tuplas, dividiendo la relacin en subrelaciones que contienen un subconjunto de las tuplas que alberga la primera. La fragmentacin vertical, en cambio, se basa en los atributos de la relacin para efectuar la divisin. Estos dos tipos de particin podran considerarse los fundamentales y bsicos. Sin embargo, existen otras alternativas. Fundamentalmente, se habla de fragmentacin mixta o hbrida cuando el proceso de particin hace uso de los dos tipos anter iores. La fragmentacin mixta puede llevarse a cabo de tres formas diferentes: desarrollando primero la fragmentacin vertical y, posteriormente, aplicando la particin horizontal sobre los fragmentos verticales (denominada particin VH), o aplicando prime ro una divisin horizontal para luego, sobre los fragmentos generados, desarrollar una fragmentacin vertical (llamada particin HV), o bien, de forma directa considerando la semntica de las transacciones. Otro enfoque distinto y relativamente nuevo, cons iste en aplicar sobre una relacin, de forma simultnea y no secuencial, la fragmentacin horizontal y la fragmentacin vertical; en este caso, se generara una rejilla y los fragmentos

formaran las celdas de esa rejilla, cada celda ser exactamente un frag mento vertical y un fragmento horizontal (ntese que en este caso el grado de fragmentacin alcanzado es mximo, y no por ello la descomposicin resultar ms eficiente).
y y y y

FRACMENTACION HORIZONTAL FRACMENTACION HORIZONTAL PRIMARIA FRACMENTACION HORIZONTAL DERIVADA FRACMENTACION VERTICAL
Informacin necesaria para la fragmentacin vertical

La principal informacin que necesitaremos se referir a las aplicaciones. Por tanto, este punto tratar de especificar la informacin que de una aplicacin que funciona sobre la base de datos podamos extraer. Teniendo en cuenta que la fragmentacin vertical coloca en un fragmento aquellos atributos a los que se accede de manera simultnea, necesitaremos alguna medida que defina con ms precisin el concepto de simultaneidad. Esta medida es la afinidad de los atributos, que indica la relacin estrecha existente entre los atributos. Desgraciadamente, no es muy realista esperar que el diseador o los usuarios puedan especificar estos valores. Por ello, presentaremos una forma por la cual obtengamos esos valores partiendo de datos ms bsicos.
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 aplicacion es. 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.

Criterios para escoger la distribucin


y

Localidad de la data: la data debera ser colocada donde sta se accede ms seguido. El diseador debe analizar las aplicaciones y determinar como colocar la data de tal forma que se optimicen los accesos a la data locales. Fiabilidad de la data: Almacenando varias copias de la data en lugares geogrficamente apartados se logra maximizar la proba bilidad de que la data va a ser recuperable en caso de que ocurra dao fsico en cualquier sitio. Disponibilidad de la data: como en la fiabilidad, almacenar varias copias asegura que los usuarios tengan a su disponibilidad los elementos de la data, an si el nodo al que usualmente acceden no est disponible o falla. Capacidades y costos de almacenamiento: a pesar de que los costos de almacenamiento no son tan grandes como los de transmisin, los nodos pueden tener diferentes capacidades de almacenamiento y procesamiento. Esto se debe analizar cuidadosamente para determinar donde poner la data. El costo de almacenamiento se disminuye significativamente minimizando la cantidad de copias de la data. Distribucin de la carga de procesamiento: una de las razones por la cual se escoge un sistema de BDD es porque se desea poder distribuir la carga de procesamiento para hacer este ms eficiente. Costo de comunicacin: el diseador debe considerar tambin el costo de usar las comunicaciones de la red para obtener dat a. Los costos de comunicacin se minimizan cuando cada sitio tiene su propia copia de la data, por otro lado cuando la data es actualizada se debe actualizar en todos los nodos. Uso del sistema: debe tomarse en consideracin cual ser el tipo principal de uso del sistema de BDD. Factores como la importancia en la disponibilidad de la data, la velocidad de escritura y la capacidad de recuperacin de daos fsicos deben tomarse en cuenta para escoger el esquema correcto.

Seguridad
Desde hace ya varios aos las bases de datos son ampliamente utilizadas en departamentos de gobiernos, empresas comerciales, bancos, hospitales, etc. Actualmente se est cambiando el esquema bajo el cul se utilizan las bases de datos, ya no son utilizadas nicamente de forma interna, sino que se tiene muchos accesos externos de tipos distintos. Estos cambios que se han introducido en el uso de las bases de datos ha creado la necesidad mejorar las prcticas de seguridad ya que el ambiente ya no es tan contr olado como el esquema antiguo.

Ventajas
y y y y

y y

Refleja una estructura organizacional - los fragmentos de la base de datos se ubican en los departamentos a los que tienen relacin. Autonoma local - un departamento puede controlar los datos que le pertenecen. Disponibilidad - un fallo en una parte del sistema solo afectar a un fragmento, en lugar de a toda la base de datos. Rendimiento - los datos generalmente se ubican cerca del sitio con mayor demanda, tambin los sistemas trabajan en paralelo, l o cual permite balancear la carga en los servidores. Economa - es ms barato crear una red de muchas computadoras pequeas, que tener una sola computadora muy poderosa. Modularidad - se pueden modificar, agregar o quitar sistemas de la base de datos distribuida sin afectar a los dems sistemas (mdulos).

Desventajas
y

y y y

Complejidad - Se debe asegurar que la base de datos sea transparente, se debe lidiar con varios sistemas diferentes que puden presentar dificultades nicas. El diseo de la base de datos se tie ne que trabajar tomando en cuenta su naturaleza distribuida, por lo cual no podemos pensar en hacer joins que afecten varios sistemas. Economa - la complejidad y la infraestructura necesaria implica que se necesitar una mayor mano de obra. Seguridad - se debe trabajar en la seguridad de la infraestructura as como cada uno de los sistemas. Integridad - Se vuelve difcil mantener la integridad, aplicar las reglas de integridad a travs de la red puede ser muy caro en trminos de transmisin de datos. Falta de experiencia - las bases de datos distribuidas son un campo relativamente nuevo y poco comn por lo cual no existe mucho personal con experiencia o conocimientos adecuados. Carencia de estndares - an no existen herramientas o metodologas que ayuden a los usuarios a convertir un DBMS centralizado en un DBMS distribuido. Diseo de la base de datos se vuelve ms complejo - adems de las dificultades que generalmente se encuentran al disear una base de datos, el diseo de una base de datos distribuida de be considerar la fragmentacin, replicacin y ubicacin de los fragmentos en sitios especficos.

Mira hermano vamos a ser sinceros en este dia y hoy jugamos..nada de pelea.... x favor ya estamos grandes yo 22 aos vos vas x ahi vos ya estas x salir profesional ... no se nada de la vida peor he adquirido experiencia en algunas cosas se como reaccionar o como deberia x lo menos reaccionar asi que ahi te va mi estimado: Para empezar con lo que te dije hace un ratio que hago con hablar? q hago con decirte che carlitos no era asi el uniforme...si ya esta echo ... en la vida mas hay q ser productivo y dejarse de huevadas! y pechar pa adelante atras ni pa tomar impulso...tons q gano como chollita diciendote che carltos no era as i esto el otro bla

bla bla bla para q bro!!! pa q hacer lio ya esta echo.....Ahora manera despectiva mira carlitos...cada cual es dibujante de su sendero y Dios nos da libre albediro para elegri lo bueno lo malo y hasta sabias q es decision de uno ser feli z mira carlitos vos si quiieres sentir que lo dije despectivamente adelante yo no lo hice de esa manera creo q es infantil decir eso... y agarrarse las cosas cuando no hay es un grande herror...Ahora yo te creo lo de q se confundio...la doita ............ ..... y Antes de pasar al ultimo que no me lo tome a mal?? carlitos gracias a Dios la gente me conoce y brother q pasaaaa yo no me agarro nada ni me tomo anda a mal jajajaja me da risa cuando alguien me dice eso xq yo solo me preocupo de levantarme y echar le ganas al dia reir mucho reir un poko mas y zas mas no m encargo de q diran o q harban dicho o esto el otro asi que no pasa nada q me tome a mal las cosas no esta en mi objetivo ;-).... Ahora bien lo interesante ; -)

Potrebbero piacerti anche