Anda di halaman 1dari 30

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Marianne Ulate Arburola Universidad Internacional De Las Americas


I

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

INDICE

IntroduccinII Arquitecturas de Sistemas de Bases de DatosV Sistemas CentralizadosVI Caractersticas FuncionalesVI Caractersticas Fsicas.VII Caractersticas LgicasVII Ventajas e Inconvenientes...VII Sistemas Cliente-Servidor...IX Caractersticas de la arquitectura IX Niveles de la arquitectura.....X Tipos de Arquitectura Cliente-Servidor..XI Ventajas e Inconvenientes...XIII Fases de Implantacin.XV Servidor de Transacciones...XVIII Servidor de Datos.XIX Sistemas ParalelosXX Variaciones de la arquitectura.XX Ganancia de ampliabilidad....XXII Procesamiento de consultas y optimizacin..XXII Problemas del Paralelismo.XXIII Redes de Interconexin...XXIII Sistemas Distribuidos.XXIV Objetivo PrimordialXXV Caractersticas Inmediatas.XXV Como distribuir la informacin?........................XXV La Arquitectura Cuenta Con..XXV Ventajas de un sistema distribuidoXXVI Desventajas de un sistema distribuido...XXVI Problemas de los sistemas distribuidos..XXVI Redes de comunicacin utilizadas...XXVII Conclusin..XXVIII Bibliografa.XXX

Marianne Ulate Arburola Universidad Internacional De Las Americas


II

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

INDICE DE TABLAS Y FIGURAS

Fig. 1 Sistema centralizado ...VIII Fig.2 Cliente-Servidor.....IX Fig.3 Niveles de arquitectura cliente-servidor...X Fig.4 Arquitectura dos capas...XI Fig.5 Arquitectura 3 capas.........................................................................XII Fig.6 Memoria Compartida....XX Fig.7 Disco compartido..XXI Fig.8 Sin compartimiento...XXI Fig.9 Jerrquico..XXI Fig.10 Que es un sistema distribuido.....XXIV Fig.11 Arquitectura distribuidaXXVI

Marianne Ulate Arburola Universidad Internacional De Las Americas


III

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Introduccin
El tema que estudiaremos a continuacin es la arquitectura de sistemas de bases de datos, exploraremos los distintos tipos de arquitecturas de bases de datos, comenzaremos por los sistemas centralizados, pasando a los sistemas clienteservidor, paralelos y distribuidos. Como tendremos la oportunidad de ver a continuacin, la arquitectura de un sistema de base de datos esta influenciada en gran parte por el sistema informtico subyacente en el que se ejecuta el sistema de bases de datos. En la arquitectura de un sistema de bases de datos se manifiestan aspectos como la conexin en red, el paralelismo y la distribucin, cada uno de estos temas lo estaremos retomando en el transcurso del trabajo.

Marianne Ulate Arburola Universidad Internacional De Las Americas


IV

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Arquitecturas de Sistemas de Bases de Datos


Como se fue mencionado anterior mente en la arquitectura de bases de datos hay diferentes influencias una de las principales es sistema informtico subyacente en el cual se va a encontrar la bases de datos, a continuacin explicaremos algunos aspectos sobresalientes de las arquitectura de bases de datos:

tareas en un sistema servidor y en sistemas clientes. De aqu se deriva el sistema Cliente-Servidor. Procesamiento paralelo dentro d e una computadora: Agiliza el proceso de las tareas dentro de una base d e datos. Distribucin de datos: permite la accesibilidad de diferentes departamentos o puntos.

Conexin en red: en esta conexin de computadoras se vera la ejecucin de

Marianne Ulate Arburola Universidad Internacional De Las Americas


V

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Sistemas Centralizados
Nace en torno a una concepcin tradicional de la organizacin, con estructura centralizada y jerrquica, dividida en departamentos. Cada departamento tiene unas actividades muy concretas, las relaciones que pueda establecer con otros departamentos estn muy definidas y limitadas y suelen realizarse a travs de la jerarqua. El sistema de la base de datos centralizados se informtico, sin interactuar con ningn otro sistema. ejecuta en el nico sistema

La arquitectura est centralizada en un servidor central al que slo tienen acceso los usuarios del departamento correspondiente, no puede estar ubicada en varias partes sino en su totalidad en un solo equipo, a el podrn ingresar los usuarios que necesiten hacer uso de ella.

Estos sistemas abarcan a los tpicos equipos monopuestos1, y a los equipos con sistemas multipuesto2, donde la base de datos esta centralizada en el sistema principal. Las tareas de gestin y control son mas sencillas pero no suelen ofrecer soluciones excesivamente avanzadas en la gestin de bases de datos. Caractersticas funcionales

El ordenador central es el nico ordenador de la organizacin. El contiene todos los datos y es el responsable de la consolidacin de la informacin. Desde el ordenador central se controla el acceso a mltiples terminales conectados a travs de productos integrados en la arquitectura de red del suministrador. Los terminales funcionan como "esclavos" del ordenador central. Cada usuario tiene un nmero asignado, y unos derechos y prioridades de ejecucin en la mquina de sus programas o peticiones.

