Computación grid

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda
En sus comienzos grid computing era una forma de aprovechar recursos computacionales diversos.
Virtualización computacional.

La computación grid es una tecnología innovadora que permite utilizar de forma coordinada todo tipo de recursos (entre ellos cómputo, almacenamiento y aplicaciones específicas) que no están sujetos a un control centralizado. En este sentido es una nueva forma de computación distribuida, en la cual los recursos pueden ser heterogéneos (diferentes arquitecturas, supercomputadores, clusters...) y se encuentran conectados mediante redes de área extensa (por ejemplo Internet). Desarrollado en ámbitos científicos a principios de los años 1990, su entrada al mercado comercial siguiendo la idea de la llamada Utility computing supone una importante revolución.

El término grid se refiere a una infraestructura que permite la integración y el uso colectivo de ordenadores de alto rendimiento, redes y bases de datos que son propiedad y están administrados por diferentes instituciones. Puesto que la colaboración entre instituciones envuelve un intercambio de datos, o de tiempo de computación, el propósito del grid es facilitar la integración de recursos computacionales. Universidades, laboratorios de investigación o empresas se asocian para formar grid para lo cual utilizan algún tipo de software que implemente este concepto.

Historia[editar]

Con el paso del tiempo, el desarrollo del hardware llevó a la mejora y abaratamiento de este, dando paso a tecnologías que antes era impensable emplear, debido a costes o el bajo rendimiento que ofrecían, como lo eran los clusters. Los clusters surgieron como una nueva alternativa muy recomendable en el campo de la computación, tanto paralela como distribuida. Consiste en unir un conjunto de computadores personales o estaciones mediante una red (LAN, SAN, etc.). Su principal ventaja es la mejor relación de coste a rendimiento, sin embargo la gran demanda tanto de computación como de espacio y gestión de almacenamiento requeridos por un gran número de aplicaciones que gestionan grandes cantidades de datos y han de hacerlo de forma eficiente y sencilla, exige el uso de nuevas tecnologías, como es el caso de la computación grid o grid computing.

¿Qué es?[editar]

Llamamos grid al sistema de computación distribuido que permite compartir recursos no centrados geográficamente para resolver problemas de gran escala. Los recursos compartidos pueden ser ordenadores (PC, estaciones de trabajo, supercomputadoras, PDA, portátiles, móviles, etc), software, datos e información, instrumentos especiales (radio, telescopios, etc.) o personas/colaboradores.

La computación grid ofrece muchas ventajas frente a otras tecnologías alternativas. La potencia que ofrecen multitud de computadores conectados en red usando grid es prácticamente ilimitada, además de que ofrece una perfecta integración de sistemas y dispositivos heterogéneos, por lo que las conexiones entre diferentes máquinas no generarán ningún problema. Se trata de una solución altamente escalable, potente y flexible, ya que evitarán problemas de falta de recursos (cuellos de botella) y nunca queda obsoleta, debido a la posibilidad de modificar el número y características de sus componentes.

Estos recursos se distribuyen en la red de forma transparente pero guardando unas pautas de seguridad y políticas de gestión de carácter tanto técnico como económico. Así pues, su objetivo será el de compartir una serie de recursos en la red de manera uniforme, segura, transparente, eficiente y fiable, ofreciendo un único punto de acceso a un conjunto de recursos distribuidos geográficamente en diferentes dominios de administración. Esto nos puede llevar a pensar que la computación Grid permite la creación de empresas virtuales. Es importante saber que una grid es un conjunto de maquinas distribuidas que ayudan a mejorar el trabajo sobre software pesados

Actualidad[editar]

Existen muchos proyectos que han sido desarrollados en esta línea, tales como Edonkey, Emule o Limewire. Se trata de programas para compartir datos a nivel mundial entre diferentes máquinas. Las grid y Peer-to-peer (P2P) tienen mucho en común y especialmente la idea básica de compartición de recursos. Entre las características diferentes podemos ver la P2P como más anónima y generalizada en ordenadores de usuarios de Internet, mientras que las grids nacen de una estructura de nodos más controlada y jerarquizada en centros científicos. Una primera experiencia fue GriPhyN, para unir nodos en el proceso de físicas de altas energías en Estados Unidos.

Otro proyecto también muy importante es SETI@home. Éste cuenta con miles de PC repartidos por Internet que ceden tiempo de sus procesadores, ciclos de proceso desocupados, para analizar señales buscando patrones inteligentes extraterrestres. Sin embargo, su uso destaca también en los centros de investigación desde finales del 1990 en proyectos que van desde Física de Partículas a Astrofísica o incluso Biología. En Europa con el apoyo de proyectos de CERN (Centro Europeo Investigación Nuclear) y el programa marco europeo se creó el software y red EDG (grid de datos europea). El uso de la computación grid en estos campos ha supuesto una mejora exponencial en los últimos años.

Las empresas e instituciones que han participado en el desarrollo de estas tecnologías quieren entrar cuanto antes en una etapa de explotación comercial. Empresas como Microsoft y Sun Microsystems se han dado cuenta de la importancia que tendrá a medio plazo ofrecer grid a sus clientes. Destacamos el papel de IBM invirtiendo en grid como plataforma para ofrecer a sus clientes las ventajas como ahorro de tiempo y recursos económicos.

