esquema de fragmentacion

5
Esquema de Fragmentacion & distribucion de BDD 2.4 Fragmentación y distribución de datos El problema de fragmentación se refiere al particionamiento de la información para distribuir cada parte a los diferentes sitios de la red, como se observa en la Figura 3.2. Inmediatamente aparece la siguiente pregunta: ¿cuál es la unidad razonable de distribución? Se puede considerar que una relación completa es lo adecuado ya que las vistas de usuario son subconjuntos de las relaciones. Sin embargo, el uso completo de relaciones no favorece las cuestiones de eficiencia sobre todo aquellas relacionadas con el procesamiento de consultas. El diseño de una base de datos distribuida, cualquiera sea el enfoque que se siga, debe responder satisfactoriamente las siguientes preguntas: ¿Por qué hacer una fragmentación de datos? ¿Cómo realizar la fragmentación? ¿Qué tanto se debe fragmentar? ¿Cómo probar la validez de una fragmentación? ¿Cómo realizar el asignamiento de fragmentos? ¿Cómo considerar los requerimientos de la información? La otra posibilidad es usar fragmentos de relaciones (sub- relaciones) lo cual favorece la ejecución concurrente de varias transacciones que accedan porciones diferentes de una relación. Sin embargo, el uso de sub-relaciones también presenta inconvenientes. Por ejemplo, las vistas de usuario que no se pueden definir sobre un solo fragmento necesitarán un procesamiento adicional a fin de localizar todos los fragmentos de una vista. Aunado a esto, el control semántico de datos es mucho más complejo ya que, por ejemplo, el manejo de llaves únicas requiere considerar todos los fragmentos en los que se distribuyen todos los registros de la relación. En resumen, el objetivo de la fragmentación es encontrar un nivel de

Upload: daniel-jacob-rodriguez-hernandez

Post on 18-Dec-2015

7 views

Category:

Documents


3 download

DESCRIPTION

sobre los esquemas que utiliza una base de datos para realizar las framentaciones

TRANSCRIPT

Esquema de Fragmentacion & distribucion de BDD

2.4 Fragmentacin y distribucin de datosEl problema de fragmentacin se refiere al particionamiento de la informacin para distribuir cada parte a los diferentes sitios de la red, como se observa en la Figura 3.2. Inmediatamente aparece la siguiente pregunta: cul es la unidad razonable de distribucin? Se puede considerar que una relacin completa es lo adecuado ya que las vistas de usuario son subconjuntos de las relaciones. Sin embargo, el uso completo de relaciones no favorece las cuestiones de eficiencia sobre todo aquellas relacionadas con el procesamiento de consultas.El diseo de una base de datos distribuida, cualquiera sea el enfoque que se siga, debe responder satisfactoriamente las siguientes preguntas:Por qu hacer una fragmentacin de datos?Cmo realizar la fragmentacin?Qu tanto se debe fragmentar?Cmo probar la validez de una fragmentacin?Cmo realizar el asignamiento de fragmentos?Cmo considerar los requerimientos de la informacin?

La otra posibilidad es usar fragmentos de relaciones (sub-relaciones) lo cual favorece la ejecucin concurrente de varias transacciones que accedan porciones diferentes de una relacin. Sin embargo, el uso de sub-relaciones tambin presenta inconvenientes. Por ejemplo, las vistas de usuario que no se pueden definir sobre un solo fragmento necesitarn un procesamiento adicional a fin de localizar todos los fragmentos de una vista.Aunado a esto, el control semntico de datos es mucho ms complejo ya que, por ejemplo, el manejo de llaves nicas requiere considerar todos los fragmentos en los que se distribuyen todos los registros de la relacin. En resumen, el objetivo de la fragmentacin es encontrar un nivel de particionamiento adecuado en el rango que va desde tuplas o atributos hasta relaciones completas.

La relacin J se puede fragmentar horizontalmente produciendo los siguientes fragmentos.J1: proyectos con presupuesto menor que $200,000JNO JNOMBRE PRESUPUESTO LUGARJ1 Instrumentacin 150000 MonterreyJ2 Desarrollo debases de datos135000 Mxico

J2: proyectos con presupuesto mayor que o igual a $200,000JNO JNOMBRE PRESUPUESTO LUGARJ3 CAD/CAM 250000 PueblaJ4 Mantenimiento 310000 MxicoJ5 CAD/CAM 500000 Guadalajara