1 2

Monopuesto: Computadoras personales y estaciones de trabajo. Multipuesto: Ms componentes fsicos trabaja con un sistema operativo multiusuario.
Marianne Ulate Arburola Universidad Internacional De Las Americas
VI

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Caractersticas fsicas

nico ordenador corporativo dimensionado para soportar todos los procesos de la organizacin, todos los datos y las posibles comunicaciones con las delegaciones. Una gran base de datos donde residen todos los datos del organismo. Impresoras y terminales (u ordenadores personales con emulacin de terminal) como puestos de trabajo conectados en grupos (clusters) al ordenador central.

Caractersticas lgicas

Ejecucin de todos los procesos en el ordenador corporativo. Si la empresa est dispersa geogrficamente y dispone de comunicaciones, todos los puestos de trabajo estn conectados al ordenador formando una "estrella".

Ventajas e Inconvenientes

Entre las principales ventajas se encuentran:


Alto rendimiento transaccional. Alta disponibilidad. Entorno probado y personal experimentado. Control total del ordenador, al ser ste nico y residente en un nico Centro de Proceso de Datos. Concentracin de todo el personal de explotacin y administracin del sistema en un nico Centro de Proceso de Datos. Alto nivel de seguridad

Entre los inconvenientes destacan:

Alto precio del ordenador, al requerirse mucha potencia de tratamiento para dar servicio a todos los usuarios que estn conectados y gran espacio en disco para albergar todos los datos del organismo. Alta dependencia de las comunicaciones si existen. En caso de cada de una lnea, todos los puestos de trabajo dependientes de dicha lnea quedan inoperantes. Interfaces de usuario de caracteres (no grficos) y, por lo tanto, poco amigables. Arquitecturas propietarias.

Marianne Ulate Arburola Universidad Internacional De Las Americas


VII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Unidades de cinta

Disco

Disco Impresora

UCP

Controlador de disco de disco

Controlador de impresora

Controlador de unidad de cinta

Controlador de memoria

Memoria

Fig. 1 sistema centralizado

Marianne Ulate Arburola Universidad Internacional De Las Americas


VIII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Sistemas Cliente-Servidor
La Arquitectura Cliente/Servidor.- Es un modelo para el desarrollo de sistemas de informacin en el que las transacciones se dividen en procesos independientes que cooperan entre s para intercambiar informacin, servicios o recursos. Se denomina cliente al proceso que inicia el dilogo o solicita los recursos y servidor al proceso que responde a las solicitudes. Arquitecturas mltiples clientes / mltiples servidores .- Son mas flexibles, ya que la base de datos es distribuida en varios servidores. Cada cliente tiene un servidor directo al cual hace sus peticiones. La comunicacin entre los servidores ejecuta las transacciones y peticiones de los usuarios y esta es transparente para ellos. Arquitecturas de igual a igual.-Un DBMS verdadero no distingue entre cliente y servidor. Idealmente cada maquina puede desempear la funcionalidad de cliente y de servidor. La base de datos es fsicamente distribuida en diferentes lugares fragmentado y replicando los datos. La fragmentacin es deseable ya que hace posible el poner los datos cerca de los usuarios que los necesitan, de esta forma reduciendo potencialmente el costo de la transmisin y reduciendo el tamao de las relaciones involucradas en las consultas de los usuarios. Entre las principales caractersticas 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 lgica del servidor, slo su interfaz externa. El cliente no depende de la ubicacin fsica del servidor, ni del tipo de equipo fsico en el que se encuentra, ni de su sistema operativo. Los cambios en el servidor implican pocos o ningn cambio en el cliente.

Cliente

Cliente

Cliente

Cliente

fig.2 Cliente servidor. Servidor

Marianne Ulate Arburola Universidad Internacional De Las Americas


IX

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Niveles de la arquitectura: Esta arquitectura se puede clasificar en cinco niveles, segn las funciones que asumen el cliente y el servidor, tal y como se puede ver en el siguiente diagrama:

Fig. 3 Niveles de arquitectura Cliente-Servidor Primer nivel: el cliente asume parte de las funciones de presentacin de la aplicacin, ya que en el servidor aun hay programas que se dedican a ese tipo de tareas. Dicha distribucin se realiza mediante el uso de productos para el "maquillaje" de las pantallas del mainframe3. Esta tcnica no exige el cambio en las aplicaciones orientadas a terminales, pero dificulta su mantenimiento. Adems, el servidor ejecuta todos los procesos y almacena la totalidad de los datos. En este caso se dice que hay una presentacin distribuida o embellecimiento. Segundo nivel: la aplicacin est soportada directamente por el servidor, excepto la presentacin que es totalmente remota y reside en el cliente. Los terminales del cliente soportan la captura de datos, incluyendo una validacin parcial de los mismos y una presentacin de las consultas. En este caso se dice que hay una presentacin remota. Tercer nivel: la lgica de los procesos se divide entre los distintos componentes del cliente y del servidor. El diseador de la aplicacin debe definir los servicios y las interfaces del sistema de informacin 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 presentacin como los procesos. Por su parte, el servidor almacena y gestiona los datos que permanecen en una base de datos centralizada. En esta situacin se dice que hay una gestin de datos remota.

