Arquitectura de las BDD y Sistemas de BDD Homogéneas y Heterogéneas

Arquitectura de las BDD.

Es un sistema de software que permite la definición de bases de datos; así como la elección de las estructuras de datos necesarios para el almacenamiento y búsqueda de los datos, ya sea de forma interactiva o a través de un lenguaje de programación. Un SGBD relacional es un modelo de datos que facilita a los usuarios describir los datos que serán almacenados en la base de datos junto con un grupo de operaciones para manejar los datos.

Los SGBD relacionales son una herramienta efectiva que permite a varios usuarios acceder a los datos al mismo tiempo. Brindan facilidades eficientes y un grupo de funciones con el objetivo de garantizar la confidencialidad, la calidad, la seguridad y la integridad de los datos que contienen, así como un acceso fácil y eficiente a los mismos.



Diferencia entre bdd, sbdd y smbdd.

Al  estudiar  por  aparte  todos  y  cada  uno  de  los  ítems  dentro  de  BDD  (bases  de  datos distribuidas),  SBDD  (sistema  de  base  de  datos  distribuido)  y  SMBDD  (sistema  de  manejo de  bases  de  datos  distribuida),  podemos  encontrar una  diferencias  entre  estas  como  lo son,  que  las  BDD  son  diferentes  sitios  interconectados  por  un  red,  y  los  diferencia notablemente con el SBDD ya que, un usuario puede en cualquier sitio puede acceder los datos  en  cualquier  parte  de  la  red  como  si  los  datos  estuvieran  almacenados  en  su  sitio propio,  al  relacionarlo  con  el  tercer  término  tenemos  que  el  SMBDD  es    aquel  es  que  se encarga  del  manejo  de  BDD  y  proporciona  un  mecanismo  de  acceso  que  hace  que  la distribución   sea   transparente   a   los   usuarios,   esto quiere   decir   que   los   datos   se administrarían como si fueran en una sola computador

Función de una BDD.

Son bases  de  datos  sobre  una red  distribuidas  lógicamente.  Por  medio  de  esta  red  se comunican a cada  uno  de  los  ordenadores  que  integran  el  sistema  de  Bases  de  Datos distribuido  se  le  conoce  como nodo del  sistema  y  pueden  ser  administrados  de  forma diferente. 

Una característica importante de las Bases de Datos Distribuidas es que realizan dos tipos de transacciones bien diferenciados:

  • Transacciones Locales: cuando se accede a los datos del único emplazamiento donde se inició la transacción.
  • Transacciones  Globales:  Cuando  se  accede  a  datos  de  emplazamientos  distintos  al emplazamiento donde se inició la transacción. 

Niveles.

La arquitectura  de  las  bases  de  datos  se  encuentran determinadas  por  los  siguientes niveles:

  1. En el nivel interno se describe la estructura física de la base de datos mediante un esquema interno. Este esquema se especifica mediante un modelo físico y describe todos  los  detalles  para  el  almacenamiento  de  la  base  de  datos,  así  como  los métodos de acceso. 
  2. En el nivel conceptual se describe la estructura de toda la base de datos para una comunidad  de  usuarios  (todos  los  de  una  empresa  u  organización),  mediante  un esquema  conceptual.  Este  esquema  oculta  los  detalles  de  las  estructuras  de almacenamiento  y  se  concentra  en  describir  entidades,  atributos,  relaciones, operaciones  de  los  usuarios  y  restricciones.  En  este  nivel  se  puede  utilizar  un modelo conceptual o un modelo lógico para especificar el esquema.
  3. En el nivel externo  se describen varios esquemas externos o vistas de usuario. Cada esquema externo describe la parte de la base de datos que interesa a un grupo de usuarios  determinado  y  oculta  a  ese  grupo  el  resto  de  la  base  de  datos.  En  este nivel  se  puede  utilizar  un  modelo  conceptual  o  un  modelo  lógico  para  especificar los esquemas. 

Al  tener  en  cuenta  estos  tres  niveles,  se  debe  tener  en  cuenta  que  para  tener  una buena   distribución   de   los   datos,   se   deben   seguir   ciertos   pasos,   esto   se   verá  repercutido  en  que  en  el  momento  de  hacer  uso  de  esta  base  de  datos,  se  vea  la eficacia  de  la  misma  y  la  rapidez    que  maneje,  ya  que  muchas  veces,  cuando  se manejan  datos,  existen  complicaciones,  como  por  ejemplo  la  saturación  de  datos, cuando se manejan diferentes puntos en una misma red. La tener una buena distribución de los datos en la red, haremos que estos problemas no existan.

