Bases de Datos Especializadas

Anuncio
Bases de Datos Especializadas
BASES DE DATOS ESPECIALIZADAS
Sesión No.7
Nombre: Fragmentación, asignación y arquitectura de referencia
Objetivo:
Al término de la sesión, el alumno conocerá características de las bases de
datos distribuida.
Contextualización
En la sesión previa pudimos percatarnos de la importancia de la arquitectura del
DDBMS, ahora revisaremos la arquitectura de referencia de un DDBMS debido a
que si bien no existe un estándar como en los DBMS (ANSI-SPARC) puede ser
de gran utilidad para desarrollos futuros de este tipo de sistemas.
De igual manera profundizaremos en el tema de la fragmentación de los datos,
ya que al tratar de un sistema distribuido, es necesaria y de gran importancia la
fragmentación de los datos, así como el motivo por el cual fragmentar y los tipos
de fragmentación a considerar.
También abarcaremos el concepto de asignación de datos, el cual se puede
realizar de 4 maneras distintas: centralizada, fragmentada, replicación completa
y replicación selectiva.
1
BASES DE DATOS ESPECIALIZADAS
Introducción al Tema
A diferencia de un DBMS en un DDBMS es necesario definir la manera en cómo
se efectuará la división de la base de datos, es decir, cómo se realizará la
fragmentación; debe decidirse si se realizará alguna replicación de dichos
fragmentos y dónde se localizaran éstos y sus réplicas correspondientes.
Existen diversas razones del por qué fragmentar pero principalmente se realiza
este proceso debido a que las aplicaciones funcionan con vistas, en lugar de
relaciones completas, por lo que en la distribución de datos es lo más apropiado
trabajar con subconjuntos de las relaciones como una unidad de distribución. De
igual manera, como se mencionó en sesiones previas, los datos se almacenan
cerca del lugar donde se utilizan. Una transacción puede dividirse en varios
subconsultas que operan distintos fragmentos permitiendo que la concurrencia y
el paralelismo en el sistema aumente, y por último los datos que no se requieran
en ese momento no serán almacenados en el nodo.
Al realizar la fragmentación se realiza también un proceso inherente a él, la
asignación de datos, estos temas los revisaremos a continuación.
2
BASES DE DATOS ESPECIALIZADAS
Explicación
Arquitectura de referencia de un DDBMS
Como se mencionó en la sesión previa se requieren de ciertos servicios que nos
pueda brindar el DDBMS pero también de una cierta estructura para su
arquitectura, desafortunadamente no se cuenta con una arquitectura estándar
como en los DBMS centralizados por lo que para los DDBMS la arquitectura de
referencia está compuesta de los siguientes esquemas:
Arquitectura de referencia para un DDBMS
La arquitectura esta compuesta por los esquemas externos globales, conceptual
global, de fragmentación, de asignación y un conjunto de esquemas de DBMS
local conforme a la arquitectura en tres niveles establecida por el ANSI-SPARC.

Esquema conceptual global: descripción lógica de toda la base de datos
como si no se tratara de un sistema distribuido
3
BASES DE DATOS ESPECIALIZADAS

Esquema de fragmentación y asignación: es una descripción de la
manera en que se debe particionar lógicamente lo datos y una descripción
de dónde hay que ubicar los datos teniendo en cuenta los mecanismos de
replicación usados.