Mainframe: gran ordenador" u "ordenador central"


Marianne Ulate Arburola Universidad Internacional De Las Americas
X

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Quinto nivel: el reparto de tareas es como en el anterior y adems el gestor de base de datos divide sus componentes entre el cliente y el servidor. Las interfaces entre ambos estn 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 solucin 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. - Gestin del procesamiento. - Gestin de la base de datos.

Fig. 4 Arquitectura 2 Capas. Hay 2 tipos de arquitecturas cliente servidor de dos capas: - Clientes obesos (thick clients): La mayor parte de la lgica de la aplicacin (gestin del procesamiento) reside junto a la lgica de la presentacin (interfaz de usuario) en el cliente, con la porcin de acceso a datos en el servidor. - Clientes delgados (thin clients): solo la lgica de la presentacin reside en el cliente, con el acceso a datos y la mayora de la lgica de la aplicacin en el servidor.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XI

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Es posible que un servidor funcione como cliente de otro servidor. Esto es conocido como diseo de dos capas encadenado. Limitaciones: - El nmero usuarios mximo es de 100. Ms all de este nmero de usuarios se excede la capacidad de procesamiento. - No hay independencia entre la interfaz de usuario y los tratamientos, lo que hace delicada la evolucin de las aplicaciones. - Dificultad de relocalizar las capas de tratamiento consumidoras de clculo. - Reutilizacin delicada del programa desarrollado bajo esta arquitectura. Arquitectura de 3 capas: La arquitectura de 3 capas surgi para superar las limitaciones de la arquitectura de 2 capas. La tercera capa (servidor intermedio) est entre el interfaz de usuario (cliente) y el gestor de datos (servidor). La capa intermedia proporciona gestin del procesamiento y en ella se ejecutan las reglas y lgica de procesamiento. Permite cientos de usuarios (en comparacin con slo 100 usuarios de la arquitectura de 2 capas). La arquitectura de 3 capas es usada cuando se necesita un diseo cliente / servidor que proporcione, en comparacin con la arquitectura de 2 capas, incrementar el rendimiento, flexibilidad, mantenibilidad, reusabilidad y escalabilidad mientras se esconde la complejidad del procesamiento distribuido al usuario.

Fig. 5 Arquitectura 3 capas

Marianne Ulate Arburola Universidad Internacional De Las Americas


XII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Limitaciones: Construir una arquitectura de 3 capas es una tarea complicada. Las herramientas de programacin que soportan el diseo de arquitecturas de 3 capas no proporcionan todos los servicios deseados que se necesitan para soportar un ambiente de computacin distribuida. Un problema potencial en el diseo de arquitecturas de 3 capas es que la separacin de la interfaz grfica de usuario, la lgica de gestin de procesamiento y la lgica de datos no es siempre obvia. Algunas lgicas de procesamiento de transacciones pueden aparecer en las 3 capas. La ubicacin de una funcin particular en una capa u otra debera basarse en criterios como los siguientes: - Facilidad de desarrollo y comprobacin. - Facilidad de administracin. - Escalabilidad de los servidores. - Funcionamiento (incluyendo procesamiento y carga de la red). El middleware: Como hemos visto, las capas estn localizadas en mquinas diferentes que estn conectadas a travs de la red. El middleware es el software que proporciona un conjunto de servicios que permite el acceso transparente a los recursos en una red. El middleware es un mdulo intermedio que acta como conductor entre dos mdulos de software. Para compartir datos, los dos mdulos de software no necesitan saber cmo comunicarse entre ellos, sino cmo comunicarse con el mdulo de middleware. Es el encargado del acceso a los datos: acepta las consultas y datos recuperados directamente de la aplicacin y los transmite por la red. Tambin es responsable de enviar de vuelta a la aplicacin, los datos de inters y de la generacin de cdigos de error. Ventajas e Inconvenientes: Ventajas

Aumento de la productividad:

Los usuarios pueden utilizar herramientas que le son familiares, como hojas de clculo y herramientas de acceso a bases de datos. Mediante la integracin de las aplicaciones cliente/servidor con las aplicaciones personales de uso habitual, los usuarios pueden construir soluciones particularizadas que se ajusten a sus necesidades cambiantes.
Marianne Ulate Arburola Universidad Internacional De Las Americas
XIII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Una interfaz grfica de usuario consistente reduce el tiempo de aprendizaje de las aplicaciones.

Menores costos de operacin:

