P. 1
Base de datos Distribuidas

Base de datos Distribuidas

|Views: 14.228|Likes:
Publicado porBenjamin
es un pequeño resumen en donde se describe que es una base datos distribuida
es un pequeño resumen en donde se describe que es una base datos distribuida

More info:

Published by: Benjamin on Feb 15, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

10/11/2015

pdf

text

original

Base de Datos Distribuidas

Benjamín Martínez Martínez

Benja_min_15@hotmail.com

Base de Datos Distribuidas
México Db2 Monterrey Microsoft Access

Red de comunicaciones

Chiapas
Guerrero Oaxaca MySql Postgres SqlServer

Conceptos básicos
BDD  Base de Datos Distribuidas Es un conjunto de múltiples bases de datos lógicamente relacionadas las cuales se encuentran distribuidas entre diferentes sitios interconectados por una red de comunicaciones SBDD Sistema de Base de Datos Distribuida Es un sistema en el cual múltiples sitios de bases de datos están ligados por un sistema de comunicaciones, de tal forma que, un usuario en cualquier sitio puede accesar los datos en cualquier parte de la red exactamente como si los datos estuvieran almacenados en su sitio propio

Continuación…
SMBDD  Un sistema de manejo de bases de datos distribuidas Es aquel que se encarga del manejo de la BDD y proporciona un mecanismo de acceso que hace que la distribución sea transparente a los usuarios. El término transparente significa que la aplicación trabajaría, desde un punto de vista lógico, como si un solo SMBD ejecutado en una sola máquina, administrara esos datos. SBDD  Un sistema de base de datos distribuida

Es entonces el resultado de la integración de una base de datos distribuida con un sistema para su manejo.

Objetivos de las BDD
Autonomía local. Independencia de un sitio central. Operación continua. Transparencia de Localización. Transparencia de Fragmentación Transparencia de repetición. Procesamiento distribuido de consultas. Procesamiento de transacciones distribuidas. Transparencia de "hardware". Transparencia de Sistema operativo Transparencia de red. Transparencia de SMBD

Disciplinas de estudio
Los ambientes en los que se encuentra con mayor frecuencia el uso de las bases de datos distribuidas son: Cualquier organización que tiene una estructura descentralizada. Casos típicos de lo anterior son: organismos gubernamentales y/o de servicio público. La industria de la manufactura, particularmente, aquella con plantas múltiples. Por ejemplo, la industria automotriz. Aplicaciones de control y comando militar. Líneas de transportación aérea. Cadenas hoteleras. Servicios bancarios y financieros.

Arquitectura de BDD
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 Sequent Encore y los mainframes IBM4090 y Bull DPS8 (Figura 1)

P1

……

Pn

M BD Pn Procesador MMemoria

Figura 1. Arquitectura de memoria compartida

Continuación…
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

P1 …… M1

Pn Mn

BD BD BD

Pn Procesador MMemoria

Figura 2. Arquitectura de disco compartido

Continuación…
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

P1
BD BD BD M1 ……

Pn
BD BD BD Mn Pn Procesador MMemoria

Figura 3. Arquitectura nada compartido

Diseño de BDD

Consideraciones de Diseño de BDD
Existen varios factores relacionados a la construcción de bases de datos distribuidas que no se presentan en bases de datos centralizadas. Entre los más importantes se encuentran los siguientes:
1

Diseño de la Base de Datos Distribuida (unidad II) Procesamiento de consultas (Unidad III) Control de concurrencia (Unidad IV) Confiablidad (Unidad IV)

2
3 1

Diseño de la BDD
En el diseño de bases de datos distribuidas se debe considerar el problema de como distribuir la información entre diferentes sitios. Existen razones organizacionales las cuales determinan en gran medida lo anterior. Sin embargo, cuando se busca eficiencia en el acceso a la información, se deben abordar dos problemas relacionados. Primero, como fragmentar la información. Segundo, como asignar cada fragmento entre los diferentes sitios de la red.

