Grid Computing

13
GRID COMPUTING Elaborado por José Manuel Molina para el Centro de Difusión de Tecnologías ETSIT-UPM Septiembre, 2003 1. Introducción 2. ¿Qué es y para qué sirve el Grid Computing? 3. Arquitectura del Grid 4. Aplicaciones y Servicios en Grid 5. Conclusiones 6. Referencias Introducción El término Grid Computing apareció a mediados de los años 90 en los trabajos de Ian Foster y Carl Kesselman. La idea de grid está enfocada fundamentalmente al acceso remoto a recursos computacionales y pretende ser un paradigma de desarrollo sin centrarse en una tecnología concreta. La evolución de grid computing se refleja en el avance de la estandarización de esta tecnología (el estándar de Globus Project es el estándar de facto) donde se encuentra definida la arquitectura del grid, los niveles de acceso, los requisitos, los servicios, etc. Esta definición no incluye el uso de una tecnología concreta si no que explícitamente determina como necesario el uso de múltiples tecnologías para el completo desarrollo del grid global. El concepto de grid computing se enmarca dentro de la tecnología de computación distribuida englobando conceptos como sistemas operativos distribuidos, programación multiprocesador, redes de ordenadores, etc. De alguna manera el concepto de grid computing da una unidad conceptual a todos estos problemas de manera que todos ellos pueden verse desde una perspectiva grid. Como antecesor directo del concepto de Grid Computing se suele citar el proyecto SETI@home. En este trabajo los datos recogidos en el observatorio de Arecibo (Puerto Rico) son procesados por ordenadores de todo el mundo. Este proyecto es muy conocido mundialmente y una de las razones por las que tuvo tanto éxito es el objetivo científico del proyecto, la búsqueda de vida inteligente en el espacio. Para alcanzar ese objetivo se necesitaba una enorme cantidad de cómputo y ésta se conseguía compartiendo los ciclos de CPU de millones de máquinas. El propietario de un ordenador donaba los recursos de su máquina de manera que cuando ésta estaba inactiva ejecutaba ciclos de trabajo para el proyecto SETI. Esta iniciativa interconectó millones

description

Resumen