Esquema local: cada DMBS tiene su propio conjunto de esquemas, el
conceptual e
interno
locales
se
corresponden
con
sus niveles
equivalentes de la arquitectura estándar para DBMS la ANSI-SPARC.
El diagrama anterior está relacionado por un conjunto de líneas que representan
el nivel de transparencia que fueron analizados en la sesión anterior.
Asignación de los datos
Como se mencionó en la contextualización, existen 4 estrategias en lo que se
refiere a la asignación de los datos, en otras palabras, en la ubicación.
Centralizada
• Se basa en un DBMS y en una sola base de datos almacenada en un nodo, y
los usuarios distribuidos por toda la red (procesamiento distribuido). El
inconveniente es que todos los nodos a excepción del central tienen que hacer
uso de la red para tener acceso a los datos por lo que se incide en una
saturación de comunicación y costos altos.
Fragmentación
• Se particiona la base de datos en una serie de fragmentos disjuntos, donde
cada fragmento es asignado a un nodo. Al no haber replicación los costos de
almacenamiento disminuyen, si un nodo falla sólo se pierde los datos éste.
Replicación
Completa
• Se realiza una copia completa de la bases de datos en cada uno de los nodos,
la localidad de referencia, la fiabilidad y la disponibilidad se maximizan, sin
embargo el almacenamiento y la comunicación implica un gran costo.
Replicación
selectiva
• Combinación de las tres anteriores, algunos elementos de los datos se
fragmentan para conseguir una alta localidad de referencia, otros que se usan en
muchos nodos y no se actualizan frecuentemente se replican, todos los demás
se centralizan.
4
BASES DE DATOS ESPECIALIZADAS
Fragmentación
Como ya vimos, de manera implícita la fragmentación es necesaria para
preservar la integridad de nuestros datos, pero también por cuestiones de:

Utilización: para la distribución de datos parece apropiado trabajar con
subconjuntos de las relaciones como unidad de distribución.

Eficiencia: los datos se almacenan cerca del lugar donde se les usa más
frecuentemente.

Paralelismo: se utiliza un fragmento como unidad de distribución permite
incrementar el nivel de concurrencia en el sistema.

Seguridad: los datos no requeridos por aplicaciones locales no se
almacenan en ese nodo y no están disponibles para usuarios no
autorizados.
Las principales desventajas de la fragmentación son el rendimiento y la
integridad.
Tipos de fragmentación
Existen principalmente dos tipos de fragmentación, la horizontal y la vertical. Los
fragmentos horizontales son subconjuntos de tuplas y los fragmentos verticales
son subconjuntos de atributos.
Fragmentación horizontal

Fragmentación vertical
Fragmento horizontal: está compuesto de un subconjunto de las tuplas
de una relación. Agrupa las tuplas de una relación que son utilizadas de
manera colectiva por las transacciones de mayor importancia. Los
fragmentos se generan especificando una restricción a la tuplas de la
5
BASES DE DATOS ESPECIALIZADAS
relación, esto se realiza a través de la operación Selección del Álgebra
Relacional.

Fragmento vertical: está compuesto de un subconjunto de atributos de
una relación. El mecanismo para realizar esta fragmentación es a través
de la agrupación de atributos de una relación que son utilizados de
manera conjunta por las transacciones de mayor importancia, esto se
realiza con la operación Proyección del Álgebra Relacional.

Fragmento mixta: se compone por de un fragmento horizontal que se
fragmenta posteriormente de manera vertical, o viceversa, este fragmento
se define utilizando tanto las operaciones Selección y Proyección del
Álgebra Relacional

