viernes, 20 de marzo de 2015

Actividad #12

Sistema de Gestión de Base de Datos Distribuida
Un sistema de gestión de bases de datos distribuidas (SGBDD) es un Sistema de Gestión de bases de datos que gestiona la BD distribuida
Funcionalidades adicionales de un SGBDD
  • Accede a sitios remotos y transmite consultas y datos a través de varios sitios mediante una red de comunicación.
  • Almacena el esquema de distribución y replicación de los datos en el catalogo del sistema.
  • Establece las estrategias de ejecución de las consultas y las transacciones que acceden a los datos en más de un sitio.
  • Decide sobre cual copia de los datos replicados acceder.
  • Mantiene la consistencia de las copias de los datos replicados.
  • Realiza la recuperación ante los fallos.

Oracle
es una potente herramienta cliente/servidor para la gestión de Bases de Datos. Explicamos la herramienta y las ayudas que ofrece al desarrollador.
Oracle es básicamente una herramienta cliente/servidor para la gestión de Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran potencia que tiene y su elevado precio hace que sólo se vea en empresas muy grandes y multinacionales, por norma general. En el desarrollo de páginas web pasa lo mismo: como es un sistema muy caro no está tan extendido como otras bases de datos, por ejemplo, Access, MySQL, SQL Server, etc.
Microsoft SQL Server 
es un sistema para la gestión de bases de datos producido por Microsoft basado en el modelo relacional. Sus lenguajes para consultas son T-SQL y ANSI SQL. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes sistemas gestores de bases de datos como son OraclePostgreSQL o MySQL.
PostgreSQL
es un Sistema de gestión de bases de datos relacional orientado a objetos y libre, publicado bajo la licencia BSD. Como muchos otros proyectos de código abierto, el desarrollo de PostgreSQL no es manejado por una empresa y/o persona, sino que es dirigido por una comunidad de desarrolladores que trabajan de forma desinteresada, altruista, libre y/o apoyados por organizaciones comerciales. Dicha comunidad es denominada el PGDG (PostgreSQL Global Development Group).
MySQL 
es un sistema de gestión de bases de datos relacional, multihilo y multiusuario con más de seis millones de instalaciones. MySQL AB—desde enero de 2008 una subsidiaria de Sun Microsystems y ésta a su vez de Oracle Corporation desde abril de 2009— desarrolla MySQL como software libre en un esquema de licenciamiento dual.

Resumen 1: Bases de datos Distribuidas(BDD)
Sistema de computación distribuido: elementos de procesamiento que cooperan en la ejecución de tareas, interconectados por una red de ordenadores.
– No han de ser homogéneos
– Dividen un problema en otros más manejables y los resuelven de modo coordinado
BD distribuida (BDD): son varias BD interrelacionadas lógicamente y situadas en diferentes nodos de una red de ordenadores.
SGBD distribuido: el que gestiona BD distribuidas de forma transparente para el usuario (éste ve las BD como si fueran una sola BD centralizada)
Ventajas de las BDD:
– Localización transparente de los datos: las instrucciones no dependen de dónde se ejecutan ni de dónde se sitúan los datos
– Transparencia en los nombres: un objeto se accede por su nombre, sin ambigüedad y sin especificar nada más.
– Transparencia de fragmentación: fragmentación horizontal es distribuir una tabla en varios conjuntos de tuplas (cada uno en un ordenador). La vertical en distribuir la tabla en conjuntos de atributos. La consulta sobre la tabla se transforma de modo automático en varias consultas sobre sus fragmentos
Fragmentar: decidir dónde situar las partes de la BDD 
– Se puede plantear top-down (como aquí) o bottom-up 
• Idea simple: situar cada tabla en un ordenador distinto
La replicación mejora la disponibilidad de los datos
• Caso extremo: tener una réplica de la BD completa en cada sitio (ordenador):
– Ventajas: mejora el rendimiento local y global además de la disponibilidad (con un sitio activo se accede a toda la BD) 
– Inconvenientes: actualizaciones más costosas (se deben realizar en todas las réplicas para mantener la coherencia). El control de concurrencia y recuperación es también más costoso.
Esquema de replicación: describe qué se replica
Asignación: dónde se sitúan los fragmentos y réplicas
– La elección del lugar y el grado de replicación depende de los objetivos de rendimiento y disponibilidad. También del tipo de transacciones y su frecuencia.
– Encontrar una solución óptima o incluso una buena es un problema complejo

Resumen 2: Diseño de un sistema gestor de base de datos distribuida basado en Oracle9i
Una BDD (base de datos distribuida) a “una colección lógicamente interrelacionada de datos compartidos (junto con una descripción de estos datos) físicamente distribuidas por una red informática”

Un SGBDD se compone de una única base  de datos lógica, que físicamente está dividida en fragmentos ubicados en nodos distintos e interconectados mediante una red de comunicaciones.
La diferencia entre SGBD distribuido y SGBD paralelo definido como “un SGBD  que se ejecuta sobre múltiples procesadores y utilizando múltiples discos y que está diseñado para ejecutar las operaciones en paralelo”
El factor más importante que diferencia a  unos SGBDD de otros es la transparencia.
Esto supone que no se requiere soporte para la manipulación de datos (transparente para el usuario) pero si se requieren operaciones de definición de datos (FRAGMENT, REPLICATE).
Desde el punto de vista académico los dos tipos de software conocidos son:
•  Microsoft Access, con un SGBD muy sencillo porque da soporte a una base de datos de oficina muy poco sofisticada. No proporciona funcionalidad de BDD, pero se pueden implementar módulos que simulen la fragmentación, replicación y consultas distribuidas. Sin embargo, no se garantiza la fiabilidad del SGBDD desarrollado.
•  MySQL, no proporciona actualmente soporte alguno para los BDD verdaderos.
•  Oracle9i, (KOCH, G., 2003); no ofrece utilidades para fragmentar, replicar y realizar consultas optimizadas, pero se  la ha elegido como plataforma para desarrollar la transparencia debido a sus prestaciones como SGBD.
El catálogo en una base de datos centralizada proporciona la información relativa a las relaciones, vistas e índices se almacena en un CATALOGO o DICCIONARIO DE DATOS.
Fragmentación de la base de datos original: La fragmentación debe poder ser mixta y derivada con asignación de los fragmentos a distintos nodos. La fragmentación mixta es una combinación de horizontal y vertical. La fragmentación horizontal se aplica cuando se extraen fragmentos por selección de tuplas que cumplan una determinada condición.  La fragmentación vertical se aplica cuando se extraen fragmentos por selección de atributos de todas las tuplas. Por tanto, la fragmentación mixta se aplica a la selección de varios  atributos de las tuplas que cumplan una determinada condición. La fragmentación derivada es aquella que afecta a más de una tabla porque el criterio de fragmentación de una tabla afecta a atributo(s) que actúa(n) como clave extranjera en otra(s).






No hay comentarios.:

Publicar un comentario