Ventajas de las Base de Datos Distribuidas

  • Descentralización.-En un sistema centralizado/distribuido, existe un administrador que  controla  toda  la  base  de  datos,  por  el  contrario  en  un  sistema  distribuido existe  un  administrador  global  que  lleva  una  política  general  y  delega  algunas funciones  a  administradores  de  cada  localidad  para  que  establezcan  políticas locales y así un trabajo eficiente.
  • Economía: Existen dos aspectos a tener en cuenta. El primero son los costes de comunicación; si las bases de datos están muy dispersas  y  las  aplicaciones  hacen  amplio  uso  de  los  datos  puede  resultar más económico dividir la aplicación y realizarla localmente. El  segundo  aspecto  es  que  cuesta  menos  crear  un  sistema  de  pequeños ordenadores con la misma potencia que un único ordenador. 
  • Mejora  de  rendimiento: Pues  los  datos  serán  almacenados  y  usados  donde  son generados, lo cual permitirá distribuir la complejidad del sistema en los diferentes sitios de la red, optimizando la labor. 
  • Mejora  de  fiabilidad  y  disponibilidad:  La  falla  de  uno  o  varios  lugares  o  el de  un enlace  de  comunicación  no  implica  la  inoperatividad  total  del  sistema,  incluso  si tenemos   datos   duplicados   puede   que   exista   una   disponibilidad   total   de   los servicios. 
  • Crecimiento: Es  más  fácil  acomodar  el  incremento  del  tamaño  en  un  sistema distribuido,   por   que   la   expansión   se   lleva   a   cabo   añadiendo   poder   de procesamiento y almacenamiento en la red, al añadir un nuevo nodo. 
  • Flexibilidad: Permite acceso local y remoto de forma transparente. 
  • Disponibilidad:  Pueden  estar  los  datos  duplicados  con  lo  que  varias  personas pueden acceder simultáneamente de forma eficiente. El inconveniente, el sistema administrador  de  base  de  datos  debe  preocuparse  de  la  consistencia  de  los mismos. 
  • Control  de  Concurrencia: El  sistema  administrador  de  base  de  datos  local  se encarga de manejar la concurrencia de manera eficiente. 

Desventajas  de las base de datos distribuidas.

  • El rendimiento que es una ventaja podría verse contradicho, por la naturaleza de la carga  de  trabajo,  pues  un  nodo  puede  verse  abrumado,  por  las  estrategias utilizadas  de  concurrencia  y  de  fallos,  y  el  acceso  local  a  los  datos.  Se  puede  dar esta   situación cuando   la   carga   de   trabajo   requiere   un   gran   número   de actualizaciones    concurrentes    sobre    datos    duplicados    y    que    deben    estar distribuidos. 
  • La confiabilidad de los sistemas distribuidos, esta entre dicha, puesto que, en este tipo  de  base  de  datos  existen  muchos  factores  a  tomar  en  cuanta  como:  La confiabilidad  de  los  ordenadores,  de  la  red,  del  sistema  de  gestión  de  base  de datos  distribuida,  de  las  transacciones  y  de  las  tazas  de  error  de  la  carga  de trabajo. 
  • La  mayor  complejidad,  juega  en  contra  de  este  tipo  de  sistemas,  pues  muchas veces se traduce en altos gastos de construcción y mantenimiento. Esto se da por la  gran  cantidad  de  componentes  Hardware,  muchas  cosas  que  aprender,  y muchas aplicaciones susceptibles de fallar. Por ejemplo, el control de concurrencia y recuperación de fallos, requiere de personal muy especializado y por tal costoso. 
  • El  procesamiento  de  base  de  datos  distribuida  es  difícil  de  controlar,  pues  estos procesos  muchas  veces se  llevan  a  cabo  en  las  áreas  de  trabajo  de  los usuarios, e incluso  el  acceso  físico  no  es  controlado,  lo  que genera  una  falta  de  seguridad  de los datos.


Sistemas de BDD Homogéneas y Heterogéneas.

Base de datos homogénea.

Los sistemas de bases de datos distribuidos homogéneos le aparecen al usuario como un solo sistema y son mucho más fáciles de diseñar y administrar. Para que un sistema de base de datos distribuido sea homogéneo, las estructuras de datos deben ser idénticas o compatibles en cada ubicación. La aplicación de base de datos utilizada en cada ubicación también debe ser idéntica o compatible. En una base de datos homogénea, todos los sitios almacenan los datos de forma idéntica. El sistema operativo, el DBMS y las estructuras de datos utilizados son todos iguales en todos los sitios. Esto los hace fáciles de administrar.

Base de datos heterogénea.

