bases de datos distribuidas
DESCRIPTION
I.U.T.A. Ampliación - Guarenas.TRANSCRIPT
Bienvenidos Los alumnos de la mención informática “Manuel García”, “Brayyan Yanes” del “I.U.T.A. Ampliación Guarenas”, se complacen en presentar la edición de la revista “Base de Datos Distribuidas”.
En la que podemos encontrar temas tales como: Base de Datos Distribuida (BDDD), Principios Fundamentales, Arquitectura de un Sistema de Base de Datos Distribuida, Componentes, Consideraciones al Distribuir la Base de Datos, Ventajas, Desventajas, entre otros…
Índice de Artículos Base de Datos Distribuida (BDDD) Principios Fundamentales Arquitectura de un Sistema de Base de Datos Distribuida
Componentes
Consideraciones al Distribuir la Base de Datos Ventajas & Desventajas Seguridad Rendimiento Normalización Manejadores (DBMS)
Página 4
Página 5
Página 6
Página 7
Página 8
Página 9
Página 10
Página 11
Base de Datos Distribuida (BDDD)
Es un conjunto de múltiples bases de datos lógicamente relacionadas las cuales se encuentran distribuidas en diferentes espacios lógicos. Tienen la capacidad de realizar procesamiento autónomo, esto permite realizar operaciones locales o distribuidas.
Principios Fundamentales
- Autonomía local.
- No dependencia de un sitio central.
- Operación continúa.
- Independencia con respecto a la localización.
4
- Independencia con respecto a la fragmentación.
- Independencia de réplica.
- Procesamiento distribuido de consultas.
- Manejo distribuido de transacciones.
- Independencia con respecto al equipo.
- Independencia con respecto al sistema operativo.
- Independencia con respecto a la red. - Independencia con respecto al DBMS.
Arquitectura de un Sistema de Base de Datos Distribuida
En un sistema de bases de datos distribuidas, existen varios factores que deben tomar en consideración que definen la arquitectura del sistema: - Distribución: Los componentes del sistema están localizados en la misma computadora o no. - Heterogeneidad: Un sistema es heterogéneo cuando existen en él componentes que se ejecutan en diversos sistemas operativos, de diferentes fuentes, etc. - Autonomía: Se puede presentar en diferentes niveles, los cuales se describen a continuación: - Autonomía de diseño: Habilidad de un componente para decidir cuestiones relacionadas a su propio diseño. - Autonomía de comunicación: Habilidad de un componente para decidir cómo y cuándo comunicarse con otros SMBD. - Autonomía de ejecución: Habilidad de un componente para ejecutar operaciones locales como quiera
5
Componentes
- Hardware involucrado
- Software
- Sistema Manejador de Base de Datos Distribuida (DDBMS)
- Administrador de transacciones distribuidas (DTM)
- Sistema Manejador de base de datos (DBMS) - Nodos
6
Consideraciones al Distribuir la Base de Datos
Existen varias razones para construir sistemas distribuidos de bases de datos que incluyen compartir la información, fiabilidad y disponibilidad y agilizar el procesamiento de las consultas. Pero también tiene sus desventajas, como desarrollos de software más costosos, mayor posibilidad de errores y costos extras de procesamiento.
- Ventajas para el usuario final
- Ventajas para el software de red
- Ventajas para el administrador
- Desventajas para el usuario final
- Desventajas para el software de red - Desventajas para el administrador
7
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.
Ventajas & Desventajas Ventajas - Adaptación a la organización de la institución (unión de compañías/descentralización), respondiendo a cambios - Almacenar los datos donde son generados y/o usados, la mayor parte locales - Proporcionar autonomía local, controlándose desde cada nodo. Política general contra política local - Costes de comunicación y de creación de pequeños sistemas - Flexibilidad, acceso desde distintos lugares y por distintas personas a la vez - Fiabilidad/disponibilidad, en un determinado momento / intervalo. Varios sitios, duplicaciones, evitan fallos. -Mejora del rendimiento, BD más pequeñas, operaciones de menor volumen -Crecimiento incremental, añadiendo poder de procesamiento y almacenamiento.
8
Desventajas - Complejidad del sistema, desarrollo de software más costoso, problemas de sincronización, dificultad para conocer la corrección de los algoritmos paralelos, detección de caídas de nodos - Dependencia de la red de comunicaciones, sobrecarga de procesamiento de mensajes - Dificultad de diseño, fases adicionales - Poca madurez de los productos comerciales, orientados a replicación - Funciones de administración compleja, sincronización y coordinación - Dificultad de cambio, inexistencia de metodologías - Personal especializado
Seguridad
Desde hace ya varios años las bases de datos son ampliamente utilizadas en departamentos de gobiernos, empresas comerciales, bancos, hospitales, etc. Actualmente se está cambiando el esquema bajo el cual 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 prácticas de seguridad ya que el ambiente ya no es tan controlado como
el esquema antiguo.
9
Rendimiento
Los datos generalmente se ubican cerca del sitio con mayor demanda, también los sistemas trabajan en paralelo, lo cual permite balancear la carga en los servidores.
Normalización
En la regla N°11 de normalización se explica que el sistema debe soportar este tipo de base de datos.
El sistema debe poseer un lenguaje de datos que pueda soportar que la base de datos esté distribuida físicamente en distintos lugares sin que esto afecte o altere a los programas de aplicación.
El soporte para bases de datos distribuidas significa que una colección arbitraria de relaciones, bases de datos corriendo en una mezcla de distintas máquinas y distintos sistemas operativos y que esté conectada por una variedad de redes, pueda funcionar como si estuviera disponible como en una única base de datos en una sola máquina.
El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación al modelo relacional.
Las bases de datos relacionales se normalizan para:
Evitar la redundancia de los datos.
Evitar problemas de actualización de los datos en las tablas.
Proteger la integridad de los datos.
10
Primera Forma Normal (1FN)
La tabla contiene una clave primaria única.
La clave primaria no contiene atributos nulos.
No debe existir variación en el número de columnas.
Los Campos no clave deben identificarse por la clave (Dependencia Funcional)
Debe Existir una independencia del orden tanto de las filas como de las columnas, es decir, si los datos cambian de orden no deben cambiar sus significados
Segunda Forma Normal (2FN)
Una relación está en 2FN si está en 1FN
y si los atributos que no forman parte de
ninguna clave dependen de forma
completa de la clave principal. Es decir
que no existen dependencias parciales.
Tercera Forma Normal (3FN)
La tabla se encuentra en 3FN si es 2FN y
si no existe ninguna dependencia
funcional transitiva entre los atributos que
no son clave.
Cuarta Forma Normal (4FN)
Una tabla se encuentra en 4FN si, y sólo
si, para cada una de sus dependencias
múltiples no funcionales X->->Y, siendo
X una súper-clave que, X es o una clave
candidata o un conjunto de claves
primarias.
Quinta Forma Normal (5FN)
La tabla está en 4FN
No existen relaciones de dependencias no triviales que no siguen los criterios de las claves. Una tabla que se encuentra en la 4FN se dice que está en la 5FN si, y sólo si, cada relación de dependencia se encuentra definida por las claves candidatas.
Manejadores (DBMS)
SQL
El lenguaje de consulta estructurado o
SQL (por sus siglas en inglés structured
query language) es un lenguaje
declarativo de acceso a bases de datos
relacionales que permite especificar
diversos tipos de operaciones en éstas.
Diseñado por: Donald D. Chamberlin
Raymond F. Boyce
Desarrollador: IBM
11
Oracle Es un sistema de gestión de base de
datos objeto-relacional (o ORDBMS por
el acrónimo en inglés de Object-
Relational Data Base Management
System), desarrollado por Oracle
Corporation.
Informix
Es una familia de productos RDBMS de
IBM, adquirida en 2001 a una compañía
(también llamada Informix o Informix
Software) cuyos orígenes se remontan a
1980.