Permiten un mejor aprovechamiento de los sistemas existentes, protegiendo la inversin. Por ejemplo, la comparticin de servidores (habitualmente caros) y dispositivos perifricos (como impresoras) entre mquinas clientes permite un mejor rendimiento del conjunto. Proporcionan un mejor acceso a los datos. La interfaz de usuario ofrece una forma homognea de ver el sistema, independientemente de los cambios o actualizaciones que se produzcan en l y de la ubicacin de la informacin. El movimiento de funciones desde un ordenador central hacia servidores o clientes locales origina el desplazamiento de los costes de ese proceso hacia mquinas ms pequeas y por tanto, ms baratas.

Mejora en el rendimiento de la red:

Las arquitecturas cliente/servidor eliminan la necesidad de mover grandes bloques de informacin por la red hacia los ordenadores personales o estaciones de trabajo para su proceso. Los servidores controlan los datos, procesan peticiones y despus transfieren slo los datos requeridos a la mquina cliente. Entonces, la mquina cliente presenta los datos al usuario mediante interfaces amigables. Todo esto reduce el trfico de la red, lo que facilita que pueda soportar un mayor nmero de usuarios. Tanto el cliente como el servidor pueden escalarse para ajustarse a las necesidades de las aplicaciones. Las UCPs utilizadas en los respectivos equipos pueden dimensionarse a partir de las aplicaciones y el tiempo de respuesta que se requiera. La existencia de varias UCPs proporciona una red ms fiable: un fallo en uno de los equipos no significa necesariamente que el sistema deje de funcionar. En una arquitectura como sta, los clientes y los servidores son independientes los unos de los otros con lo que pueden renovarse para aumentar sus funciones y capacidad de forma independiente, sin afectar al resto del sistema. La arquitectura modular de los sistemas cliente/servidor permite el uso de ordenadores especializados (servidores de base de datos, servidores de ficheros, estaciones de trabajo para CAD, etc.). Permite centralizar el control de sistemas que estaban descentralizados, como por ejemplo la gestin de los ordenadores personales que antes estuvieran aislados.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XIV

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Inconvenientes

Hay una alta complejidad tecnolgica al tener que integrar una gran variedad de productos. Requiere un fuerte rediseo de todos los elementos involucrados en los sistemas de informacin (modelos de datos, procesos, interfaces, comunicaciones, almacenamiento de datos, etc.). Adems, en la actualidad existen pocas herramientas que ayuden a determinar la mejor forma de dividir las aplicaciones entre la parte cliente y la parte servidor. Es ms difcil asegurar un elevado grado de seguridad en una red de clientes y servidores que en un sistema con un nico ordenador centralizado. A veces, los problemas de congestin de la red pueden degradar el rendimiento del sistema por debajo de lo que se obtendra con una nica mquina (arquitectura centralizada). Tambin la interfaz grfica de usuario puede a veces ralentizar el funcionamiento de la aplicacin. El quinto nivel de esta arquitectura (bases de datos distribuidas) es tcnicamente muy complejo y en la actualidad hay muy pocas implantaciones que garanticen un funcionamiento totalmente eficiente.

Fases de implantation

Fase de Iniciacin

Esta etapa se centra sobre todo en la distribucin fsica de los componentes entre plataformas. Los dos tipos de plataforma son:

Una plataforma cliente para la presentacin (generalmente un ordenador personal de sobremesa). Una plataforma servidora (como por ejemplo el servidor de una base de datos relacional) para la ejecucin de procesos y la gestin de los datos.

Un ejemplo sera el de una herramienta de consulta que reside en un ordenador personal a modo de cliente y que genera peticiones de datos que van a travs de la red hasta el servidor de base de datos. Estas peticiones se procesan, dando como resultado un conjunto de datos que se devuelven al cliente. En esta fase pueden surgir los siguientes problemas:

Cmo repartir la lgica de la aplicacin entre las plataformas cliente y servidor de la forma ms conveniente. Cmo gestionar la arquitectura para que permita que cualquier cliente se conecte con cualquier servidor.
Marianne Ulate Arburola Universidad Internacional De Las Americas
XV

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Fase de Proliferacin

La segunda etapa de una arquitectura cliente/servidor se caracteriza por la proliferacin de plataformas clientes y servidoras. Ahora, el entorno para la interaccin entre clientes y servidores se hace mucho ms complejo. Puede hacerse una distincin entre:

Datos de servidores a los que se accede a travs de una red de rea extensa (WAN) y Datos a los que se accede a travs de una red de rea local (RAL).

Los mecanismos de conexin son muy variados y suelen ser incompatibles. En esta fase los problemas que se pueden plantear son:

La gestin de accesos se convierte en crtica y compleja debido a la estructura del organismo donde se est implantando la arquitectura. El mercado ofrece algunas soluciones que mejoran la interoperabilidad y que se basan en conexiones modulares que utilizan entre otros:

Drivers en la parte cliente Pasarelas (gateways) a bases de datos Especificaciones de protocolos cliente/servidor, etc.

Los requisitos de actualizacin de datos pasan a formar parte de los requisitos solicitados al sistema cliente/servidor. Ahora no slo se consultan datos, sino que se envan peticiones para actualizar, insertar y borrar datos.