En una base de datos distribuida heterogénea, el hardware, los sistemas operativos o las aplicaciones de la base de datos pueden ser diferentes en cada ubicación. Los diferentes sitios pueden utilizar diferentes modelos de datos y software. Una diferencia en el modelo de datos puede dificultar el procesamiento de consultas. Esto puede provocar problemas en el procesamiento de transacciones. El sitio puede ser incompatible o no estar familiarizado con los otros sitios. Los usuarios de una ubicación pueden leer datos en otra ubicación, pero no cargarlos ni modificarlos. Para resolver estos problemas, una base de datos heterogénea para diferentes sitios requiere traducciones para comunicarse. Las bases de datos distribuidas heterogéneas suelen ser difíciles de usar, lo que las hace económicamente inviables para muchas empresas.

Almacenamiento de datos distribuidos

Hay dos formas de almacenar datos en los diferentes sitios. Estos son:

Replicación: La replicación de la base de datos garantiza que los datos en las bases de datos distribuidas permanezcan actualizados. Todos los datos se almacenan de forma redundante en 2 o más sitios. Si la base de datos completa se almacena en todos los sitios, hablamos de una base de datos totalmente redundante. En la replicación, los sistemas en realidad mantienen copias de los datos.
Los datos replicados se pueden dividir en dos categorías: datos de solo lectura y de escritura. Las versiones de solo lectura de datos replicados permiten revisiones solo en el primer servidor de sitio designado. Luego, los datos se ajustan en los otros servidores posteriores. Los datos grabables se pueden cambiar, pero el primer servidor del sitio se cambia inmediatamente.
La gran ventaja de esto es que la disponibilidad de datos en las distintas ubicaciones es alta. Las consultas se pueden procesar en paralelo de esta manera.
Sin embargo, también existen inconvenientes. Los datos deben actualizarse constantemente. Cualquier cambio realizado en un sitio debe transferirse a todos los demás sitios o resultará en una inconsistencia. Esto supone una gran carga para los sistemas y la red. Además, la verificación de simultaneidad se vuelve mucho más compleja porque el bloqueo de registros con acceso simultáneo debe realizarse en todos los sitios.

Fragmentación: En este enfoque, los datos se fragmentan, es decir, se dividen en partes más pequeñas. Los fragmentos se distribuyen y almacenan en los diferentes sitios donde se necesitan. Los fragmentos se distribuyen de forma inteligente para que puedan utilizarse para reconstruir los datos originales si falla uno de los sitios. Entonces no hay pérdida de datos. 
La ventaja de la fragmentación es que no se hacen copias de los datos mientras la base de datos permanece consistente. En algunos casos, se utiliza un enfoque híbrido para la fragmentación y la replicación.

Características.

En las bases de datos distribuidas heterogéneas puede que los diferentes sitios utilicen esquemas y software de gestión de sistemas de bases de datos diferentes. Puede que algunos sitios no tengan información de la existencia del resto y que sólo proporcionen facilidades limitadas para la cooperación en el procesamiento de las transacciones. 
La heterogeneidad se debe a que los datos de cada BD son de diferentes tipos o formatos. El enfoque heterogéneo es más complejo que el enfoque homogéneo y favorece el enfoque ascendente. Es una tecnología reciente y aún existen pocas en el mercado. La Heterogeneidad de las BD es inevitable cuando diferentes tipos de BD coexisten en una organización que trata de compartir datos entre éstas. Investigadores han enfocado sus esfuerzos en la exploración de un esquema global que trate de resolver los problemas de la Heterogeneidad, la definición de Protocolos Ínter operables y la integración de las BD. Las Bases de Datos Distribuidas Heterogéneas se componen de un conjunto de localidades, cada una de las cuales mantiene un SBD local, éstas pueden procesar transacciones locales (aquellas que se realizan sobre esa localidad). 
El tratamiento de la información ubicada en bases de datos distribuidas heterogéneas exige una capa de software adicional por encima de los sistemas de bases de datos ya existentes. Esta capa de software se denomina sistema de bases de datos múltiples. Puede que los sistemas locales de bases de datos empleen modelos lógicos y lenguajes de definición y de tratamiento de datos diferentes, y que difieran en sus mecanismos de control de concurrencia y de administración de las transacciones. Los sistemas de bases de datos múltiples crean la ilusión de la integración lógica de las bases de datos sin necesidad de su integración física.

A continuación se muestra un video para una mejor explicación del tema.



Conclusión.

A lo que podemos concluir con lo visto en clase es que tomando en cuenta las características que el negocio requiera y el presupuesto con el que se cuente, es lo que se debe tomar en cuenta para desarrollar de manera adecuada y mejor posible la Base de Datos.
Cada vez va aumentando la complejidad del desarrollo y transacción de la información, pero con el debido mantenimiento se va disminuyendo los posibles errores.

Referencias bibliográficas.

Toda la información que se encuentra aquí (a excepción de la conclusión) fue sacada de los siguientes links, muchas gracias a esas personas por compartir su información💜

Comentarios