Tipos
de arquitectura
Centralizado
La
arquitectura centralizada es la más clásica. En ella, el SGBD está implantado en
una sola plataforma u ordenador desde donde se gestiona directamente, de modo
centralizado, la totalidad de los recursos. Se basa en tecnologías sencillas, muy
experimentadas y de gran robustez. También son aquellos que se ejecutan en un
único sistema informático sin interaccionar con ninguna otra computadora.
Características de las bases de datos centralizadas.
- Se almacena completamente en una
localidad central.
- No posee múltiples elementos de
procesamiento ni mecanismos de intercomunicación como las bases de datos
distribuidas.
- Los componentes de las bases de
datos centralizadas son: los datos, el software de gestión de bases de
datos y los dispositivos de almacenamiento secundario asociados.
- El problema de seguridad es fácil
de manejar en estos sistemas de bases de datos.
Cliente/servidor
Es un modelo
para el desarrollo de sistemas de información en el que las transacciones se
dividen en procesos independientes que cooperan entre sí para intercambiar
información, servicios o recursos. Se denomina cliente al proceso que inicia el
diálogo o solicita los recursos y servidor al proceso que responde a las
solicitudes.
Cada cliente
tiene un servidor directo al cual hace sus peticiones. La comunicación entre
los servidores ejecuta las transacciones y peticiones de los usuarios y esta es
transparente para ellos.
Entre las
principales características de la arquitectura cliente/servidor se pueden
destacar las siguientes:
- El servidor presenta a todos sus
clientes una interfaz única y bien definida.
- El cliente no necesita conocer la
lógica del servidor, sólo su interfaz externa.
- El cliente no depende de la
ubicación física del servidor, ni del tipo de equipo físico en el que se
encuentra, ni de su sistema operativo.
- Los cambios en el servidor
implican pocos o ningún cambio en el cliente.
Esta
arquitectura se puede clasificar en cinco niveles, según las funciones que
asumen el cliente y el servidor:
Primer nivel:
el cliente
asume parte de las funciones de presentación de la aplicación, ya que en el servidor aún hay programas que
se dedican a ese tipo de tareas. Dicha distribución se realiza mediante el uso
de productos para el "maquillaje" de las pantallas del mainframe3.
Esta técnica no exige el cambio en las aplicaciones orientadas a terminales,
pero dificulta su mantenimiento. Además, el servidor ejecuta todos los procesos
y almacena la totalidad de los datos
Segundo
nivel:
la aplicación
está soportada directamente por el servidor, excepto la presentación que es
totalmente remota y reside en el cliente. Los terminales del cliente soportan
la captura de datos, incluyendo una validación parcial de los mismos y una
presentación de las consultas
Tercer nivel:
La lógica de los procesos se divide entre los
distintos componentes del cliente y del servidor. El diseñador de la aplicación
debe definir los servicios y las interfaces del sistema de información de forma
que los papeles de cliente y servidor sean intercambiables, excepto en el
control de los datos que es responsabilidad exclusiva del servidor. En este
tipo de situaciones se dice que hay un proceso distribuido o cooperativo.
Cuarto nivel:
El cliente
realiza tanto las funciones de presentación como los procesos. Por su parte, el
servidor almacena y gestiona los datos que permanecen en una base de datos
centralizada. En esta situación se dice que hay una gestión de datos remota.
Quinto nivel:
El reparto de
tareas es como en el anterior y además el gestor de base de datos divide sus
componentes entre el cliente y el servidor. Las interfaces entre ambos están
dentro de las funciones del gestor de datos y, por lo tanto, no tienen impacto
en el desarrollo de las aplicaciones. En este nivel se da lo que se conoce como
bases de datos distribuidas.
TIPOS DE ARQUITECTURA CLIENTE-SERVIDOR:
ARQUITECTURA DE 2 CAPAS:
La arquitectura cliente/ servidor tradicional es una solución de 2
capas. La arquitectura de 2 capas consta de tres componentes distribuidos en
dos capas: cliente (solicitante de servicios) y servidor (proveedor de
servicios). Los tres componentes son:
- Interfaz de usuario.
- Gestión del procesamiento.
- Gestión de la base de datos.
Hay 2 tipos de arquitecturas cliente servidor de dos capas:
·
Clientes obesos (thick clients): La mayor parte de la lógica de la
aplicación (gestión del procesamiento) reside junto a la lógica de la
presentación (interfaz de usuario) en el cliente, con la porción de acceso a
datos en el servidor.
·
Clientes delgados (thin clients): solo la lógica de la
presentación reside en el cliente, con el acceso a datos y la mayoría de la
lógica de la aplicación en el servidor.
Es posible que un servidor funcione como cliente de otro servidor. Esto es
conocido como diseño de dos capas encadenado.
Limitaciones:
·
El número usuarios máximo es de 100. Más allá de este número de usuarios
se excede la capacidad de procesamiento.
·
No hay independencia entre la interfaz de usuario y los tratamientos, lo
que hace delicada la evolución de las aplicaciones.
·
Dificultad de relocalizar las capas de tratamiento consumidoras de
cálculo.
·
Reutilización delicada del programa desarrollado bajo esta arquitectura.
ARQUITECTURA DE 3 CAPAS:
La tercera capa (servidor intermedio) está entre el interfaz de usuario
(cliente) y el gestor de datos (servidor). La capa intermedia proporciona
gestión del procesamiento y en ella se ejecutan las reglas y lógica de
procesamiento. Permite cientos de usuarios (en comparación con sólo 100
usuarios de la arquitectura de 2 capas). La arquitectura de 3 capas es usada
cuando se necesita un diseño cliente / servidor que proporcione, en comparación
con la arquitectura de 2 capas, incrementar el rendimiento, flexibilidad,
mantenibilidad, reusabilidad y escalabilidad mientras se esconde la complejidad
del procesamiento distribuido al usuario.
Limitaciones:
Construir una arquitectura de 3 capas es una tarea complicada. Las
herramientas de programación que soportan el diseño de arquitecturas de 3 capas
no proporcionan todos los servicios deseados que se necesitan para soportar un
ambiente de computación distribuida. Un problema potencial en el diseño de
arquitecturas de 3 capas es que la separación de la interfaz gráfica de
usuario, la lógica de gestión de procesamiento y la lógica de datos no es
siempre obvia. Algunas lógicas de procesamiento de transacciones pueden
aparecer en las 3 capas. La ubicación de una función particular en una capa u
otra debería basarse en criterios como los siguientes:
- Facilidad
de desarrollo y comprobación.
- Facilidad
de administración.
- Escalabilidad
de los servidores.
- Funcionamiento
(incluyendo procesamiento y carga de la red).
Bases de datos distribuidas
Una Base de
Datos Distribuida (BDD) 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, los cuales tienen la capacidad
de procesamiento autónomo lo cual indica que puede realizar operaciones locales
o distribuidas. Un sistema de Bases de Datos Distribuida (SBDD) 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 acceder los datos en
cualquier parte de la red exactamente como si los datos estuvieran.
Las
características de las bases de las bases de datos son las siguientes:
Autonomía
Local: Los sitios distribuido deben ser autónomos, es decir que todas las
operaciones en un sitio dado se controlan en ese sitio.
No dependencia de un sitio central: No debe de
haber dependencia de un sitio central para obtener un servicio.
Operación
Continua: Nunca debería apagarse para que se pueda realizar alguna función,
como añadir un nuevo sitio.
Independencia con respecto a la localización:
No debe de ser necesario que los usuarios sepan dónde están almacenados físicamente
los datos, sino que más el usuario lo debe de ver como si solo existiera un
sitio local
Independencia
con respecto a la fragmentación: La fragmentación es deseable por razones de
desempeño, los datos, pueden almacenarse en la localidad donde se utilizan con
mayor frecuencia de manera que la mayor parte de las operaciones sean sólo
locales y se reduzca el tráfico en la red.
Independencia
de réplica: Si una relación dada (es decir, un fragmento dado de una relación)
se puede presentar en el nivel físico mediante varias copias almacenadas o
réplicas, en muchos sitios distintos.
No hay comentarios:
Publicar un comentario