Fase de Control

En esta fase se consolidan los caminos de acceso desde una plataforma cliente particular a una plataforma servidora particular. Los conceptos en los que se debe poner especial nfasis son los siguientes:

Transparencia en la localizacin. Significa que la aplicacin cliente no necesita saber nada acerca de la localizacin (fsica o lgica) de los datos o los procesos. La localizacin de los recursos debe estar gestionada por servidores y estar representada en las plataformas adecuadas de forma que se facilite su uso por parte de las plataformas cliente. Gestin de copias. El sistema se debe configurar de forma que se permita copiar la informacin (datos o procesos) de los servidores. Especializacin de los equipos servidores en servidores de bases de datos o en servidores de aplicaciones. Los servidores de bases de datos
Marianne Ulate Arburola Universidad Internacional De Las Americas
XVI

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

continan ofreciendo servicios orientados a datos a travs de llamadas SQL o a travs de procedimientos almacenados. En cualquier caso, los servicios se orientan a mantener la integridad de los datos. Por otro lado, los servidores de aplicaciones se centran en los procesos implementando partes de la lgica de la aplicacin en la parte servidora.

Fase de Integracin

Esta etapa se caracteriza por el papel conjunto que juegan la gestin de accesos, la gestin de copias y la gestin de recursos. La gestin de la informacin se debe realizar de forma que se pueda entregar la informacin controlada por los servidores que contienen los datos a las plataformas clientes que los requieran. El concepto en que se basa este tipo de gestin es la distincin entre dos tipos de datos: datos de operacin y datos de informacin. Para ajustarse a los posibles cambios en los procesos, los datos de operacin varan continuamente mientras que los datos de informacin son invariables porque son de naturaleza histrica y se obtienen tomando muestras en el tiempo de los datos de operacin.

Fase de Madurez

Esta es la etapa final de una arquitectura cliente/servidor. Se caracteriza por una visin ms flexible de las plataformas fsicas del sistema que se contemplan como una nica unidad lgica. Este estado tambin se caracteriza porque la tecnologa cliente/servidor se ha generalizado en la empresa. Ya no es un problema saber qu componentes se distribuyen en qu plataformas, porque los recursos se pueden redistribuir para equilibrar la carga de trabajo y para compartir los recursos de informacin. Lo fundamental aqu es saber quin ofrece qu servicios. Para ello es necesario distinguir qu tipo de servicios y recursos se demandan y conocer las caractersticas de esta arquitectura basada en servicios. En la fase de integracin veamos que se estableca una distincin entre datos de operacin y datos de informacin histrica. Por contra, en un entorno de operacin cliente/servidor que se encuentre en la fase de madurez, lo interesante es distinguir entre dos nuevos trminos: organismo y grupo de trabajo. Esta distincin se establece basndose en sus diferencias organizativas. El grupo de trabajo es el entorno en el que grupos organizados de personas se centran en tareas especficas de la actividad del organismo al que pertenecen. Estos equipos de personas requieren una informacin propia y unas reglas de trabajo particulares, que pueden ser diferentes de las del organismo en su globalidad.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XVII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Una arquitectura basada en servicios es la que se contempla como una coleccin de consumidores de servicios poco relacionados entre s y los productores de dichos servicios. La utilizacin de este tipo de arquitectura permite pensar en nuevos retos de diseo:

Desarrollo de componentes reutilizables entre distintas aplicaciones y distintos grupos de trabajo Desarrollo de aplicaciones distribuidas Gestin del desarrollo de aplicaciones entre distintos equipos, etc.

Los sistemas Cliente-Servidor utilizan varios tipos de servidores los cuales son: Servidor de transacciones: tambien llamados sistemas servidores de consultas, proporcionan una interfaz a travs de la cual los clientes consultan a la base de datos. Se pueden usar con SQL o Procedimientos almacenados. Servidor de datos: permiten que los clientes puedan interactuar con los servidores realizando peticiones de lectura o modificacin de datos en unidades tales como archivos o paginas.

Servidor de Transacciones Estos servidores se ocupan de la interaccin con los Clientes, desocupando al servidor de datos de ello. El servidor de transacciones se encarga de mantener un alto rendimiento, disponibilidad e integridad de datos. Asimismo, se asegura de que ninguna computadora tenga demasiado o muy poco que hacer. Cuando un servidor de transacciones ve que a una computadora se le ha dado demasiado trabajo, automticamente divide el trabajo entre todas las computadoras disponibles, haciendo que las mismas compartan recursos para evitar que alguna de las mquinas se colapse. Cuando actualiza bases de datos, el servidor de transacciones tambin ejecuta lo que se conoce como el manejo de estados. Esto quiere decir que si el servidor de transacciones percibe que una computadora no puede completar una transaccin, hace que el software abandone el trabajo y regrese a su estado original sin que ocurra corrupcin de datos.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XVIII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Se basa en distintas normas, como pueda ser la ODBC4. Utiliza SQL para comunicacin con los clientes y ofrece la ejecucin de procedimientos remotos. Son una parte intrnseca de los servidores de datos centralizados.