Existen varias soluciones comerciales en forma de empresas, por ejemplo:

  • La Enterprise Grid Alliance (EGA): se crea en California, en abril de 2004, por un grupo de empresas líderes en tecnología para desarrollar soluciones comerciales-empresariales de informática distribuida y para acelerar el despliegue de esta tecnología en las empresas. Es un consorcio abierto enfocado en el desarrollo y promoción de soluciones de mallas empresariales.
  • Sun Microsystems: el software Grid Engine de Sun hace más fácil agregar máquinas al grid y automáticamente toma ventaja de la energía incrementada, por lo que ahorra tiempo y recursos a través de un grid rápido, eficiente y confiable para el manejo y despliegue.
  • Andago: con el objetivo de acercar la tecnología grid a los entornos industriales y de negocio, Andago añadió a su oferta de soluciones su experiencia en proyectos Grid.
  • JPPF: el software JPPF habilita las aplicaciones con altos requerimientos de procesamiento para ser ejecutadas en varias computadoras con diferentes características (heterógeneas)gracias a su arquitectura basada en Java, de manera escalable(agregando o disminuyendo computadoras participantes) de manera dinámica, distribuyendo la aplicación en tareas(jobs).

Existen diversos middleware con capacidades y funcionalidades muy variadas que, en función de la complejidad, servicios ofrecidos y dimensión de la red grid a implantar, se seleccionará la opción idónea. Las soluciones middleware, todas ellas de código abierto, utilizadas (por ejemplo por Andago) son: EGEE para grandes proyectos, Globus Solutions para proyectos medios, Grid Engine para pequeñas implantaciones.

Características[editar]

  • Capacidad de balanceo de sistemas: no habría necesidad de calcular la capacidad de los sistemas en función de los picos de trabajo, ya que la capacidad se puede reasignar desde la granja de recursos a donde se necesite;
  • Alta disponibilidad. con la nueva funcionalidad, si un servidor falla, se reasignan los servicios en los servidores restantes;
  • Reducción 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 patrón;

Se relaciona el concepto de grid con la nueva generación del protocolo IP. El nuevo protocolo de Internet IPv6 permitirá trabajar con una Internet más rápida y accesible. Una de las ideas clave en la superación de las limitaciones actuales de Internet IPv4 es la aparición de nuevos niveles de servicio que harán uso de la nueva capacidad de la red para intercomunicar los ordenadores.

Este avance en la comunicación permitirá el avance de las ideas de grid computing al utilizar como soporte la altísima conectividad de Internet. Es por ello que uno de los campos de mayor innovación en el uso del grid computing, fuera de los conceptos de supercomputación, es el desarrollo de un estándar para definir los Grid Services frente a los actuales Web Services.

Desventajas[editar]

No obstante, la computación grid presenta algunos inconvenientes que deben solucionarse. Estos problemas son:

  • Recursos heterogéneos: la computación grid debe ser capaz de poder manejar cualquier tipo de recurso que maneje el sistema, si no resultará totalmente inútil.
  • Descubrimiento, selección, reserva, asignación, gestión y monitorización de recursos son procesos que deben controlarse externamente y que influyen en el funcionamiento del grid.
  • Necesidad de desarrollo de aplicaciones para manejar el grid, así como desarrollo de modelos eficientes de uso.
  • Comunicación lenta y no uniforme.
  • Organizativos: dominios de administración, modelo de explotación y costes, política de seguridad...
  • Económicos: precio de los recursos, oferta/demanda

Ventajas y requisitos[editar]

En definitiva, grid supone un avance respecto a la World Wide Web:

El World Wide Web proporciona un acceso transparente a información que está almacenada en millones de ordenadores repartidos por todo el mundo. Frente a ello, el grid es una infraestructura nueva que proporciona acceso transparente a potencia de cálculo y capacidad de almacenamiento distribuida por una organización o por todo el mundo.

Los requisitos que debe cumplir cualquier grid son:

Los datos deben compartirse entre miles de usuarios con intereses distintos. Se deben enlazar los centros principales de supercomputación, no sólo los PC. Se debe asegurar que los datos sean accesibles en cualquier lugar y en cualquier momento. Debe armonizar las distintas políticas de gestión de muchos centros diferentes. Debe proporcionar seguridad.

Y los beneficios que se obtienen:

  • Proporciona un mecanismo de colaboración transparente entre grupos dispersos, tanto científicos como comerciales.
  • Posibilita el funcionamiento de aplicaciones a gran escala.
  • Facilita el acceso a recursos distribuidos desde nuestros PC.
  • Todos estos objetivos y beneficios se engloban en la idea de "e-Ciencia".

Estos beneficios tendrán repercusión en muchos campos:

La tecnología derivada del grid abre un enorme abanico de posibilidades para el desarrollo de aplicaciones en muchos sectores. Por ejemplo: desarrollo científico y tecnológico, educación, sanidad, y administración pública.

Últimos apuntes[editar]

En definitiva, nos encontramos ante un paradigma de computación distribuida altamente versátil, escalable y que permite combinar la potencia de muchos equipos para lograr una capacidad global prácticamente ilimitada. Sus principales inconvenientes provienen de la dificultad para sincronizar los procesos de todos estos equipos, monitorizando recursos, asignando cargas de trabajo y estableciendo políticas de Seguridad informática fiables.

Se trata de un paradigma computacional en fase de desarrollo actualmente que ya ofrece servicios a muchos campos de investigación y que en el futuro tendrá una mayor influencia si cabe en dichos campos, al gozar de una estructura evolucionada respecto a la actual, con mayor robustez, mucho más rápida en cuanto a la comunicación entre sus equipos y, obviamente, con una mayor capacidad computacional de cada máquina debido a la evolución en términos de procesamiento y de rendimiento del hardware.

Véase también[editar]