Continuación …
En el diseño de la BDD también es importante considerar si la información está replicada, es decir, si existen copias múltiples del mismo dato y, en este caso, como mantener la consistencia de la información. Finalmente, una parte importante en el diseño de una BDD se refiere al manejo del directorio. Si existen únicamente usuarios globales, se debe manejar un solo directorio global. Sin embargo, si existen también usuarios locales, el directorio combina información local con información global

La organización de los sistemas de Base de Datos Distribuidas se puede analizar en 3 dimensiones:
Modo de Acceso Estático Dinámico

Información total Información Parcial

Datos
Datos y programas

Nivel de Conocimiento

Compartición

Nivel de Compartición

Inexistente

Cada aplicación y sus datos se ejecutan en una máquina sin comunicación con otros programas o datos Cada máquina posee sus propias aplicaciones locales pero se comparten los datos Las aplicaciones locales en una máquina pueden invocar servicios en otras y además comparten los datos

Compartición De datos
Compartición de datos y programas

Características de acceso

Estático Dinámico

El modelo de acceso a los datos no varía con el tiempo El modelo de acceso a los datos varía con el tiempo

Nivel de conocimiento

Sin información Los diseñadores no tienen información de cómo acceden los usuarios a los datos Con información Los diseñadores no poseen toda la información de parcial cómo acceden los usuarios a los datos Con información Los diseñadores poseen toda la información de cómo total acceden los usuarios a los datos

Estrategias de Diseño
Las estrategias son las utilizadas en una BD relacional, pero añadiendo un paso de diseño de la distribución A la hora de abordar el diseño de una Base de Datos Distribuida podremos optar principalmente por dos tipos de estrategias:

la estrategia ascendente (botton-up) y
la estrategia descendente(top-down)

La estrategia ascendente (botton-up). En este caso se partirá de los esquemas conceptuales locales y se trabajaría para llegar a conseguir el esquema conceptual global. Después se pasaría al diseño de distribución. Esta estrategia suele ser utilizada para integrar varias bases de datos centralizadas existentes. la estrategia descendente(top-down). Se parte de cero y se avanza en el desarrollo del trabajo. Los pasos a realizar mediante esta estrategia son: Análisis de requisitos Diseño de Vistas Diseño conceptual Diseño de la distribución Fragmentación Asignación Diseño físico Monitorización y ajuste

Diccionario de Datos
Es el lugar donde se deposita información acerca de todos los datos que forman la BD. Es una guía en la que se describe la BD y los objetos que la forman.

El diccionario contiene las características lógicas de los sitios donde se almacenan los datos del sistema, incluyendo nombre, descripción, alias, contenido y organización. Identifica los procesos donde se emplean los datos y los sitios donde se necesita el acceso inmediato a la información

En una BD relacional, el diccionario de datos proporciona información acerca de:

La estructura lógica y física de la BD.
Las definiciones de todos los objetos de la BD: tablas, vistas, índices, disparadores, procedimientos, funciones, etcétera. El espacio asignado y utilizado por los objetos. Los valores por defecto de las columnas de las tablas. Información acerca de las restricciones de integridad. Los privilegios y roles otorgados a los usuarios.

Auditoría de información, como los accesos a los objetos.

Un diccionario de datos debe cumplir las siguientes características:
Debe soportar las descripciones de los modelos conceptual, lógico, interno y externo de la BD.

Debe estar integrado dentro del SGBD.
Debe apoyar la transferencia eficiente de información al SGDB. La conexión entre los modelos interno y externo debe ser realizada en tiempo de ejecución. Debe comenzar con la reorganización de versiones de producción de la BD. Además debe reflejar los cambios en la descripción de la BD. Cualquier cambio a la descripción de programas ha de ser reflejado automáticamente en la librería de descripción de programas con la ayuda del diccionario de datos.

Debe estar almacenado en un medio de almacenamiento con acceso directo para
la fácil recuperación de información