-Fragmentos: cada relacin global puede ser dividida en porciones que no se solapen llamados fragmentos. El mapa resultante se denominaesquema de fragmentacin. Una relacin global puede dividirse en n fragmentos y un fragmento slo puede pertenecer a una relacin global. Los fragmentos se referencian por un nombre de relacin global y un subndice. Por ejemplo Ri indica el fragmento i de la relacin R.Los fragmentos son porciones lgicas de relaciones globales que pueden estar fsicamente ubicadas en uno o varios nodos de la red. Elesquema de ubicacindefine en qu nodos un fragmento va a ser almacenado. El tipo de mapa definido en el esquema de ubicacin determina si la BDD es redundante o no. Todos los fragmentos que corresponden a la misma relacin global R y estn ubicados en el mismo nodo constituyen laimagen fsicade una relacin global R en el nodo. Las imgenes fsicas se pueden referenciar por el nombre de la relacin global R y un superndice; por ejemplo, Rj indica la imagen fsica de la relacin global R en el nodo j.Por ltimo se denominacopia de fragmentoa la informacin de un fragmento en un nodo determinado en un nodo dado, y se denota usando el nombre de la relacin global, un subndice y un superndice. Por ejemplo, R3 2 indica copia del fragmento R2 que est ubicado en el nodo 3. Dos imgenes fsicas pueden ser idnticas; se dice entonces que una imagen fsica es copia de otra imagen fsica.