la

Servidor de datos Estos no so necesariamente servidores de bases d e datos relacionales, pueden ser servidores d e archivos, servidores de directorios, de objetos, etc. Tienen una comunicacin directa con los clientes, de forma que el cliente debe tener todas las funcionalidades del sistema servidor. Sus caractersticas son: Envi de pginas o elementos.5 Bloqueo: gestionado por el servidor. Cache de datos: agiliza el envi de datos muy comunes. Cache de bloqueos.

4 5

Open DataBase Connectivity Coste de comunicacion


Marianne Ulate Arburola Universidad Internacional De Las Americas
XIX

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Sistemas Paralelos
El concepto de paralelismo supone la introduccin de varios procesadores para resolver un problema. Sabemos que un procesador diez veces ms potente que un procesador de potencia normal para una fecha es mucho ms caro que diez procesadores de potencia normal para dicha fecha. Por ello, si paralelizamos nuestro programa -es decir, dividimos la carga computacional entre varios procesadores distintos- vamos a obtener una mejora en la relacin entre costo y rendimiento. Con menos inversin en hardware estamos obteniendo mucha ms potencia computacional.
6

Los sistemas paralelos mejoran la velocidad d e procesamiento y E\S mediante la utilizacin de UCP7 y discos en paralelo. Las arquitecturas de sistemas paralelos varan entre dos extremos: No compartir nada.- Cada procesador tiene acceso exclusivo a su memoria principal y a sus unidades de disco. Memoria compartida.- Cualquier procesador tiene acceso a cualquier mdulo de memoria o unidad de disco a travs de una interconexin rpida. Un punto intermedio lo es discos compartidos - donde cualquier procesador tiene acceso a cualquier unidad de disco a travs de la interconexin, pero solo tiene acceso exclusivo a su memoria principal. Jerrquico- Es un hbrido de las anteriores.

Tambin se le llama grano grueso (varios computadores independientes) y grano fino (varios computadores integrados al mismo sistema)
P P P P P

Fig. 6 Memoria Compartida.

6 7

Pg. 444 Fundamentos de Bases de Datos. Unidades Centrales de Procesamiento


Marianne Ulate Arburola Universidad Internacional De Las Americas
XX

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

P P P P P

Fig. 7 Disco Compartido. M P P M

Fig. 8 Sin Compartimiento. Fig. 9 Jerrquico


P P P P P

P P P P P

P P P P P

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXI

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Cuando trabajamos con paralelismo debemos tener muy en cuenta que se trabaja con recursos dependientes entre si, claro lo deseable son los recursos independientes que permitan la ganancia de velocidad lineal. Ganancia de ampliabilidad Es la capacidad para procesar tareas mas largas en el mismo tiempo mediante un incremento de los recursos. Existen dos tipos de ampliabilidad: 1. Ampliabilidad por lotes: a. Aumenta el tamao de la base d e datos, y las tareas son trabajos mas largos, cuyos tiempos de ejecucin dependen d el tamao de la base d e datos (Ej.: recorrido secuencial) b. El problema es el tamao. 2. Ampliabilidad de transacciones: a. Aumenta la velocidad a la que se envan las peticiones a la base d e datos, y el tamao crece proporcionalmente a la tasa de transaccin. (Ej.: reserva una butaca en el cine: -> mas butaca, mas reservas) b. Se adapta muy bien a la ejecucin paralela, ya que las transacciones se ejecutan de forma concurrente. c. Las transacciones duran lo mismo, por lo que e s factible un paralelismo lineal.

Procesamiento de consultas y optimizacin La optimizacin de consultas paralelas toma ventaja del paralelismo intra operacin y del paralelismo Inter. Operacin. Paralelismo intra operacin.- Esta consiste en ejecutar una operacin en varios nodos de una maquina con varios procesadores. Paralelismo Inter. Operacin.- Ocurre cuando dos o mas operaciones son ejecutadas en paralelo, sea utilizando independientemente. Paralelismo Independiente.- Ocurre cuando las operaciones al mismo tiempo o en orden arbitrario. El paralelismo independiente es posible solo cuando las operaciones no involucran los mismos datos.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Problemas del paralelismo Costes de inicio: o El inicio de un nico proceso lleva asociado un coste de inicio. En una operacin paralela compuesta por miles de procesos, el tiempo de inicio puede ser mayor que el de procesamiento. Interferencia: o Problema en el ascenso a recursos compartidos, que traen consigo bloqueos y abrazos mortales. Sesgo: o Al dividir cada tarea en un cierto numero de pasos paralelos se rdese el tamao del paso medio, pero el tiempo para completar la tarea viene dada por el tiempo de completar el paso mas lento. o Dado que rara vez se puede dividir una tarea en Pazos iguales, es difcil que se consiga un aumento del rendimiento lineal.

