Sistemas Distribuidos y Cliente-Servidor - prof.usb.ve.

Anuncio
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
SISTEMAS DE INFORMACIÓN II
TEORÍA
CONTENIDO:
EL PROCESO DE DISEÑO DE SISTEMAS DISTRIBUIDOS
MANEJANDO LOS DATOS EN LOS SISTEMAS DISTRIBUIDOS
DISEÑANDO SISTEMAS PARA REDES DE ÁREA LOCAL
DISEÑANDO SISTEMAS PARA ARQUITECTURAS
CLIENTE/SERVIDOR
ARQUITECTURAS CLIENTE/SERVIDOR
MODELAJE LÓGICO CON TABLAS DE DECISIÓN
Material diseñado y elaborado por:
Prof. Luis Eduardo Mendoza M.
Material revisado por:
Prof. María A. Pérez de Ovalles
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
EL PROCESO DE DISEÑO DE
SISTEMAS DISTRIBUIDOS
• La primera diferencia que tienen los sistemas distribuidos con
los sistemas centralizados, radica en que como el sistema está
distribuido en dos o más localidades, varios aspectos de diseño
deben ser considerados, tales como: confiabilidad, disponibilidad y sobrevivencia del sistema cuando sea implementado.
• Para crear diseños efectivos, es necesario conocer y entender
las características de las arquitecturas comúnmente usadas
para soportar los sistemas distribuidos y compartir datos.
• Hay que decidir si se quiere particionar los datos y el
procesamiento a lo largo de varias localidades.
• Las capacidades y los aspectos relacionados con las tecnologías
que pueden ser usadas para upsize, downsize y, distribuir SI y
datos, son fundamentales para entender como migrar de
diseños y aplicaciones centralizadas a ambientes de
computación distribuidos y multiproceso.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
EL PROCESO DE DISEÑO DE
SISTEMAS DISTRIBUIDOS
Cuando se diseñan sistemas distribuidos, debe generarse documentación que consolide la información a considerar cuando se implemente físicamente el sistema diseñado. Los tipos de informaciones que deben
ser consideradas cuando se implementa un sistema distribuido son:
1) Descripción de la localidad (para cada una). Información
geográfica, localización física, información de la infraestructura,
características del personal (entrenamiento, Habilidades, etc.), otros.
2) Descripción del uso de los datos (para cada localidad). Elementos
de datos usados, elementos de datos creados, elementos de datos
actualizados, elementos de datos eliminados.
3) Descripción de los Procesos del Negocio (para cada localidad).
Lista de los procesos y descripción de los procesos.
4) Contraste de las alternativas de arquitectura del SI para la
localidad, los datos y los procesos necesarios (para cada
localidad). Pros y contras del soporte tecnológico, pros y contras de
la ausencia de red -sistema local-, pros y contras de distintas
configuraciones de distribución, otros pros y contras.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
MANEJANDO LOS DATOS EN LOS
SISTEMAS DISTRIBUIDOS
BASE DE DATOS DISTRIBUIDA. Una única base de datos lógica que es
esparcida físicamente a través de las computadoras ubicadas en múltiples localidades, conectadas por un enlace de comunicación de datos.
VENTAJAS Y DESVENTAJAS DE LAS BASES DE DATOS DISTRIBUIDAS
VENTAJAS
DESVENTAJAS
Incrementa la confiabilidad del sistema debido
a la redundancia
Costo y complejidad del software, dado que se
requiere un software más complejo para
ambientes distribuidos
Control local de los datos, lo que tiene a
promover mejoras en la integridad y la
administración de los datos
Mayor procesamiento para intercambiar
mensajes entre las localidades
Crecimiento modular de las aplicaciones y las
bases de datos sin interrupciones para los
usuarios existentes
Integridad de los datos, dado que es más difícil
controlar por las múltiples y dispersas copias
de los datos
Bajos costos de comunicación por la reducción
del tráfico
Baja velocidad de respuesta si los datos y la
aplicación no están distribuidos
apropiadamente de acuerdo con su uso
Alta velocidad de respuesta dado que la
mayoría de las aplicaciones usan datos locales
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
DISEÑANDO SISTEMAS PARA
REDES DE ÁREA LOCAL
MODELO SERVIDOR DE ARCHIVO
Un dispositivo maneja las operaciones con
los archivos y es compartido por cada PC
cliente conectado a la red.
LIMITACIONES DEL
SERVIDOR DE ARCHIVOS
1) Excesivo movimiento de lados.
2) Es necesario contar con una poderosa
estación de trabajo para el cliente.
3) Requiere control descentralizado de los
datos.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
DISEÑANDO SISTEMAS PARA
ARQUITECTURAS CLIENTE/SERVIDOR
• ARQUITECTURA CLIENTE/SERVIDOR. Un ambiente computacional
basado en una red (LAN o WAN) en la que un servidor central de base de
datos, o un “motor” o “dispositivo”, maneja todos los comandos de base de
datos enviados a él desde las estaciones de trabajo cliente, y aplicaciones
de programas en cada cliente concentran las funciones de interfaz con el
usuario.
• “MOTOR” DE BASE DE DATOS (Database engine). La parte (back-end)
del sistema de base de datos cliente/servidor que se encuenra en el
servidor y provee el procesamiento de la base de datos y comparte las
funciones de acceso.
• CLIENTE. La parte (front-end) del sistema de base de datos
cliente/servidor que provee la interfaz del usuario y las funciones de
manipulación de datos.
• INTERFAZ DE PROGRAMA DE APLICACIÓN (Application Program
Interface -API-). Software que le permite a una plataforma de desarrollo
programas específicos front-end comunicarse con un “motor” de base de
datos particular, cuando las partes fornt-end y back-end no han sido
construidas para ser compatibles.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
DISEÑANDO SISTEMAS PARA
ARQUITECTURAS CLIENTE/SERVIDOR
Entre los beneficios al adoptar una arquitectura cliente/servidor, están:
1) Permite a las compañías apalancarse en los beneficios de la tecnología de
la microcomputación. Actualmente, las estaciones de trabajo tienen gran
capacidad de computo a una fracción del costo de los mainframes.
2) Permite mayor procesamiento de información en el sitio donde ésta es
generada, mejorando los tiempos de respuesta y reduciendo el tráfico en
la red.
3) Facilita el uso de interfaces gráficas para los usuarios y permite el trabajo
con aplicaciones de presentaciones visuales en las estaciones de trabajo.
4) Permite y promueve la utilización de sistemas abiertos.
En la arquitectura cliente/servidor
sólo se transfieren (del servidor) los
datos requeridos después de una
petición de un cliente.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
SELECCIONANDO ENTRE SERVIDORES DE ARCHIVOS
Y ARQUITECTURAS CLIENTE/SERVIDOR
Tanto los servidores de archivos como las arquitecturas cliente/servidor usan
computadoras personales y estaciones de trabajo, y están interconectadas
usando redes LAN o WAN. Sin embargo, presentan grandes diferencias.
ALGUNAS DIFERENCIAS ENTRE LOS SERVIDORES DE ARCHIVOS
Y LAS ARQUITECTURAS CLIENTE/SERVIDOR
CARACTERÍSTICA
SERVIDOR DE ARCHIVOS
CLIENTE/SERVIDOR
Procesamiento
Sólo el cliente
Ambos (cliente y servidor)
Acceso de datos
concurrente
Bajo – Manejado por cada
cliente
Alto – Manejado por el
servidor
Uso de la red
Transferencia de grandes
archivos y datos
Transferencia eficiente de
datos
Seguridad e integridad
de la base de datos
Bajo – Manejado por cada
cliente
Alto – Manejado por el
servidor
Mantenimiento del
software
Bajo – El software cambia
sólo en el servidor
Mixto – Algunas partes deben
ser elaboradas para cada
cliente
Flexibilidad del sistema
de SW y el HW
Cliente y servidor
desconectados y pueden ser
mezclados
Necesario para obtener una
gran coordinación entre el
cliente y el servidor
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
Existe una clara tendencia en el diseño físico de sistemas, de
moverse desde sistemas centrales mainframe y aplicaciones
individuales en PC, hacia algunas formas de sistemas que
distribuyen los datos y el procesamiento a través de múltiples
computadoras. Actualmente muchas organizaciones están
incursionando en los ambientes cliente/servidor, teniendo éxito
en sus esfuerzos con la tecnología existente.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
FORMAS AVANZADAS DE ARQUITECTURAS CLIENTE/SERVIDOR
Las distintas arquitecturas cliente/servidor presentan variaciones
acerca de cómo son distribuidas las diferentes funciones de las aplicaciones de sistemas entre el cliente y el servidor, sobre la base de
los conceptos de los tres (3) componentes generales de cualquier SI:
1) GERENCIA DE LOS DATOS. Funciones que gerencian todas las
interacciones entre el SW y los archivos y las bases de datos,
incluyendo recuperación/consulta, actualización, seguridad y
control de concurrencia.
2) GERENCIA DE LA PRESENTACIÓN. Funciones que gerencian la
interfaz entre los usuarios del sistema y el SW, incluyendo la
visualización e impresión de formas y reportes, y la posibilidad de
validar entradas del sistema.
3) ANÁLISIS DE LOS DATOS (LÓGICA DE LA APLICACIÓN).
Funciones que transforman entradas en salidas, incluyendo
desde simples sumas hasta complejos modelos matemáticos como
el análisis de regresión.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
FORMAS AVANZADAS DE ARQUITECTURAS CLIENTE/SERVIDOR
Las diferentes arquitecturas cliente/servidor distribuyen, o particionan, cada una de las funciones descritas anteriormente, entre las
computadoras cliente y servidor, y cada vez más, en una tercera
computadora llamada servidor de aplicación.
• SERVIDOR DE APLICACIÓN. Un servidor de cómputo donde
residen principalmente las funciones de análisis de datos.
Se ha convertido en uso común, el usar tres (3) o más computadoras distintas en muchas arquitecturas cliente/servidor novedosas,
apareciendo dos (2) nuevos términos:
• CLIENTE/SERVIDOR DE TRES CAPAS. Avanzada arquitectura
cliente/servidor en la que se combinan tres aplicaciones lógicas
distintas -los datos, la presentación y el análisis, para crear un SI.
• MIDDLEWARE. Una combinación de HW, SW y tecnologías de
comunicación que soporta los datos, la presentación y el análisis,
en un ambiente cliente/servidor de tres capas.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
FORMAS AVANZADAS DE ARQUITECTURAS CLIENTE/SERVIDOR
Existen tres (3) razones primordiales para la creación de las arquitecturas cliente/servidor de tres capas: (Stevens, 1996)
1) Las aplicaciones pueden ser particionadas de una manera que se
ajuste a las necesidades computacionales de la organización.
2) Dado que la mayoría de la lógica está contenida en el servidor de
aplicaciones, realizar cambios globales, o personalizar procesos
para usuarios individuales, es relativamente fácil.
3) Dado que la lógica está separada de la interfaz del usuario, es
sumamente fácil cambiar uno, o ambos, sin acarrear mayores
esfuerzos en mantenimiento.
La combinación de estos beneficios -partición de las aplicaciones,
fácil personalización y fácil mantenimiento- están conduciendo a
muchas organizaciones a adoptar la alternativa de tres capas como
un estándar de la computación cliente/servidor.
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
PRESENTACIÓN DISTRIBUIDA
En esta arquitectura la tecnología se conoce como “pantallas
enmascaradas”, en donde el cliente le da forma a los datos que
son manejados en el servidor, en forma de reportes o formas. El
tráfico de la red sólo se limita a un pase de datos que ya vienen
preparados.
FUNCIÓN
CLIENTE
SERVIDOR
Datos
Todos
Lógica
Toda
Presentación
SISTEMAS DE INFORMACIÓN II
Los datos son
presentados en
forma gráfica,
enmascarados
Organiza los datos
para ser
presentados al
cliente en
tecnologías gráficas
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
PRESENTACIÓN REMOTA
Esta arquitectura coloca todas las funciones de presentación de los
datos en el cliente de forma que el cliente es el que tiene toda la
responsabilidad del formateo de los datos. Exige menos mantenimiento
si la forma de los reportes o las pantallas no cambia. Aumenta el tráfico
de la red con relación a la anterior, en virtud que el cliente debe
interactuar más con el servidor para recibir todos los datos necesarios.
FUNCIÓN
CLIENTE
SERVIDOR
Datos
Todos
Lógica
Toda
Presentación
SISTEMAS DE INFORMACIÓN II
Los datos que
resultan del análisis
en el servidor son
formateados y
presentados por el
cliente
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
GERENCIA DE DATOS REMOTA
Todo el SW del cliente tiene la responsabilidad del SI, a
excepción de la gerencia de los datos. Esta arquitectura es la
más conocida como cliente/servidor. Presenta un mayor tráfico
de red, ya que se le solicita al servidor los datos para presentar y
para analizar; esto hace que el análisis dependa del cliente, lo
cual permite el uso de hojas de cálculo en éste.
FUNCIÓN
CLIENTE
Todos
Datos
Lógica
Toma los datos del
servidor para hacer
el análisis (lógica)
Presentación
Toda
SISTEMAS DE INFORMACIÓN II
SERVIDOR
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
FUNCIÓN DISTRIBUIDA
Esta arquitectura divide las funciones de análisis (lógica) entre el
cliente y el servidor, dejando toda la gerencia de la presentación
en el cliente y la gerencia de los datos en el servidor. Esta
arquitectura permite que la lógica se reparta en función de la
relación costo/beneficio. Estos ambientes son muy complejos.
FUNCIÓN
CLIENTE
Todos
Datos
Lógica
Datos
seleccionados del
servidor son
recuperados y
analizados
Presentación
Toda
SISTEMAS DE INFORMACIÓN II
SERVIDOR
Datos seleccionados
del servidor son
recuperados y
analizados, luego
son transmitidos
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
BASE DE DATOS DISTRIBUIDA
Esta arquitectura le asigna al cliente toda la funcionalidad: la
presentación y la lógica, a excepción de los datos, los cuales son
repartidos entre el cliente y el servidor; esto permite una
ubicación óptima de los datos. Aparece el concepto de
particionamiento vertical y horizontal de los datos.
FUNCIÓN
CLIENTE
SERVIDOR
Datos
Gerencia local de los Gerencia de datos
datos
compartidos en el
servidor
Lógica
Los datos son
recuperados del
cliente y del servidor
para su análisis
Presentación
Toda
SISTEMAS DE INFORMACIÓN II
TEORÍA
UNIVERSIDAD SIMÓN BOLÍVAR
DEPARTAMENTO DE PROCESOS Y SISTEMAS
ARQUITECTURAS CLIENTE/SERVIDOR
PROCESAMIENTO DISTRIBUIDO
Combina lo mejor de las bases de datos distribuidas y de las funciones
distribuidas, repartiéndolas entre el cliente y el servidor, y dejando la
responsabilidad de la presentación al cliente. Es un ambiente altamente
complejo, pero optimiza el uso de la red.
FUNCIÓN
CLIENTE
SERVIDOR
Datos
Gerencia local de los
datos
Gerencia de datos
compartidos en el
servidor
Lógica
Los datos son
recuperados del
cliente y del servidor
para su análisis
Los datos son recuperados del servidor
para su análisis,
después son enviados
al cliente para
terminar el análisis
Presentación
Toda
SISTEMAS DE INFORMACIÓN II
TEORÍA
Descargar