Niveles de Transparencia
La transparencia se puede entender como la separación de la semántica de alto nivel de un sistema de las aspectos de bajo nivel relacionados a la implementación del mismo. Un nivel de transparencia adecuado permite ocultar los detalles de implementación a las capas de alto nivel de un sistema y a otros usuarios

Niveles de Transparencia

Fragmentación de datos
Horizontal
Consiste del particionamiento en tuplas de una relación global en subconjuntos, donde cada subconjunto puede contener datos que tienen propiedades comunes y se puede definir expresando cada fragmento como una operación de selección sobre la relación global

Vertical
La fragmentación vertical es la subdivisión de atributos en grupos. Los fragmentos se obtienen proyectando la relación global sobre cada grupo

Distribución de datos
Describe el proceso de decidir dónde localizar los datos. Las estrategias que se tienen son:
Colocación centralizada de los datos, toda la base de datos se guarda en un sitio. Colocación particionada de los datos, la base de datos se divide en varias partes desarticuladas (fragmentos) y se guardan en varios sitios. Colocación replicada de los datos, se guardan copias de uno o más

fragmentos de la base de datos en varios sitios.

Continuación…
La distribución de los datos se logra mediante la partición de los datos, replicación de los datos o mediante una combinación

de ambas.
La colocación de los datos está estrechamente relacionada en como la BD se divide o fragmenta. La colocación de los datos ve qué datos localizar y en dónde

Continuación…
Los algoritmos de colocación de los datos consideran varios factores, incluidos:
Objetivos de desempeño y disponibilidad de los datos.
Tamaño, número de filas y el número de relaciones que una entidad mantiene con otras entidades.

Tipos de transacciones a ser aplicadas a la base de datos.
Los atributos accesados por cada una de las transacciones.

Replicación de datos
Se refiere al almacenamiento de copias de datos en sitios múltiples, puede ser para satisfacer requerimientos de información, además de mejorar la disponibilidad de los datos y el tiempo respuesta; finalmente estas copias reducen los costos de comunicación y de consulta totales Los datos replicados se someten a la regla de consistencia mutua, la cual requiere que todas las copias de fragmentos de datos sean idénticas, esto quiere decir que cuando hay una actualización de la base de datos se realiza en todos los sitios donde hay réplicas

Continuación …
Existen tres escenarios de replicación:
Base de datos totalmente replicada, guarda varias copias de cada fragmento de la base de datos en varios sitios. No es práctica debido la cantidad de carga impuesta al sistema.

Base de datos parcialmente replicada, guarda múltiples copias de algunos fragmentos de la base de datos en múltiples sitios. Se tiene un buen manejo Base de datos no replicada, guarda cada fragmento de base de datos en un solo sitio.

Procesamiento de consultas distribuidas

Metodología del procesamiento de consultas distribuidas. El procesamiento de consultas tiene como objetivo principal transformar una consulta escrita en un lenguaje de alto nivel (SQL) en una estrategia de ejecución correcta y eficiente expresada en un lenguaje de bajo nivel (algebra relacional) y ejecutar la estrategia para extraer los datos requeridos

¿Cuáles son las faces típicas del procesamiento de consultas?

Descomposición (Análisis sintáctico y validación)
Optimización Generación de código Ejecución

¿Cuáles son las etapas típicas descomposición de consultas? Análisis Normalización Análisis semántico Simplificación

de

la

Reestructuración de la consulta

Estrategias de procesamiento de consultas distribuidas. El sistema debe de ser capaz de procesar consultas que hagan referencia a datos situados a mas de un nodo

Estrategias de procesamiento …
Realizar las operaciones de selección lo antes posible

Combinar el producto cartesiano con una operación de
selección subsiguiente cuyo predicado represente una condición de combinación, para formar una operación de combinación Utilizar la asociatividad de las operaciones binarias para

reordenar los nodos hoja de modo que los nodos hoja con
las operaciones de selección más restrictivas se ejecuten primero Realizar las operaciones de proyección lo antes posible Calcular una única vez las expresiones posibles

Benja_min_15@hotmail.com

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->