La computación en red existe desde hace algunos años y sus ventajas son muchas. La computación en cuadrícula se puede definir de muchas maneras, pero para estas discusiones llamémoslo simplemente una forma de ejecutar trabajos de computación (por ejemplo, scripts de Perl, consultas de bases de datos, etc.) a través de un conjunto distribuido de recursos en lugar de un recurso central. En el pasado, la mayor parte de la informática se realizaba en silos o grandes cajas tipo SMP. Incluso hoy en día, verá que las empresas realizan cálculos en grandes cajas SMP (por ejemplo, E10K, HP Superdomes). Pero este modelo puede ser bastante caro y no se escala bien.
Llega la computación en cuadrícula y ahora tenemos la capacidad de distribuir trabajos a muchos componentes de servidor más pequeños utilizando un software de distribución de carga que distribuye la carga de manera uniforme en función de los recursos y las políticas. Ahora, en lugar de tener un servidor con una gran carga de trabajo, la carga se distribuye uniformemente en muchas computadoras más pequeñas que se pueden distribuir en varias ubicaciones.
Algunas ventajas son bastante obvias.
1) No es necesario comprar grandes servidores SMP para aplicaciones que se pueden dividir y distribuir en servidores más pequeños (que cuestan mucho menos que los servidores SMP). Los resultados se pueden concatenar y analizar una vez finalizados los trabajos.
2) Uso mucho más eficiente de los recursos inactivos. Los trabajos se pueden distribuir en servidores inactivos o incluso en escritorios inactivos. Muchos de estos recursos permanecen inactivos, especialmente fuera del horario comercial.
3) Los entornos de cuadrícula son mucho más modulares y no tienen puntos únicos de falla. Si uno de los servidores / escritorios dentro de la red falla, hay muchos otros recursos capaces de recoger la carga. Los trabajos pueden reiniciarse automáticamente si ocurre una falla.
4) Las políticas pueden ser administradas por el software de la red. Algunos de los software de habilitación de redes más populares incluyen Platform LSF, Sun Grid Engine, Data Synapse, PBS, Condor, UnivaUD, entre otros. Cada uno hace un buen trabajo al monitorear los recursos y administrar los envíos de trabajos según los motores de políticas internos.
5) Este modelo escala muy bien. Necesita más recursos informáticos, simplemente conéctelos instalando el cliente grid en escritorios o servidores adicionales. Se pueden quitar con la misma facilidad sobre la marcha.
6) La actualización se puede realizar sobre la marcha sin programar el tiempo de inactividad. Dado que hay tantos recursos, algunos pueden desconectarse dejando suficiente para que el trabajo continúe. De esta manera, las actualizaciones se pueden conectar en cascada para que no afecten a los proyectos en curso.
7) Los trabajos se pueden ejecutar en un rendimiento de velocidad paralela. El uso de elementos como MPI permitirá el paso de mensajes entre los recursos informáticos.
Algunas desventajas:
1) Para las aplicaciones que consumen
mucha memoria y que no pueden aprovechar MPI, es posible que se vea obligado a ejecutar en un SMP grande
2) Es posible que deba tener una interconexión rápida entre los recursos informáticos (gigabit ethernet como mínimo). Infiband para aplicaciones intensivas de MPI
3) Es posible que algunas aplicaciones deban modificarse para aprovechar al máximo el nuevo modelo.
4) La concesión de licencias en muchos servidores puede hacer que sea prohibitivo para algunas aplicaciones. Los proveedores están comenzando a ser más flexibles con un entorno como este.
Las áreas que ya se están aprovechando de la computación en red incluyen bioinformática, química informática, petróleo y perforación, y aplicaciones financieras.
Con las ventajas enumeradas anteriormente, comenzará a ver una adopción mucho mayor de Grids que debería beneficiar a todos los involucrados. Creo que la barrera más grande en este momento es la educación.
Vassilios -
www.outervillage.com