1 / 77

ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS

ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS. La arquitectura de un Sistema de Bases de Datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta.

lexine
Télécharger la présentation

ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ARQUITECTURA DE LOS SISTEMAS DE BASES DE DATOS

  2. La arquitectura de un Sistema de Bases de Datos está influenciada en gran medida por el sistema informático subyacente en el que se ejecuta. Hay que tomar en cuenta aspectos de la Arquitectura de la computadora como la conexión en red, el paralelismo y la distribución.

  3. La Conexión en Red de varias computadoras permite que algunas tareas se ejecuten en un Sistema Servidor. Y otras, se ejecuten en los Sistemas Clientes. Esta división de trabajo ha conducido al desarrollo de Sistemas de Bases de Datos Cliente-Servidor. El Procesamiento Paralelo dentro de una computadora permite acelerar las actividades del SBD. Proporcionando a las transacciones unas respuestas más rápidas. Así como la capacidad de ejecutar más transacciones por segundo

  4. Cluster de PCs

  5. Las consultas pueden procesarse de manera que se explote el paralelismo ofrecido por el sistema. La necesidad del Procesamiento Paralelo ha conducido al desarrollo de los Sistemas de Bases de Datos Paralelos. Se ha dado la distribución natural de los datos a través de las distintas localidades, agencias, departamentos, etc. de una organización. Permitiendo que los datos residan donde han sido generados o donde son más necesarios. Pero con la característica de que siguen siendo accesibles desde otros lugares o sitios diferentes.

  6. El hecho de guardar varias copias de la BD en diferentes sitios permite que puedan continuar las operaciones sobre la BD, aún cuando algún sitio se vea afectado. Esto permite incrementar la disponibilidad del sistema, aún cuando se vea afectado por desastres naturales. Se han desarrollado los Sistemas Distribuidos de Bases de Datos para manejar los datos distribuidos geográfica o administrativamente a lo largo de múltiples SBD.

  7. ARQUITECTURA CENTRALIZADA Y CLIENTE/SERVIDOR

  8. Los Sistemas de Bases de Datos Centralizados son aquellos que se ejecutan en un único sistema, sin interaccionar con ninguna otra computadora. Tales sistemas comprenden desde los SBD Monousuarios ejecutándose en una PC, hasta los SBD de alto rendimiento ejecutándose en grandes sistemas. Los SBD diseñados para funcionar sobre sistemas monousuarios no suelen proporcionar muchas de las facilidades que ofrecen los sistemas multiusuarios. Hoy en día, las computadoras pueden tener varios procesadores, utilizando Paralelismo de Grano Grueso.

  9. Estas computadoras comparten la misma memoria principal. Las BD que se ejecutan en tales máquinas habitualmente no intenan dividir una consulta simple entre los procesadores. En vez de eso, ejecutan cada consulta en cada procesador posibilitando la concurrencia de varias consultas. Permitiendo ejecutar un mayor número de transacciones por segundo. Las BD diseñadas para la PCs monoprocesador ya disponen de Multitarea.

  10. Permitiendo que varios procesos se ejecuten a la vez en el mismo procesador. Se puede utilizar Tiempo Compartido, mientras que para el usuario aparentan que los procesos se ejecutan en paralelo. SISTEMAS CLIENTE/SERVIDOR Los Sistemas Cliente/Servidor tienen su funcionalidad dividida entre el Sistema Servidor y un conjunto de Sistemas Clientes. Las computadoras personales son ahora más rápidas, más potentes y más baratas.

  11. Los sistemas se han ido distanciando de las arquitectura centralizada. Las terminales conectadas a un sistema central han sido suplantadas por PCs. De igual forma, la interfaz de usuario, que antes era manejado por el servidor, ahora se maneja por la PC. Como consecuencia los Sistemas Centralizados actúan hoy como Sistemas Servidores. Que se encargan de servir o atender las peticiones del Sistema Cliente.

  12. La funcionalidad de una BD se puede dividir en dos partes: La parte visible al usuario. Y la parte del Servidor. La parte visible al usuario está formado por herramientas como formularios, diseñadores de informes y facilidades gráficas. La interfaz entre la parte visible al usuario y el sistema servidor puede ser SQL o una aplicación. Las normas como ODBC y JDBC, se desarrollaron para lograr la conexión entre clientes y servidor.

  13. Antes de esto, con la carencia de normas, tanto la interfaz visible como el servidor eran proporcionados por el mismo distribuidor. Existen Herramientas de Desarrollo de Aplicaciones quese utilizan para construir interfaces de usuario. Que proporcionan herramientas gráficas que se pueden utilizar para construir interfaces sin programar. Algunas de estas herramientas son: PowerBuilder, Magic y Borland Delphi; también se puede utilizar Visual Basic.

  14. Algunos sistemas de procesamiento de transacciones proporcionan una interfaz de Llamada a Procedimientos Remotos para Transacciones. Logrando conectar los Clientes con el Servidor, a través de estas llamadas. Las llamadas hechos por los Clientes se engloban en una única transacción al Servidor final. De este modo, si la transacción se cancela, el Servidor puede deshacer los efectos de las llamadas a procedimientos remotos individuales.

  15. ARQUITECTURAS DE SISTEMAS SERVIDORES Los sistemas servidores pueden dividirse en: Servidores de Transacciones, y Servidores de Datos. Los Servidores de Transacciones, también llamados sistemas Servidores de Consultas, proporcionan una interfaz a través de la cual los clientes pueden enviar peticiones para realizar una acción que el servidor ejecutará. Después, los valores resultantes se regresarán al cliente.

  16. Los Sistemas Servidores de Datos permiten a los clientes interaccionar son los servidores, realizando peticiones de lectura o modificación de datos en unidades tales como archivos o páginas. Por ejemplo, los Servidores de Archivos proporcionan una interfaz de sistema de archivos a través de la cual los clientes pueden crear, modificar, leer y borrar archivos. En cambio, los servidores de datos de los SBD ofrecen más funcionalidades, ya que pueden soportar elementos pequeños como tuplas o atributos. Además de asegurar que los datos nunca se quedan en un estado inconsistente.

  17. Los Sistemas Servidores de Datos se utilizan en redes de área local, en las que se alcanza una alta velocidad de conexión entre el cliente y el servidor. Las arquitectura de los servidores de datos se han hecho populares en los SBD Orientadas a Objetos. En esta arquitectura surgen algunos aspectos interesantes para reducir el tiempo de comunicación entre el cliente y el servidor: Envío de Páginas o Envío de Elementos. La unidad de comunicación de datos puede ser una página, una tupla o un objeto.

  18. Bloqueo. La concesión del bloqueo de los elementos de datos que el servidor envía a los clientes la realiza habitualmente el propio servidor. Caché de Datos. Los datos que se envían al cliente a favor de una transacción se pueden alojar en una caché del cliente, incluso una vez completada la transacción. Caché de Bloqueos. Los bloqueos también pueden ser almacenados en la memoria caché del cliente (si los datos están divididos entre los clientes), de manera que un cliente rara vez necestia datos que están siendo utlizados por otros clientes.

  19. SISTEMAS PARALELOS

  20. SISTEMAS PARALELOS Los Sistemas Paralelos mejoran la velocidad de procesamiento y de E/S mediante la utilización de varios CPUs y Discos. Cada vez son más comunes las máquinas paralelas, lo que hace que cada vez sea más importante el estudio de los Sistemas Paralelos de BD. El impulso en los Sistemas Paralelos de BD ha sido la demanda de aplicaciones que han de manejar BD extremadamente grandes (del orden de los Terabytes = 1012 bytes).

  21. Sistemas que tienen que procesar un número enorme de transacciones por segundo (del orden de miles/seg.). En el procesamiento paralelo se realizan muchas operaciones simultáneamente. Una máquina paralela de grano grueso consiste en un pequeño número de potentes procesadores. Una máquina masivamente paralela o de grano fino utiliza miles de procesadores más pequeños.

  22. Las computadoras masivamente paralelas se distinguen de las máquinas paralelas de grano grueso, porque son capaces de soportar un grado de paralelismo mucho mayor. Para medir el rendimiento de los SBD existen dos medidas principales: a) La Productividad, número de tareas que pueden completarse en un intervalo de tiempo determinado. b) El Tiempo de Respuesta, cantidad de tiempo que necesita para completar una única tarea a partir del momento en que se envíe. Un sistema que procese un gran número de pequeñas transacciones puede mejorar la productividad, realizando muchas transacciones en paralelo.

  23. Un sistema que procese transacciones largas puede mejorar el tiempo de respuesta así como la productividad, realizando en paralelo las distintas subtareas de cada transacción. GANANCIA DE VELOCIDAD Y AMPLIABILIDAD La ganancia de velocidad se refiere a la ejecución en menos tiempo de una tarea dada, mediante el incremento del grado de paralelismo. La Ampliabilidad se refiere al manejo de transacciones más largas, mediante el incremento del grado de paralelismo.

  24. Lista de TOP 10 Sites for June 2006 (Supercomputadoras) http://www.top500.org/lists/2006/06

  25. CRAY Y-MP4/464 • Aspectos Físicos: • La supercomputadora Cray se compone de varios gabinetes: • El CPU • Las unidades de disco • La unidad de refrigeración • Y la unidad de control de energía y refrigeración. El CPU ocupa un área de 1.5 m., pesa 2,450 kg. y mide 1.9 m. de altura.

  26. CRAY Y-MP4/464 • Características: • El equipo instalado tiene 4 procesadores diseñados con capacidad para trabajar en paralelo y realizar operaciones matemáticas escalares o vectoriales. • La memoria central del CPU es de 32 Megapalabras (1 palabra=64 bits), además existe una memoria temporal (Buffer Memory) de 4 Mp (32MB). • Ésta sirve como interfaz entre los procesadores y los subsistemas restantes del CPU.

  27. CRAY-ORIGIN 2000 de Silicon Graphics • Sistema Operativo: • El sistema operativo de CRAY es UNICOS 7.0., el cual está basado en UNIX. • Dicho sistema operativo tiene capacidad de multiproceso y multiprogramación así como un sistema de archivos distribuido en diferentes unidades físicas. • Características: • 40 Procesadores MIPS RISC R 10000 64-bit a 195 MHZ. • 10 Gb en memoria RAM. • 171 Gb de espacio en disco. • 13.6 GFlops pico (contra los 1.2 GFlops de la CRAY Y-P4/464).

  28. Una característica muy importante, es que este nuevo tipo de procesadores pertenecen a la tecnología CMOS. • Los cuales requieren solamente enfriamiento por aire a 15 grados centígrados y no una compleja instalación de enfriamiento con Fluorinert. • Como la que usa la actual supercomputadora, por lo cual el mantenimiento es mínimo.

  29. Esta máquina es la supercomputadora más grande de América Latina y una de las más grandes del mundo. • Con lo que la UNAM vuelve a estar a la vanguardia de la tecnología como lo estuvo en la época en la que se adquirió la CRAY-YMP 4/464. • Esta nueva supercomputadora estará muy pronto a la disposición de la comunidad universitaria, para el desarrollo de investigaciones de primer nivel.

  30. BlueGene/L, Number 1 on the TOP500 list of supercomputers, • La BlueGene/L, es la número 1 en el TOP500 de la Lista de Supercomputadoras. • Es revolucionaria, una máquina de bajo costo que entrega extraordinario poder de cómputo para simulaciones científicas y trabajo programático. • La BlueGene/L se encuentra optimizada para ejecutar aplicaciones dinámicas moleculares a velocidades extremas.

  31. Video de la Construcción de la BlueGene/L, Number 1 on the TOP500 list of supercomputers.

  32. Casos de ejemplo: Consideremos un sistema paralelo con un cierto número de procesadores y discos que está ejecutando una aplicación de BD. Supóngase ahora que se incrementa el tamaño del sistema añadiéndole más procesadores, discos y otros componentes. El objetivo es realizar el procesamiento de la tarea en un tiempo inversamente proporcional al número de procesadores y discos del sistema.

  33. Se dice que un sistema paralelo tiene una ganancia de velocidad lineal si la ganancia de velocidad es N, cuando el sistema cuenta con N veces más recursos (CPUs, Discos, etc.). Si la ganancia de velocidad es menor que N, se dice que el sistema tiene una ganancia de velocidad sublineal. Ganancia de velocidad lineal Ganancia de velocidad sublineal Velocidad Recursos

  34. La ampliabilidad está relacionada con la capacidad para procesar tareas más largas en el mismo tiempo, mediante el incremento de los recursos del sistema. • Si el tiempo utilizado para realizar una tarea N veces más grande es igual al tiempo utilizado en otra tarea normal, se dice que tiene una Ampliabilidad Lineal. • Por el contrario, si el tiempo utilizado para realizar una tarea N veces más grande, es mayor al tiempo utilizado en otra tarea normal, se dice que el sistema tiene una Ampliabilida Sublineal.

  35. Ampliabilidad lineal TP / TG Ampliabilidad sublineal Tamaño del problema • El objetivo del paralelismo en los SBD suele ser asegurar que la ejecución del sistema continuará realizándose a una velocidad aceptable, incluso en el caso de que aumente el tamaño de la BD o el número de transacciones.

  36. El incremento de la capacidad del sistema mediante el incremento del paralelismo proporciona a una empresa un modo de crecimiento más suave, que el de reemplazar un sistema centralizado. • Al utilizar la Ampliabilidad deben atenderse los valores del rendimiento absoluto. • Ya que una máquina con una ampliabilidad lineal puede tener un rendimiento más bajo que otra con ampliabilidad sublineal. • Simplemente porque ésta última pueda ser mucho más rápida que la primera.

  37. Existen algunos factores que trabajan en contra de la eficiencia del paralelismo y pueden atenuar tanto la ganancia de velocidad como la ampliabilidad: • Costos de Inicio. El inicio de un único proceso lleva asociado un costo. En una operación paralela compuesta por miles de procesos el tiempo de inicio puede llegar a ser mucho mayor que el tiempo real de procesamiento, influyendo negativamente en la ganancia de velocidad. • Interferencia. Los procesos que se ejecutan en un sistema paralelo pueden acceder con frecuencia a recursos compartidos, sufriendo retardos como consecuencia de la interferencia de cada nuevo proceso en la competencia con los procesos existentes por el acceso a los recursos más comunes (bús, disco duros, bloqueos, etc). Este fenómeno afecta tanto a la ganancia de velocidad como a la ampliabilidad.

  38. Sesgo. El tiempo de servicio de una tarea completa vendrá determinado por el tiempo de servicio de la subtarea más lenta. Normalmente es difícil dividir una tarea en partes exactamente iguales, entonces se dice que la forma de distribución de los tamaños es sesgada. Por ejemplo, si se divide una tarea de tamaño de 100 en 10 partes y la división está sesgada, puede haber algunas tareas de tamaño menor que 10 y otras de tamaño superior.

  39. COMPUTACIÓNDISTRIBUIDA

  40. GRID COMPUTING • La computación en Grid o en Malla es un nuevo paradigma de Computación Distribuida. • En el cual todos los recursos de un número indeterminado de computadoras son englobados, para ser tratados como una única supercomputadora de manera transparente. • Estas computadoras englobadas no están conectadas o enlazadas firmemente. Es decir, están débilmente acopladas.

  41. GRID COMPUTING • Es decir, no tienen porque estar en el mismo lugar geográfico. Se encuentran geográficamente distribuidas. • Se puede tomar como ejemplo el proyecto SETI@Home. • En el cual trabajan computadoras alrededor de todo el planeta para buscar vida extraterrestre.

  42. GRID COMPUTING • La computación distribuida, computación en Parrilla o informática en Rejilla, es un nuevo modelo para resolver problemas de computación masiva. • Utilizando un gran número de computadoras organizadas en racimos (o apiladas), incrustadas en una infraestructura de telecomunicaciones distribuida. • El sistema Grid consiste en compartir recursos heterogéneos, basados en distintas plataformas, arquitecturas de equipos y programas, lenguajes de programación, etc.

  43. GRID COMPUTING • Y que se encuentren situados en distintos lugares y pertenecientes a diferentes dominios de administración, sobre una red que utiliza estándares abiertos. • Dicho brevemente, consiste en virtualizar los recursos informáticos. • El sistema Grid ha sido diseñado para resolver problemas demasiado grandes para cualquier simple Supercomputadora.

  44. GRID COMPUTING • Mientras se mantiene la flexibilidad de trabajar en múltiples problemas más pequeños. • Por lo tanto, el sistema Grid es naturalmente un entorno multi-usuario. • Por ello, las técnicas de autorización segura son esenciales, antes de permitir que los recursos informáticos sean controlados por usuarios remotos.

  45. EJEMPLOS DE SISTEMAS GRID

  46. Globus • La herramienta Globus ha emergido como el estándar de facto para la capa intermedia (middleware) del Grid. • Globus tiene recursos para manejar: • La gestión de recursos (Protocolo de Gestión de Recursos en Grid, Grid Resource Management Protocol). • Servicios de Información (Servicio de Descubrimiento y Monitorización, Monitoring and Discovery Service). • Administración y Movimiento de Datos (Acceso Global al Almacenamiento Secundario, Global Access to secondary Storage y FTP en Grid, GridFTP).

  47. Globus • La mayoría de Grids que se expanden sobre las comunidades académicas y de investigación, de Norteamérica y Europa, están basadas en las herramienta Globus Toolkit como núcleo de la capa intermedia. • XML • Los Servicios Web basados en XML, ofrecen una forma de acceder a diversos servicios/aplicaciones en un entorno distribuido.

  48. XML • Recientemente, el mundo de la informática en Grid y los Servicios Web caminan juntos para ofrecer el Grid como un Servicio Web. • La arquitectura está definida por la Open Grid Services Architecture (OGSA). • La versión 3.0 de Globus Toolkit, que actualmente se encuentra en fase Alfa, será una implementación de referencia acorde con el estándar OGSA.

  49. XML • El Grid ofrece una forma de resolver grandes retos, como: • El plegamiento de las proteínas y descubrimiento de medicamentos. • Modelado financiero. • Simulación de terremotos. • Inundaciones. • Y otras catástrofes naturales: • Modelado del clima/tiempo, etc.

  50. XML • Ofrecen un camino para utilizar los recursos de las tecnologías de la información de forma óptima en una organización. • COMPUTACIÓN DE CICLOS REDUNDANTES • El modelo de computación de ciclos redundantes, también conocido como computación zombi, es el empleado por aplicaciones como Seti@Home.

More Related