Redes de Interconexin de Arquitecturas Paralelas Entre las interconexiones de arquitecturas paralelas tenemos las siguientes:

Bus: todos los componentes del sistema pueden enviar o recibir datos de un nico bus d e comunicaciones. El bus solo puede gestionar la comunicacin de un elemento en un momento dado8. Malla: los componentes se organizan como nodos d e una retcula9. Se utiliza el paso de mensajes. Hipercubo: sistema de conexin n-dimensional basado en la representacin binaria de los componentes. Es un sistema de altas prestaciones y mas eficiente que el d e malla.

8 9

Cuellos de botella. Conectividad adyacente.


Marianne Ulate Arburola Universidad Internacional De Las Americas
XXIII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Sistemas Distribuidos
En un sistema de datos distribuidos, la informacin s e almacena en varios ordenadores, dichos ordenadores estn conectados por redes de comunicacin de alta velocidad o lneas telefnicas. Por lo que pueden realizar transacciones globales , segn tenga que acceder solo a sus datos o a los datos almacenados en las bases de datos distribuidas.

Q u e s u n S is t e m a D is t r ib u id o ?
A o s 6 0 - 7 0 : S i s t e m a s C e n t r a l iz a d o s ( C a r o s ) A os 8 0: O rd enad or es P ersonales O rd ena d ore s I n d e p e n d ien t e s A c c e so rio s C a ros y Poco A provec h a bles

S is t e m a s e n R e d S is t e m a s D i s t r i b u id o s

L A N a l t a v e lo c id a d

SON T RA N S PA REN T ES

LA N WAN

O B J E T I V O S .D . C o m p a r t ir R e c u r s o s F c il m e n t e
S i ste m a s D i s tr ib u i d o s In tr o d u c c i n - 3