Fragmento derivado: es un fragmento horizontal proveniente de una
relación
padre.
Se
define
haciendo
semicombinación del Álgebra Relacional.
uso
de
la
operación
de
6
BASES DE DATOS ESPECIALIZADAS
Conclusión
Como pudimos observar, es fundamental el contar con una estructura bien
definida para un DDBMS como la de referencia vista en esta sesión, ya que en
conjunto con la fragmentación y la asignación de datos, se puede efectuar todo
de manera transparente al usuario ya que sólo así se podrá garantizar la
integridad de los datos.
Pudimos observar que la asignación de los datos depende del tipo de
fragmentación que se lleve a cabo y que ésta última permite dividir un objeto en
dos o más segmentos o fragmentos.
Es importante recalcar que en función de las transacciones a ejecutar se toma la
decisión de qué fragmentar y cómo fragmentar, decidir qué tablas serán
modificadas y cuáles quedarán intactas, y sobre todo las relaciones que están
implicadas en las diversas transacciones.
7
BASES DE DATOS ESPECIALIZADAS
Para aprender más
A continuación encontrarás un par de hipervínculos de sitios para conocer aplicaciones
relacionadas con la fragmentación de bases de datos distribuidas.
Tipos de fragmentación en bases de datos distribuidas
http://rii.cujae.edu.cu/index.php/revistaind/article/view/110
Aplicación de Algoritmos Genéticos en la Fragmentación Vertical y
asignación simultánea en Bases de Datos Distribuidas
http://brd.unid.edu.mx/aplicacion-de-algoritmos-geneticos-en-la-fragmentacionvertical-y-asignacion-simultanea-en-bases-de-datos-distribuidas/
8
BASES DE DATOS ESPECIALIZADAS
Actividad de Aprendizaje
Objetivo de la actividad de aprendizaje de la sesión:
El alumno explicará los tipos de fragmentación y asignación de modelos
distribuidos en un texto en línea.
Instrucciones:
¿Qué vas a hacer?
Con la finalidad de reforzar los conocimientos adquiridos a lo largo de esta
sesión participa en el foro “Ejemplo de fragmentación”.
1. Retoma un ejemplo de alguna fuente pertinente (anota la cita y la fuente
al final) donde se aplique la fragmentación de una base de datos
distribuida.
2. Descríbelo con tus propias palabras en un archivo de Word y justifica el
motivo por el cual se realizó la fragmentación de esa manera
3. Incluye la bibliografía utilizada con sus datos completos.
4. Anexa el documento, de un máximo de 3 páginas, en tu mensaje del foro.
Nómbralo S07TuNombreTuApellido.doc.
Recuerda que esta actividad te ayudará a identificar las características que debe
cumplir un DDBMS.
Material: Como material inicial de consulta puedes usar la lectura de la sesión,
además de aquellos que consideres pertinentes.
¿Cuál es la forma de entrega?
Una vez que tengas listo tu archivo, ingresa al foro de la sesión de la
plataforma de aprendizaje y realiza lo siguiente:
9
BASES DE DATOS ESPECIALIZADAS
1. Haz clic en Responder en el mensaje inicial de tu profesor(a) y participa
presentando tu propuesta, y anexando tu archivo, al cual debes nombrar
de la siguiente forma: S07TuNombreTuApellido.doc. El profesor(a)
evaluará tu participación.
2. Revisa la participación de al menos un compañero(a) y comenta su
propuesta.
¿Cómo serás evaluado?
En esta actividad se tomará en cuenta lo siguiente:
Forma
Portada con datos generales: Universidad,
maestría, asignatura, alumno y fecha.
Fuentes
bibliográficas
pertinentes.
completas
Ponderación
Requisito
y
Ortografía y redacción adecuada.
10 puntos
10 puntos
Contenido
Título adecuado
El alumno planteó el tema de manera clara,
describió las ideas principales de la
situación que se le presentó.
El alumno presenta el resultado de su
investigación en fuentes primarias, y las
utiliza para argumentar al profesor y/o sus
compañeros.
El alumno emite juicios de valor con
fundamento, de manera objetiva y clara,
relacionados con el tema.
Total
Bibliografía
2 puntos
20 puntos
38 puntos
20 puntos
100 puntos
10
BASES DE DATOS ESPECIALIZADAS

Alfaro, Y. (2006) Tipos de fragmentación en base de datos distribuidas.
Ingeniería
Industrial.
Consultado
en
abril
de
2013
de
http://rii.cujae.edu.cu/index.php/revistaind/article/view/110

Bell, D., Grimson, J. (1994) Distributed database systems, United
Kingdom, Addison Wesley

Bobak, A. (1993). Distributed and multi-database systems, E.U., Bantam
Books.

Connolly, T., Begg, C. (2005). Sistemas de bases de datos. Un enfoque
práctico para diseño, implementación y gestión, España, Pearson.

Peralta González., R. (s.f.) Aplicación de algoritmos en la Fragmentación
Vertical y asignación simultánea en Bases de Datos Distribuidas. Chile:
Universidad Católica de Maule. Consultado el abril de 2013 de
http://www.eici.ucm.cl/Academicos/mjarur/proyectos.doc/paper_peralta.pd
f

Rob, P., Coronal, C. (2004). Sistemas de bases de datos, diseño,
implementación y administración, México, Thomson.
11
Descargar