Transcript of Grid Computing

  • GRID COMPUTING

    Elaborado por Jos Manuel Molina para el Centro de Difusin de Tecnologas ETSIT-UPM

    Septiembre, 2003

    1. Introduccin 2. Qu es y para qu sirve el Grid Computing? 3. Arquitectura del Grid 4. Aplicaciones y Servicios en Grid 5. Conclusiones 6. Referencias

    Introduccin

    El trmino Grid Computing apareci a mediados de los aos 90 en los trabajos de Ian Foster y Carl Kesselman. La idea de grid est enfocada fundamentalmente al acceso remoto a recursos computacionales y pretende ser un paradigma de desarrollo sin centrarse en una tecnologa concreta. La evolucin de grid computing se refleja en el avance de la estandarizacin de esta tecnologa (el estndar de Globus Project es el estndar de facto) donde se encuentra definida la arquitectura del grid, los niveles de acceso, los requisitos, los servicios, etc. Esta definicin no incluye el uso de una tecnologa concreta si no que explcitamente determina como necesario el uso de mltiples tecnologas para el completo desarrollo del grid global.

    El concepto de grid computing se enmarca dentro de la tecnologa de computacin distribuida englobando conceptos como sistemas operativos distribuidos, programacin multiprocesador, redes de ordenadores, etc. De alguna manera el concepto de grid computing da una unidad conceptual a todos estos problemas de manera que todos ellos pueden verse desde una perspectiva grid.

    Como antecesor directo del concepto de Grid Computing se suele citar el proyecto SETI@home. En este trabajo los datos recogidos en el observatorio de Arecibo (Puerto Rico) son procesados por ordenadores de todo el mundo. Este proyecto es muy conocido mundialmente y una de las razones por las que tuvo tanto xito es el objetivo cientfico del proyecto, la bsqueda de vida inteligente en el espacio. Para alcanzar ese objetivo se necesitaba una enorme cantidad de cmputo y sta se consegua compartiendo los ciclos de CPU de millones de mquinas. El propietario de un ordenador donaba los recursos de su mquina de manera que cuando sta estaba inactiva ejecutaba ciclos de trabajo para el proyecto SETI. Esta iniciativa interconect millones

  • de ordenadores a lo largo del mundo, permitiendo tener una capacidad de cmputo muy superior a la de un superordenador.

    Aunque se suele citar SETI como precursor, la idea de Grid Computing es mucho ms ambiciosa ya que no slo se trata de compartir ciclos de CPU para realizar clculos complejos sino que se busca la creacin de una infraestructura de computacin distribuida. Esta ardua tarea involucra labores de definicin de la arquitectura general, de interconexin de diferentes redes, de definicin de estndares, de desarrollo de procedimientos para la construccin de aplicaciones, etc.. El Grid es ms que una aplicacin es una idea que puede revolucionar el mundo de la computacin y el cmo se desarrollan las aplicaciones actualmente.

    El concepto de Grid Computing ha evolucionado a lo largo de estos aos dentro del Globus Project, proyecto que englobaba a un conjunto de investigadores con el objetivo comn de desarrollar los conceptos de Grid Computing y de crear una arquitectura que permitiera el desarrollo de esta tecnologa. El impacto tecnolgico que ha generado el concepto de Grid ha removido esa estructura, actualmente se habla de la Globus Alliance (www.globus.org), y ha generado multitud de agrupaciones, como por ejemplo el Global Grid Forum que agrupa el Grid Forum, el eGrid European Grid Forum y la comunidad Grid de Asia-Pacfico, y sus ideas se discuten en congresos internacionales centrados en este tema, como por ejemplo el IEEE International Symposium on Cluster and Grid Computing o el ICCS Workshop on Grid Computing for Computational Science, y en reuniones donde la tecnologa Grid acta como catalizador de ideas de otras reas, como por ejemplo el Workshop Agent Based Cluster and Grid Computing (AgentGrid) donde el desarrollo de sistemas basados en agentes aprovecha las posibilidades de computacin que les suministra la tecnologa Grid Computing.

    Aunque la investigacin en grid computing ha estado liderada por EEUU a travs del Globus Project (origen de la idea), el Global Grid Forum (centrado en el desarrollo de estndares para la Grid) y TeraGrid (centrado en las redes WAN de alta velocidad, 40 Gbps, y almacenamiento distribuido), tambin en Europa se han producido avances a travs de proyectos europeos como CrossGrid (centrado en supercomputacin y anlisis de grandes volmenes de datos), EuroGrid (centrado en la aplicacin de tecnologas Grid en el mbito cientfico e industrial), DataGrid (centrado en el anlisis de grandes volmenes de datos) y UK e-Science (proyecto del Reino Unido centrado en investigacin distribuida).

    En los ltimos aos el concepto de Grid Computing ha desbordado el mbito acadmico y ha aparecido en multitud de medios de comunicacin (vese el artculo del domingo 5 de Octubre de 2003 aparecido en la seccin Negocios de El Pas) asociando Grid Computing con conceptos como Internet, explotacin de ciclos de CPU inutilizados, bases de datos a incluso Inteligencia Artificial. A esta mezcla de conceptos han contribuido empresas del sector que han lanzado productos cuya base es el Grid Computing y donde se vende la idea de Grid Computing como tecnologa a aplicar en el mbito empresarial para mejorar las prestaciones de los sistemas informticos. IBM, Oracle, HP, Sun son ejemplos de empresas que se han lanzado al desarrollo de productos que utilizan esta tecnologa. Todas estas ideas se muestran en la Figura 1.

  • Figura 1. Origen y Desarrollo del Grid Computing

    Las empresas han encontrado un concepto que pueden explotar y que puede dar nuevos aires al mercado. Empresas como IBM mantienen grupos de investigacin en Grid Computing que buscan la aplicabilidad de esta tecnologa en campos muy cercanos a la empresa, fundamentalmente servicios Web (puede verse en las pginas de IBM en la seccin de developerWorks en Web services). Otras empresas se han centrado ms en el desarrollo de supercomputadores mediante la conexin de ordenadores en red, es el caso de HP y son muy conocidas las interconexiones de sus supercomputadores a grids de investigacin, como la conexin del supercomputador de HP (9.2-teraflop) al Grid Cientfico del DOE (Department of Energy's Pacific NorthWest National Laboratory). Otras empresas han desarrollado nuevas versiones de sus productos utilizando las ideas de esta tecnologa, por ejemplo, la ltima versin de Oracle se denomina 10g, donde la "g" de Grid sustituye a la "i" de Internet de la versin anterior la 9i.

    Las ideas representadas en el concepto de grid computing afectan a los sistemas distribuidos, a la computacin paralela, a las redes de computadoras, a la seguridad y a las bases de datos. Parece claro que Grid Computing no es una moda, y queda, todava, un largo camino por recorrer desde los conceptos hasta las aplicaciones reales. Aunque existen muchos mini-grids para el desarrollo de investigaciones no parece cercano el da en que todos los ordenadores del mundo formen un Grid Mundial a modo de gigantesco sistema de distribucin elctrico (paradigma del grid computing en casi todas las publicaciones sobre el tema), donde los usuarios se conecten y tengan acceso a la capacidad de cmputo y de almacenamiento que precisen sin preocuparse de donde se genera.

  • Qu es y para qu sirve el Grid Computing?

    El concepto de Grid Computing da idea de una gran potencia de clculo y almacenamiento, y parece un gran avance en las ciencias de la computacin. La pregunta que el lector puede hacerse es es real? existe ms all de la idea original?. Como hemos visto el grid computing es actualmente una de las reas en las que ms activamente se est investigando (tanto en proyectos europeos como estadounidenses) y a la que se han apuntado las grandes empresas del desarrollo informtico como Sun, Oracle, IBM o HP. Adems existen multitud de aplicaciones reales que hacen uso de mini-grids, casi todas ellas estn centradas en el campo de la investigacin en el terreno de las ciencias fsicas, mdicas y del tratamiento de la informacin. Una lista extensa de aplicaciones desarrolladas sobre grids puede verse en la pgina web www.globus.org/research/papers.html.

    Hemos hablado mucho de lo que ofrece y de las posibilidades del grid computing pero todava no hemos definido de manera concreta el trmino. Para hacerlo vamos a utilizar la definicin que Ian Foster y Carl Kesselam nos dan en el captulo Computational Grids que aparece en su libro The Grid Blueprint for a Future Computing Infraestructure: Un grid computacional es una infraestructura hardware y software que suministra al que la utiliza acceso seguro (dependable), consistente (consistent), penetrante (pervasive) y barato (inexpensive), a unas elevadas capacidades computacionales. En la figura 2 se muestran estas ideas.

    Figura 2. Caractersticas de un Grid Computacional

    El concepto infraestructura se utiliza porque un grid es un conjunto de recursos (ciclos de CPU, datos, sensores, etc.), y todos esos recursos necesitan una interconexin hardware y un control software para que estn ensambladas en un grid. Esta infraestructura debe proporcionar a los usuarios un servicio seguro a todos los niveles: capacidad de cmputo, de integridad de datos, de seguridad de acceso, etc. El servicio debe ser consistente, basado en estndares, y de esta manera el acceso y las operaciones sobre el grid estarn definidas por dichos estndares evitando la heterogeneidad. La idea de penetracin no es tanto la posibilidad de acceder a cualquier recurso del grid como que el grid llega a cualquier sitio, de esta manera uno se asegura que una vez conectado desde cualquier punto puede extraer del grid toda la potencia que requiera. Por ltimo el acceso y uso del grid debe tener un coste econmico que le haga atractivo para que su utilizacin se universalice.

    Para terminar de definir el concepto los autores, en ese mismo captulo, desgranan cada uno de los posibles campos de aplicacin de la tecnologa grid (ver Figura 3).

  • Figura 3. Aplicaciones de la computacin en Grid

    El anlisis les lleva a definir cinco grandes reas de trabajo determinadas por las necesidades de clculo, espacio para el almacenamiento de los datos y tiempo de respuesta. Las reas son:

    Supercomputacin distribuida. Dentro de esta rea se encuentran aquellas aplicaciones cuyas necesidades es imposible satisfacer en un nico nodo. Estas necesidades se producen en instantes de tiempo determinados y consumen muchos recursos, por lo que se dice que son puntuales e intensivas. Ejemplo de este tipo de aplicaciones son las simulaciones, las herramientas de clculo numrico, los procesos de anlisis de datos, la extraccin de conocimiento de almacenes de datos, etc.

    Sistemas distribuidos en tiempo real. En este tipo de aplicaciones se consideran aquellas que generan un flujo de datos a alta velocidad que debe ser analizado y procesado en tiempo real. Ejemplo de este tipo de aplicaciones son los experimentos de fsica de alta energa, control remoto de equipos mdicos de alta precisin y precio, todos los procesos de la denominada e-Medicine, el tratamiento de imgenes para la visin artificial, etc.

    Proceso intensivo de datos. En esta rea nos centramos en aquellas aplicaciones que hacen un uso intensivo del espacio de almacenamiento. Las necesidades de almacenamiento de este tipo de aplicaciones desbordan la capacidad de almacenamiento de un nico nodo y los datos son distribuidos por todo el grid. Adems de los beneficios por el incremento de espacio, la distribucin de los datos a lo largo del grid permite el acceso a los mismos de forma distribuida. Ejemplos de este tipo de aplicaciones son todos los sistemas gestores de bases de datos distribuidas.

    Servicios puntuales. En esta rea, nos olvidamos del concepto de potencia de clculo y capacidad de almacenamiento para centrarnos en recursos que una organizacin puede considerar como no necesarios. De esta manera el grid ofrece a la organizacin esos recursos sin que la organizacin deba desarrollarlos por si misma. Ejemplos de este tipo

  • de aplicaciones son aquellas que permiten acceder a hardware muy especfico (equipos costosos de medida o de anlisis de muestras) para la realizacin de labores a distancia.

    Entornos virtuales de colaboracin. Esta rea est relacionada directamente con el concepto de Teleinmersin, de manera que se utilizan los enormes recursos computacionales del grid y su naturaleza distribuida para generar entornos virtuales 3D distribuidos.

    Arquitectura del Grid

    Las aplicaciones, los toolkits, las APIs, los SDK, etc. que se definen para la computacin en Grid deben de cumplir una arquitectura general que fue presentada por Ian Foster, Carl Kesselman y Steve Tuecke en su artculo "Anatomy of the Grid: Enabling Scalable Organizations" publicado en el ao 2000. Esta arquitectura general se articula en cinco niveles: la infraestructura, la conectividad, la gestin del recurso, la gestin de varios recursos y el nivel de aplicacin, segn se muestra en la figura 4. Principalmente, la arquitectura propuesta es una arquitectura de protocolos que definen los mecanismos bsicos que permiten a los usuarios y a los recursos negociar, establecer, gestionar y explotar la comparticin de recursos. Una arquitectura abierta basada en un estndar facilita la extensibilidad, la interoperatibilidad, la portabilidad y la comparticin de cdigo. De esta manera la estandarizacin de los protocolos permite estandarizar los servicios y mejorar las capacidades del grid.

    Figura 4. Arquitectura de la Grid

    En el nivel de infraestructura se encuentran los recursos computacionales, como son los ordenadores, los clusters, los supercomputadores, los sistemas de almacenamiento en red, las bases de datos, etc. Tambin se incluyen en este nivel la infraestructura de la red y sus mecanismos de gestin y control. En la terminologa Grid la infraestructura se denomina la Fbrica y suministra los componentes que sern compartidos.

    El nivel de conectividad incluye los protocolos de comunicacin y seguridad que permiten a los recursos computacionales comunicarse. Entre estos protocolos se encuentran: la pila de protocolos TCP/IP, el protocolo SSL, Certificados X.509. Tambin se incluyen los nuevos protocolos que se encuentran en fase de estudio y que permitirn mejorar el rendimiento en las redes de alta velocidad. La seguridad es un punto muy importante de la computacin en grid por su propia naturaleza distribuida ya

  • que se comparten recursos entre distintas organizaciones que pueden tener distintas polticas de seguridad.

    El nivel de recurso se centra en la gestin de un nico recurso y permite tener informacin y control sobre el mismo. En este nivel se encuentran los protocolos que permiten obtener la informacin de un recurso: las caractersticas tcnicas, la carga actual, el precio, etc. Tambin se encuentran los protocolos que permiten el control del recurso: el acceso al mismo, el arranque de procesos, la gestin, la parada, la monitorizacin, la contabilidad de uso y la auditoria del recurso.

    La capa de recursos engloba todos los servicios que permiten gestionar un conjunto de recursos. Se encuentran los servicios de directorio, que permiten localizar los recursos que son de nuestro inters; los schedulers distribuidos, que permiten asignar las tareas a cada recurso; la monitorizacin y diagnstico de la ejecucin de las distintas tareas en que se distribuye la ejecucin de una aplicacin; la contabilidad, que permite calcular el coste de la utilizacin de varios recursos heterogneos; y, el acceso a datos distribuidos, que gestiona la replicacin de datos. El servicio de scheduler distribuido es una de las aplicaciones ms complejas de un desarrollo grid ya que existen tres scheduler distintos: el planificador de trabajos (job scheduler) que intenta maximizar la cantidad de trabajo realizado (trabajos por unidad de tiempo), el planificador de recursos que intenta maximizar el uso de los recursos, y, el planificador de la aplicacin que divide la aplicacin en tareas, asigna los recursos para su ejecucin y vigila el desarrollo de los mismos. Los dos primeros priman la eficiencia del sistema grid, mientras que el tercero prima la eficiencia de la aplicacin.

    El ltimo nivel, el de aplicacin, se centra en la definicin de protocolos que permitan a las aplicaciones el acceso a la infraestructura del grid a travs de las distintas capas. Segn el tipo de aplicacin puede ser necesario conectarse a las distintas capas o acceder directamente a una de ellas, incluso directamente a la infraestructura.

    El estndar de grid computing es el definido por la implementacin del GlobusProject: Globus Toolkit version 3 (GT3). La versin 3 est basada en tecnologas estndar como XML, SOAP, WSDL, Servicios Web y est implementada ntegramente en Java. La arquitectura del Globus Toolkit v3 se estructura en varias capas. La capa inferior es el nucleo donde se encuentran las factoras de recursos, el servicio de notificaciones, el servicio de persistencia y el servicio de ciclo de vida. En la segunda capa se encuentran los servicios de seguridad (GSI Grid Security Infraestructure). En la tercera capa se encuentran los servicios bsicos como la gestin de trabajos, los servicios de directorio y monitorizacin y los de transferencia de ficheros. En el nivel ms alto se encuentran los servicios de gestin de grandes cantidades de datos y aquellos servicios que no son del GT3 pero que se basan en esta arquitectura.

    En esta versin se introduce el concepto de grid service que es una ampliacin de los Web Services y cuya arquitectura est especificada por el Global Grid Forum (OGSA, Open Grid Services Architecture y OGSI, Open Grid Services Infraestructure). La idea era buscar una tecnologa de objetos distribuidos que se adaptase a las necesidades de una aplicacin grid, y se pens en los Web Services, aunque estos presentaban algunas limitaciones que se superaron:

  • Los Web Services no mantienen el estado de una invocacin a otra, los grid services si.

    Los Web services no son transientes, es decir no se pueden crear varias instancias de un mismo servicio segn se necesita y destruirlas cuando ya no son necesarias, en los grid services si se puede.

    Los Web Services no incluyen servicios de apoyo que han sido incluidos en los grid services como son las notificaciones, el servicio de persistencia, la gestin del ciclo de vida, etc.

    Los grid services utilizan un enfoque de Factoras de Objetos de manera que en lugar de tener un nico servicio compartido por todos los usuarios (como el Web Service) se tiene un servicio-factora que crea instancias individuales del servicio. Cuando se invoca a una operacin del servicio se accede a la instancia y no a la factora. Adems se puede crear una instancia por cliente, o varias por cliente o una para varios clientes. Por ltimo la destruccin de la instancia puede correr a cargo del cliente o de la factora.

    Aplicaciones y Servicios en Grid

    Como hemos visto, el desarrollo de la arquitectura y el estndar del grid computing se debe a la investigacin de centros especializados y muy concretamente al Globus Project. El avance definitivo del concepto de grid computing se observa en la aplicabilidad de sus ideas en productos comerciales y los desarrollos de compaas de software basados en el estndar de grid.

    Supercomputacin

    Uno de los campos donde se han centrado ms los esfuerzos de compaas comerciales es en el de la supercomputacin. Empresas con un amplio abanico de productos, como HP y Sun, y otras especializadas como ENTROPIA o GridSystems, ofrecen desarrollos para la instalacin de grids con altas capacidades de cmputo. As por ejemplo, como ya se coment en la introduccin, HP conect al grid del DOE (DOE Science Grid, http://www.doesciencegrid.org) una mquina Linux de 9,2 teraflops (nota del 23 de Julio de 2002 en www.gridcomputingplanet.com/news). Este grid se usa para llevar a cabo simulaciones, analizar datos y coordinar experimentos. Sobre la mquina se instalar el software de Globus para permitir la gestin de recursos, el movimiento de datos y el control de la seguridad entre los grupos de investigacin que hagan uso de l. Los usuarios se identificarn en el grid mediante las credenciales de autenticacin del GSI (Grid Security Infraestructure). El estndar de seguridad de Globus. El supercomputador de HP ser puesto a disposicin del grid a travs del Globus MDS (Monitoring and Discovery Service), un catlogo seguro de todos los recursos del grid.

    En el caso de Sun son conocidas sus instalaciones en Ford Motor's Engine and Transmission Groups que cuentan con 500 workstation Sun Blade con procesador dual o SAAB Automovile AB que cuenta con 100 workstation de Sun. En estas instalaciones se llevan a cabo las simulaciones sobre aerodinmica de los nuevos modelos. Ambas instalaciones hacen uso del Sun ONE Grid Engine (que es capaz de ejecutar 7000 grids con unas 47 CPU's por grid). Este software puede utilizarse sobre Linux o Sun OS y tiene una versin de libre distribucin en www.Sun.com y cuya versin comercial comienza a partir de 20.000 dlares.

  • GridSystems es una compaa espaola fundada en Febrero de 2000 que ha desarrollado el productor InnerGrid para la aplicacin de la tecnologa grid en entornos empresariales, acadmicos y de investigacin. Este software divide datos y procesos en pequeas unidades que se ajustan dinmicamente a los recursos conectados a la red. El sistema es multiplataforma (Windows y todos los sistemas UNIX). Esta empresa ha desarrollado trabajos para diversas empresas pero su desarrollo ms conocido es la red grid de la Universidad Politcnica de Valencia. En esta red se integra el servidor de la serie ALTIX 3000 de Silicon Graphics, con 48 procesadores Itanium 2, el cluster de IBM con 64 nodos, biprocesador Xeon, y, las 3000 CPU's con las que cuenta la universidad en aulas y departamentos. Este proyecto sita a la UPV a la cabeza de Espaa en lo que se refiere a capacidad de clculo disponible.

    ENTROPIA (www.entropia.com) es una empresa centrada en el PC Grid Computing, uno de sus trabajos ms interesante es el que ha llevado a cabo en el centro de supercomputacin de San Diego. El producto que desarrolla se denomina DCGrid Platform que permite utilizar una red de CPUs para aprovechar los ciclos libres de CPU aumentando la capacidad de cmputo global con un bajo coste. De esta manera los ciclos libres son utilizados por aplicaciones que consumen muchos recursos y necesitaran de un supercomputador o por trabajos puntuales e intensivos en una fraccin de tiempo. La instalacin del producto en una empresa permite la utilizacin de mquinas que han quedado obsoletas y la instalacin de nuevas mquinas sin que se interfiera en el trabajo de la compaa, ya que el software es fcilmente escalable.

    Proceso intensivo de datos

    Otra de las grandes reas de aplicacin es el almacenamiento masivo de datos. Dentro de esta rea se encuentran los nuevos productos de Oracle: Oracle Database 10g, Oracle Application Server 10g, Oracle Enterprise Manager 10g y Oracle 10g Development Tools. Estas nuevas versiones se centran en la aplicacin de las ideas de Grid Computing al almacenamiento de datos. La nueva versin parte de la arquitectura actual en la que se encuentran la mayora de los sistemas de informacin (vase Figura 5). Cada una de las capas es de uso dedicado a cada sistema de informacin. Evidentemente, el fallo de alguno de los componentes de los tres niveles (Application Server, Database y Storage) supondra una perdida del servicio.

    Figura 5. Arquitectura actual de los Sistemas de Informacin

    Oracle con la nueva arquitectura basada en grid computing pretende crear "granjas/factoras de almacenamiento" y servidores estndares y modulares, a las que se

  • puede aadir servidores rpidamente. En la Figura 6 se detalla a grandes rasgos la arquitectura propuesta con la versin Oracle 10g.

    Figura 6 . Arquitectura "Grid Computing" para los Sistemas de Informacin

    Las caractersticas de esta arquitectura seran:

    Capacidad de balanceo de sistemas. No habra necesidad de calcular la capacidad de los sistemas en funcin de los picos de trabajo, ya que la capacidad se puede reasignar desde la granja de recursos a donde se necesite. Oracle 10g ha mejorado su arquitectura RAC (Real Application Clusters) y permite gestionar clusters con sus dos nuevas funcionalidades:

    o Automatic Service Provisioning. Permite la asignacin y reasignacin de los servidores a las cargas de trabajo (servicios). Los clientes hacen login a los servicios y son automticamente encaminados al servidor apropiado segn el momento.

    o Integrated Clusterware. Permite la gestin (configuracin, instalacin, ...) de clusters.

    Alta disponibilidad. Con la nueva funcionalidad (Automatic Service Provisioning), si un servidor falla, Oracle reasigna los servicios en los servidores restantes.

    Reduccin de costes. Con esta arquitectura los servicios son gestionados por "granjas de recursos". Ya no es necesario disponer de "grandes servidores" y podremos hacer uso de componentes de bajo coste. Cada sistema puede ser configurado siguiendo el mismo patrn.

    Facilidades de administracin. Oracle 10g reduce el nmero de parmetros de configuracin. Adems, se ha introducido el Automatic Workload Repository para almacenar informacin sobre diagnsticos de rendimiento y recomendaciones de tuning que Oracle realiza automticamente. Para el anlisis de esta informacin ha introducido un nuevo motor de diagnstico llamado Automatic Database Diagnostics Motor.

    La utilizacin de esta versin permite a una empresa mejorar sus prestaciones sin renunciar al comportamiento tradicional de los Sistemas de Informacin ya que Oracle 10g tambin es operativo en un entorno con un nico servidor (arquitectura tradicional). Adems el gestor de la base de datos de la versin 10g es un 28 % ms rpido que el de la versin 9i, y se incorporan versiones mejoradas de alguna herramientas que fueron introducidas con la versin 9i como son: Flashback Recovery (una herramienta pensada para errores de usuario, con ella podemos "rebobinar" la actividad de la base de datos

  • hasta el momento del error) y Data Guard (aporta nuevas funcionalidades para las copias de seguridad). Por ltimo comentar que Oracle est apostando fuertemente por pequeos servidores de tipo Linux o Windows.

    Servicios Web

    En muchos artculos se relaciona muy directamente el concepto de grid con la nueva generacin de Internet (en algunos casos llega incluso a asimilarse). El nuevo protocolo de Internet IPv6 permitir trabajar con una Internet ms rpida y accesible. Una de las ideas clave en la superacin de las limitaciones actuales de Internet IPv4 es la aparicin de nuevos niveles de servicio que harn uso de la nueva capacidad de la red para intercomunicar los ordenadores. Este avance en la comunicacin permitir el avance de las ideas de grid computing al utilizar como soporte la altsima conectividad de Internet. Es por ello que uno de los campos de mayor innovacin en el uso del grid computing, fuera de los conceptos de supercomputacin, es el desarrollo de un estndar para definir los Grid Services frente a los actuales Web Services.

    Los Web Services son aplicaciones basadas en Internet que interactan de forma dinmica con otras aplicaciones basadas en Web utilizando estndares como XML, UDDI y SOAP. Tanto IBM, como Microsoft y Sun estn decididas a unir la tecnologa grid con los Web Services. Mediante la ltima versin de Globus Toolkit se pueden encontrar grid services en la red. Tambin posibilita la creacin de una interfaz para el servicio y permite invocar una instancia de un grid service. Con esta capacidades el desarrollo de los Grid Services es slo cuestin de tiempo.

    Fruto del intenso trabajo de IBM en el campo de los Grid Services es el intento de adaptacin de su software WebSphere SDK for Web Services, a las nuevas ideas del Grid (en particular en lo referido a seguridad). En IBM se pueden encontrar ejemplos de aplicacin real de la accesibilidad a travs de Web Services que utilizan como sustento la tecnologa grid. A modo de ejemplo se puede acceder a su sistema de base de datos DB2 a travs del Open Grid Service Architecture - Data Access and Integration (OGSA-DAI) que es un entorno que permite la integracin de recursos de datos, como bases de datos relacionales y basadas en XML, en un entorno grid. Bsicamente la aplicacin soporta el protocolo SOAP para los mensajes entre un cliente y un servidor que cumple las especificaciones de OGSA-DAI. En la Figura 7 se puede observar como se hace uso del Globus Toolkit para desarrollar el servicio y el cliente.

    Figura 7. Acceso a Servicios Web a travs de estndares de Grid

  • Conclusiones

    La computacin en grid es actualmente un fenmeno en emergencia al que Globus Project (el proyecto iniciador) ha proporcionado una implementacin estndar que es utilizada por multitud de investigadores y empresas. La estandarizacin del grid, fruto de la unin de investigadores y empresas en el Global Grid Forum, ha permitido que los sistemas que hacen uso del grid salgan del mbito puramente investigador y se integren como sustento de aplicaciones empresariales.

    Las aplicaciones empresariales se han centrado fundamentalmente en el aumento de la capacidad de cmputo en empresas que as lo requeran y en la adaptacin de sistemas de almacenamiento comerciales (como Oracle) a los estndares del grid. Esta rpida absorcin de las ideas del grid computing por parte de las empresas es lo que hace pensar que puede ser una de las tecnologas que en los prximos aos aparezca en alza.

    Esta percepcin se basa tanto en la aplicabilidad de las ideas como en la estrecha relacin de esta tecnologa con las nuevas versiones de Internet que permitirn que el flujo de datos entre los ordenadores aumente, hecho del que se vern beneficiados los desarrollos basados en grid.

    Referencias

    Las referencias cientficas sobre grid computing pueden encontrarse en las pginas de Globus Project de entre todas ellas cabe seleccionar aquellas que definen el concepto de grid computing:

    "The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration". I. Foster, C. Kesselman, J. Nick, S. Tuecke, Open Grid Service Infrastructure WG, Global Grid Forum, June 22, 2002.

    "The Anatomy of the Grid: Enabling Scalable Virtual Organizations". I. Foster, C. Kesselman, S. Tuecke. International J. Supercomputer Applications, 15(3), 2001.

    "Computational Grids". I. Foster, C. Kesselman. Chapter 2 of "The Grid: Blueprint for a New Computing Infrastructure", Morgan-Kaufman, 1999.

    "Computational Grids in Action: The National Fusion Collaboratory". K. Keahey, T. Fredian, Q. Peng, D.P. Schissel, M. Thompson, I. Foster, M. Greenwald, and D. McCune, Future Generation Computer Systems, 18:8, pg. 1005-1015, October 2002

    Las aplicaciones y productos descritos se encuentran en las diversas pginas de las compaas IBM, Microsoft, Sun, HP, Oracle, GridSystems, ENTROPA y en notas de prensa aparecidas en diversos medios electrnicos como < a href="http://www.pc-actual.com">PC Actual, vnunet.com, gridcomputingplanet.com, ameinfo.com, gridtoday.com, autofieldguide.com.

    Cabe destacar la pgina de desarrollos de IBM donde se encuentra un apartado dedicado exclusivamente al grid: http://www-106.ibm.com/developerworks/grid/

  • Tambin de IBM se puede destacar el Research Report "Commercial Applications of Grid Computing" escrito por Catherine H. Crawford, Daniel M. Dias, Arun K. Iyengar, Marcos Novaes, Li Zhang. RC22702 in 2003, accesible va web en http://lists.ebxml.org/archives/ebxml-stc/200012/pdf00000.pdf