DEJA TUS COMENTARIOS

................................................AQUÍ.......................................................

marzo 02, 2007

GUIA 2 (BASE DE DATOS DISTRIBUIDAS)


GUIA 2 (BASE DE DATOS DISTRIBUIDAS)


1. CONCEPTO DE DISTRIBUCIÓN

Aunque existen diferentes grados de distribución (Ejemplo, una base de datos centralizada con consulta distribuida, datos distribuidos en diferentes máquinas, etc.), asumiremos que una base de datos distribuida es aquella colección de bases de datos relacionadas y distribuidas en una red de datos (sitios).
En este escenario, cada base de datos puede trabajar independiente de las demás, cuando la transacción solo incluye datos de esa base de datos; o trabajar como parte integral de las demás bases de datos, cuando la transacción involucre a varios sitios.
Una base de datos distribuida tiene algunas ventajas, como la disponibilidad, al no depender de un solo sitio, si el sitio no está disponible, otro sitio cualquiera, que pueda responder a la solicitud de una transacción, puede reemplazar el sitio que se encuentra fuera de servicio; Puede tener mejor desempeño, ya que los sitios tendrán una porción de datos (la que les pertenece) y las consultas pueden apoyarse en que como hay varios sitios (computadores y bases de datos, es decir instancias), puede en algunos casos ser más eficiente al usar las ventajas del paralelismo (cada sitio procesa en paralelo la consulta y el resultado final podría entregarse más rápido)
Los problemas más importantes en el diseño de este tipo de arquitectura podrían ser:


  • Costos: el implementar una base de datos distribuida requiere asegurar canales de comunicación, lo que en algunos casos exige contratar redundancia en este tipo de servicios; En cada sitio debería existir un servidor y una instancia de la base de datos, lo que implica costos en hardware y licenciamiento de software; además podríamos incluir en este espacio, el problema de costo de tiempo de respuesta.
    Dado que una transacción requiere envío de datos de un sitio a otro, implica que el costo mayor está dado por el tiempo que requiere enviar los datos al sitio que debe entregar el resultado final (la velocidad del procesador es cercana a las millones de instrucciones por segundo, pero el envío de datos por un medio cualquiera de comunicación es mucho menor), por lo que se debe minimizar el tiempo de comunicación de datos.

  • Seguridad: Al tener sitios diferentes, usuarios diferentes, maquinas diferentes, el problema de seguridad se multiplica porque hay que asegurar que los datos se encuentren en un estado consistente siempre, y que solo aquellos usuarios autorizados puedan realizar su trabajo.

  • Complejidad: Las mismas características de las bases de datos centralizadas, las cuales permiten asegurar que los datos sean válidos, deben implementarse en este sistema distribuido, por lo que los algoritmos son mucho más complejos dado que hay muchas variables adicionales a tener en cuenta.
TIPOS DE DISTRIBUCION


DATOS

Datos son los hechos que describen sucesos y entidades."Datos" es una palabra en plural que se refiere a más de un hecho. A un hecho simple se le denomina "data-ítem" o elemento de dato.
Los datos son comunicados por varios tipos de símbolos tales como las letras del alfabeto, números, movimientos de labios, puntos y rayas, señales con la mano, dibujos, etc. Estos símbolos se pueden ordenar y reordenar de forma utilizable y se les denomina información.Los datos son símbolos que describen condiciones, hechos, situaciones o valores. Los datos se caracterizan por no contener ninguna información. Un dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que represente una cantidad, una medida, una palabra o una descripción.La importancia de los datos está en su capacidad de asociarse dentro de un contexto para convertirse en información. Por si mismos los datos no tienen capacidad de comunicar un significado y por tanto no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los datos deben convertirse en información para ofrecer un significado, conocimiento, ideas o conclusiones.

CONTROL

Se define control como el conjunto de procedimientos que aplicamos para que un sistema, desde un estado inicial, alcance cierto estado final y se mantenga en el o muy próximo, independientemente de los cambios en magnitudes externas o internas que puedan afectar."
El control de un sistema puede tener 2 finalidades distintas:
Regulación: consiste en mantener la salida constante independientemente de la variación de magnitudes externas. Ej: Mantener constante la orientación de una antena a un satélite.
Seguimiento de trayectorias: hacer que la variable de salida tenga en todo momento un valor tan próximo como sea posible al de alguna variable de entrada. ej: Controlar un robot móvil para que siga un camino establecido.


USUARIOS

Un usuario es la persona que utiliza o trabaja con algún objeto. Tiene varias relevancias

USUARIO FINAL

El usuario final de un producto informático (bien sea hardware o software), es la persona a la que va destinada dicho producto una vez ha superado las fases de desarrollo correspondientes.
Normalmente, el software se desarrolla pensando en la comodidad del usuario final, y por esto se presta especial interés y esfuerzo en conseguir una interfaz de usuario lo más clara y sencilla posible.

USUARIO REGISTRADO

Se denomina así a la persona que tiene derechos especiales en algún servicio de Internet por acreditarse en el mismo mediante un identificador y una clave de acceso, obtenidos previo registro en el servicio, de manera gratuita o de pago. Normalmente, un usuario registrado tiene asignada una cuenta propia que mantiene información personalizada del usuario en el servidor, (como puede ser dirección de e-mail y espacio correspondiente). También puede dar acceso a ciertos contenidos no accesibles al público en general, como por ejemplo un usuario registrado en un periódico on-line con acceso por suscripción