Fig. 10 Que es un sistema Distribuido

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXIV

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Objetivo primordial de los sistemas distribuidos es el compartimiento fcil y eficiente de los recursos entre mltiples usuarios. Por esto, no se les debe confundir con los sistemas paralelos, cuyo propsito es acelerar la ejecucin de un cierto programa en un nico ordenador (normalmente aplicaciones cientficas), y estn compuestos por mltiples procesadores que suelen compartir memoria y reloj. Un sistema distribuido puede verse como un sistema formado por varios ordenadores haciendo algo conjuntamente, de lo que se desprenden tres caractersticas inmediatas: -Compuesto por mltiples ordenadores. Un sistema distribuido est compuesto de ms de un sistema independiente, cada uno con una o ms CPUs, memoria local, memoria secundaria (discos) y, en general, conexiones con perifricos de acceso inmediato (on line). -Hay interconexin entre ellos. Parece claro que si varios ordenadores distintos van a colaborar en la realizacin de tareas, deben comunicarse y sincronizarse entre ellos, por lo que debe haber alguna lnea o red de interconexin. -Tienen un estado compartido. Si los ordenadores realizan un trabajo conjuntamente, deben mantener un estado compartido, es decir, todos los ordenadores tienen la misma visin del estado del sistema distribuido (tablas, bases de datos del sistema, de servidores, etc. Como distribuir la informacin? Se debe seguir razonamientos lgicos al respecto, como puede ser la utilizacin, la dispersin geogrfica de los ordenadores, las lneas de comunicacin entre ellos, su potencia, etc. La arquitectura de sistemas distribuidos cuenta con: Compartimiento de datos: los datos de un emplazamiento10 pueden ser accedidos por otro usuario de otro emplazamiento en cualquier momento. Autonoma: cada emplazamiento tiene un cierto grado de control sobre los datos que tiene almacenados. Disponibilidad: si uno de los emplazamientos de la base d e datos distribuida falla, el resto de emplazamientos puede seguir funcionando.

Emplazamiento : nombre que se usa para referirse a las computadoras que forman parte de un sistema distribuidos.

10

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXV

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Fig. 11 Ventajas de un sistema distribuido:


El compartimiento de recursos Apertura Concurrencia Escalabilidad Tolerancia de fallas Transparencia Desventajas de un sistema distribuido:

Complejidad Seguridad Manejabilidad Impredecibilidad

Problemas de los sistemas distribuidos: Mayor costo de desarrollo del software: al tener que reunir una serie de caractersticas especiales. Mayor probabilidad de errores: como los emplazamientos operan en paralelo, es ms difcil asegurar la correccin de los algoritmos.
Marianne Ulate Arburola Universidad Internacional De Las Americas
XXVI

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Mayor sobrecarga de procesamiento: el intercambio de mensajes y el cmputo adicional necesario para conseguir la coordinacin entre los distintos emplazamientos constituyen una forma especial de sobrecarga.

Redes de comunicacin utilizadas: En la interconexin de los sistemas distribuidos y cliente servidor, se utilizan las redes de comunicacin entre ordenadores. 11 LAN: son redes de pequeo tamao (T<2km) y debajo costo utilizadas en edificios. Arquitecturas en bus o paso de testigo. 12 MAN: Redes de fibra, de tamao inferior a 10-20km, se utilizan para unir distintas sucursales de una entidad, son las ms utilizadas en sistemas distribuidos de alto rendimiento. 13 WAN: Redes Globales que abarcan grandes reas. Suelen basarse en esquemas punto a punto, con routers y gateways para dar acceso a las mismas. No se suele tener conexiones directas.

11 12

LAN: Local Area Network. MAN: Metropolitan area network. 13 WAM: Wide Area Network
Marianne Ulate Arburola Universidad Internacional De Las Americas
XXVII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Conclusin
Al terminar este trabajo de arquitectura de sistemas de bases de datos hemos logrado entender y analizar en gran parte su estructura fsica, lgica, y funcional. Al hablar de arquitecturas centralizadas si dio a relucir que se trabaja con un solo sistema informtico y no interacta con ningn otro, estos sistemas abarcan monopuesto y multipuestos. Las arquitecturas centralizadas no suelen ofrecer soluciones excesivamente avanzadas en la gestin de bases de datos. El advenimiento de los sistemas de gestin de bases de datos relacinales (RDBMS), Relational Database Management System fue, realmente, la tecnologa clave que hizo posible la arquitectura informtica cliente-servidor. El RDBMS servia como almacn centralizado para los datos de la organizacin. El RDBMS estaba diseado para gestionar el acceso multiusuario a un conjunto compartido de datos. Toda la gestin de bloqueos y conexiones es llevada a cabo por el RDBMS, que tambin se encarga de la seguridad. El lenguaje SQL (Structured Query Language), fue creado como lenguaje universal de programacin para solicitar datos especficos a un RDBMS. La arquitectura cliente-servidor fue realmente una combinacin de las mejores funciones del entorno basado en host y del entorno de red de rea local basado en PC. Esta arquitectura utiliza la potencia del PC para realizar la presentacin de los datos, junto con el complicado procesamiento relativo a la lgica de negocio que aade valor a dichos datos. El RDBMS proporciona un rea de almacenamiento centralizada par los datos. La arquitectura cliente-servidor puede tomar muchas formas, dependiendo de cmo se elija separar los niveles de presentacin, lgica de negocio y datos. Las bases de datos distribuidas y paralelas han permitido que los sistemas de base de datos puedan crecer considerablemente en la cantidad de informacin que manejan, ya que permiten sistemas integrados con mltiples computadoras, las cuales pueden estar distribuidas en distintas partes del mundo y cada una tener los recursos suficientes para contener y manejar por si sola grandes cantidades de informacin. El empleo de sistemas paralelos y distribuidos nos permite tambin dividir las consultas para que sean realizadas a una mayor velocidad por distintas mquinas o procesadores, incrementando enormemente el rendimiento del sistema de base de datos. Sin embargo, no obstante las ventajas que presenta la distribucin de la informacin y el empleo de sistemas paralelos para manejarla, estos esquemas presentan algunos inconvenientes, no triviales, que deben ser manejados adecuadamente, tales como las decisiones de la distribucin fsica de la informacin; de que manera ser fragmentada, si existirn copias de los fragmentos en distintas localidades, de que manera se va a manejar
Marianne Ulate Arburola Universidad Internacional De Las Americas
XXVIII

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

la posibilidad de modificaciones concurrentes de la misma informacin, como se controlarn las actualizaciones a informacin duplicada para mantener la consistencia, como se manejar la posibilidad de que, debido a fallas en la comunicacin, el sistema quede dividido en dos o ms sub-redes fragmentadas y otros problemas ms.

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXIX

Arquitecturas de Sistemas de Bases de Datos Bases de Datos Ingeniera de Sistemas UIA

Bibliografa
Silberschatz Pg. 339-415.
www.datarq.fadu.uba.ar/datarq/arq/homepage. www.uchile.cl/bibliotecas/bibliotecas/invi/bases.html lorien.die.upm.es/~macias/pfcs/integr96.htm lfc.uah.es/olmeda/apuntesBBDD/t13.pdf 148.204.45.136:9000/sqlmx/paginas/ articulos/based/PRYBSD02.htm www.exa.unicen.edu.ar/catedras/comdat1/ Material/Practicos/practico1.pdf www.it.uc3m.es/jvl/bdd/ www.cps.unizar.es/~mena/bda.html www.dit.upm.es/asignaturas/bdatos.html www.cicese.mx/~mimunoz/tareas/abd/dp.htm di002.edv.uniovi.es/~cueva/publicaciones/ AgentesNovatica146.pdf www.cs.buap.mx/intro/planes_est/tendbd.html sensei.lsi.uned.es/sgbd/Libro/contentLibro.html bibmed.ucla.edu.ve/alexandr/htmldocs/alexinfo/ Arquitectura%20de%20cliente%20en%20administracin.htm www.biocom.com.ar/sistema/base_de_datos/ generalidades.html

Marianne Ulate Arburola Universidad Internacional De Las Americas


XXX