4. Ambientes debases de datosdistribuidasLas 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.5.Problemasfundamentales a resolver en las bases dedatosdistribuidas Diseo de bases de datos distribuidas Procesamiento y optimizacin de consultas Manejo de transacciones ycontrolde concurrenciaEtapas del diseoLa etapa diferenciadora entre eldiseode unabase de datoscentralizada y una base de datos distribuidas es el "Diseo de ladistribucin"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 optima. Replicacin: El SGBDD puede mantener una copia de un fragmento en diferentes sitios6. FragmentacinEl problema de fragmentacin se refiere al particionamiento de lainformacinpara distribuir cada parte a los diferentes sitios de la redObjetivos de la fragmentacinElobjetivo de la fragmentacinconsiste 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 eltiempode 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 trafico innecesario es producida por la necesidad de la actualizacin de las copias.VentajasAl 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 alpoderdescomponerlas 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 realizaroperacionescon 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 datosExisten tres tipos de fragmentacin: Fragmentacin horizontal Fragmentacin vertical Fragmentacin hbridaPara que una la fragmentacin de una relacin sea correcta debe satisfacer las siguientes condiciones: Condicin de completitud.La descomposicin de una relacinRen los fragmentos R1, R2, ...,Rnes completa si y solamente si cada elemento de datos enRse encuentra en alguno de los fragmentosRi. Condicin de Reconstruccin.La descomposicin de una relacinRen los fragmentos R1, R2, ...,Rnes completa si y solamente si cada elemento de datos enRse encuentra en alguno de los fragmentosRi. Condicin de Fragmentos Disjuntos.Si la relacinRse descompone en los fragmentos R1, R2, ...,Rn, y el datodiest enRj, entonces, no debe estar en ningn otro fragmentoRk(k?j).Fragmentacin horizontalLafragmentacin horizontalde una relacinRproduce una serie de fragmentosR1, R2, ..., Rr, cada uno de los cuales contiene un subconjunto de las tuplas deRque cumplen determinadas propiedades (predicados)Fragmentacin horizontal primaria y derivadaLaFragmentacin Horizontal Primaria (FHP)de una relacin se obtiene usando predicados que estn definidos en esa relacin.LaFragmentacin Horizontal Derivada (FHD) por otra parte, es el particionamiento de una relacin como resultado de predicados que se definen en otra relacin.Fragmentacin verticalLa fragmentacin vertical de una relacinRproduce una serie de fragmentosR1, R2, ..., Rrcada uno de los cuales contiene un subconjunto de los atributos deRas como la clave primaria deR.Complejidad de la fragmentacin VerticalLa fragmentacin vertical resulta ms complicada que la horizontal. En el caso vertical, si una relacin tienematributos clave no primarios, el nmero de posibles fragmentos es igual aB(m), es decir el m-simo nmero de Bell [3]. Paravaloresgrandes dem,B(m)(mm; por ejemplo, param= 10,B(m) ( 115.000, param= 15,B(m) ( 109, param= 30,B(m) = 1023.Estos valores indican que la obtencin de una solucin ptima de la fragmentacin vertical resultar una tarea imposible, sino nos apoyamos en el uso de heursticas.El problema de la asignacin de fragmentosAsumamos que hay un conjunto de fragmentosF= { F1, F2, ...,Fn} yuna redque consiste de los sitiosS= { S1, S2, ...,Sm} en los cuales un conjuntoQ= { q1, q2, ...,qq} de consultas se van a ejecutar.El problema de asignacin consiste en determinar la distribucin"ptima"deFenS.La optimalidad puede ser definida de acuerdo a dos medidas: Costo mnimo. Consiste delcostodecomunicacinde datos, del costo dealmacenamiento, y del costo procesamiento (lecturas y actualizaciones a cada fragmento). El problema de la asignacin, es encontrar un esquema de asignacin o ubicacin que minimiza lafuncinde costo combinada. Rendimiento: Laestrategiade asignacin se disea para mantener una mtrica de rendimiento. Las dos mtricas ms utilizadas son el tiempo de respuesta y el "throughput" (nmero de trabajos procesados por unidad de tiempo).Asignacin de fragmentosAsignacinProceso mediante el cual se decide donde se ubicaran los fragmentos de la etapa anterior y si se harn replicas de los mismos.Hacer replicas tiene sentido por : Confiabilidad : Mayorseguridadante perdida de datos Disponibilidad : Mayortoleranciaa fallos ante cadas de los computadores Aumento del paralelismo : Mayoreficienciaen las consultas delecturaal posibilitarse su descomposicin en subconsultas y la paralelizacin de stas.Pero presenta el inconvenientes de las consultas deescritura, que conllevan las actualizacin de todas las copias de lared.En la prctica : Sopesar lecturas vs escrituras Mas lecturas que escrituras : Replicacin es buena idea Mas escrituras que lecturas : No replicamos.Segn el grado de replicacin, distinguimos entre : BD fragmentada : Fragmentos disjuntos, cada uno en un nodo (no hay replicas) BD totalmente replicada : Se encuentra una copia de toda la BD en cada nodo BD parcialmente replicada : Mezcla las anteriores. Algunos fragmentos estn replicados.Como se ve lastcnicasde fragmentacin y replicacin se combinan en la prctica.Replicacin de fragmentosEl problema de la replicacin de segmentos asignacin consiste enla determinacin de que fragmentos se replicarn en diferentes sitios a pesar de los problemas que acarrea la actualizacin.7. Las 12 reglas de un SGBDDEl principio fundamental de las Bases de Datos Distribuidas o regla cero plantea que:"Desde el punto de vista del usuario, unsistemadistribuido deber ser idntico a un sistema no distribuido"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 latecnologadistribuida. 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 centralNo debe existir un nico sitio, ya que implicara: Cuello de botella. Vulnerabilidad. 3.Operacin continua Adicin de elementos Actualizacin de versiones 4.Independenciade LocalizacinEl usuario desconoce dnde estn fsicamente los datos. 5.Independencia de fragmentacin.Deseable porque simplifica losprogramasde los usuarios y sus actividades en la terminal 6.Independencia de rplicaLa 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 LosSistemasrelacionales brindanherramientasde consulta muy eficientes. Varias maneras de trasladar los datos 6.Manejo distribuido de transacciones Transaccin distribuida: varios agentes de la transaccin en varios lugares. Control de recuperacin: una transaccin atmica. Todos los agentes avanzan o retroceden juntos. Control de concurrencia: Bloqueos mediante paso de mensajes. 8.Independencia con respecto al equipo El SGBD se ejecutar igual sea cual sea el equipo 10.Independencia con respecto al Sistema OperativoEl SGBD debe ser multioperativo sin afectar al usuario. 11.Independencia con respecto a la RedEl SGBD debe soportar mltiplesredessin afectar al usuario. 12. Independencia con respecto al SGBDSe pueden manejar distintas copias de SGBD si manejan la misma norma estndar deSQL:Oracle, Informix, Multibase, etc.8. ConclusionesLas bases de datos distribuidas son cada vez ms usadas por lasempresasy suponen una ventaja competitiva frente a los sistemas centralizados, siempre y cuandola empresaen 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.9. BIBLIOGRAFABray, O.H "Distributed Database Management", Second Edition, 1982M. Tamer Ozsus, Patric Valduriez Principles of distributed database systems, Second Edition, 1999Ceri, S., Pelagatti, G. Distributed Database, Principles and Systems. McGraw-Hill, New York, 1984.Ceri, S., Pernici, B., Wiederhold, G. Distributed Database Design Methodologies. Proceedings of the IEEE, Vol. 75, No. 5, May 1987.Meghini, C., Thanos, C. The Complexity of Operation on a Fragmented Relation. ACM Transaction on Database Systems, Vol. 16, No. 1, March 1991.SitioWeb: www.cs.valberta.ca/~database/distrib.html

Leer ms:http://www.monografias.com/trabajos82/base-datos-distribuidas/base-datos-distribuidas2.shtml#ixzz3VMYD8W3U