USUARIO ANÓNIMO:


Es usuario anónimo en informática aquel que navega en sitios web (o usa cualquier servicio de la red) sin autenticarse como usuario registrado. En algunos servicios en Internet se dispone de un modo de uso como usuario registrado y otro como usuario anónimo; normalmente, el usuario registrado goza de mayores privilegios.
El anonimato en Internet es uno se sus puntos fuertes, a la vez que motivo habitual de discusión. A los usuarios les gusta sentirse libres para expresarse, mientras que ciertos organismos quisieran un mayor control de todo el movimiento por la red para actuar con más eficacia contra la delincuencia on-line.

USUARIO BETA TESTER

En el proceso de desarrollo de software, existe un usuario intermedio entre el desarrollador y el usuario final que se encarga de comprobar y testear que el programa hace lo que tiene que hacer, reportando errores al programador/desarrollador, y es en gran medida responsable de que el programa llegue al usuario final sin errores.

INTERFAZ DEL USUARIO

La interfaz de usuario es la forma en que los usuarios pueden comunicarse con una computadora, y comprende todos los puntos de contacto entre el usuario y el equipo. Sus principales funciones son:

  • Manipulación de archivos y directorios
  • Herramientas de desarrollo de aplicaciones
  • Comunicación con otros sistemas
  • Información de estado
  • Configuración de la propia interfaz y entorno
  • Intercambio de datos entre aplicaciones
  • Control de acceso
  • Sistema de ayuda interactivo

Nos encontramos con dos tipos de interfaz de usuario:
  • Interfaces alfanuméricas (intérpretes de mandatos).
  • Interfaces gráficas de usuario (GUI, Graphics User Interfaces), las que permiten
comunicarse con el ordenador de una forma muy rápida e intuitiva. Y pueden ser de hardware o de software:
  • En el primer caso se trata de un conjunto de dispositivos que permiten la interacción hombre-máquina, de modo que permiten ingresar y tomar datos del ordenador.
  • También están las interfaces de software que son programas o parte de ellos que permiten expresar nuestros deseos al ordenador.
  • Sin embargo, no siempre se trata de interfaces intuitivas tal como el caso de las interfaces de línea de órdenes (CLI), que se encuentran por ejemplo en algunos sistemas operativos como los NOS de los Routers o algunos shell de Unix, DOS, etc.


3. TIPOS DE BASES DE DATOS DISTRIBUIDAS


HETEROGENEA

Las Bases de datos heterogéneas con un alto grado de autonomía local. Cada nodo en el sistema tiene sus propios usuarios, aplicaciones y datos locales y es el sistema el que trata con ellos directamente y sólo conecta con otros nodos en busca de información que
no tiene. Este tipo de base de datos se suele llamar sistema federado o federación. Se ha hecho cada día más popular en las organizaciones, tanto por su escalabilidad, su capacidad de mezclar distintos paquetes software y su reducido coste al añadir nuevos nodos cuando es necesario. A diferencia de los sistemas homogéneos, los sistemas heterogéneos pueden incluir diferentes SGBD en los nodos. Esto los hace atractivos en grandes corporaciones, ya que pueden mantener sus sistemas heredados antiguos (legacy systems) junto con los nuevos sistemas.

DDBMS HETEROGÉNEO

  • Esquema global único.
  • Modelo de datos y lenguaje de consultas común.
  • Esquema integrado.
  • Consultas reales distribuidas.

INTERFAZ HETEROGÉNEA

  • Acceso en línea a una única base de datos
  • No hay integración de bases de datos
  • El acceso usa un modelo de datos; el DBMS, otro




SISTEMA HOMOGÉNEO


Las bases de datos distribuidas homogéneas usan el mismo software de SGBD y tienen las mismas aplicaciones en cada nodo. Tienen un esquema común y pueden tener grados diversos de autonomía local. Pueden estar basadas en cualquier SGBD que soporte estas características, pero no puede haber más de un SGBD en el sistema. La autonomía local especifica cómo el sistema funciona desde la perspectiva de los usuarios y programadores. Por ejemplo, podemos tener un sistema con poca o sin autonomía local, donde todas las peticiones se envían a un nodo central, llamado gateway. Desde aquí se asigna al nodo que contiene esa información o aplicación requerida. Esto es lo típico que se ve con los mirrors de sitios web muy populares a los cuales una página central deriva las peticiones de sus usuarios dependiendo de su origen geográfico.


Son Sistemas Donde Se Utiliza Un Mismo SGBDD.

Si el proyecto parte de cero, es decir, no hay nada desarrollado, probablemente pueda usarse esta metodología. Digamos que una vez entendido el problema de información, es decir levantamiento de información, de procesos, reglas de juego, etc., podemos diseñas el MER (modelo entidad relación) del sistema.
En la base de datos distribuida surgen las primeras dudas: Donde almacenar el modelo?, en cada sitio?, que almacenamos en un sitio?.

Probablemente el esquema deba repartirse entre los sitios, para ello existe el concepto de fragmentación. La fragmentación es la ubicación de una parte de una o varias tablas del modelo en un sitio.

El fragmento puede ser horizontal, vertical o mixta.
Un fragmento vertical, usa la operación de álgebra relacional conocida como proyección.
Un fragmento horizontal, es generado por la operación del álgebra relacional conocida como selección.
Un fragmento mixto combina las dos operaciones mencionadas (selección y proyección).

No hay comentarios.: