¿Cómo puede ser beneficiosa la computación grid? ¿Cuáles son algunos ejemplos?

Así que aquí hay una vista muy simplista de la computación en cuadrícula, clúster y en la nube:

Tienes un trabajo con múltiples tareas. Digamos que algunas de las tareas pueden ejecutarse de forma independiente y algunas deben ejecutarse después de completar las tareas anteriores. Entonces puedes hacer lo siguiente:

  1. use múltiples hilos en la misma máquina para las tareas independientes. Dependiendo de la cantidad de núcleos y otros recursos que tenga, lo más probable es que sea una ejecución concurrente.
  2. O bien, puede dividir las tareas en varias computadoras si cada tarea es pesada y necesita más recursos. Imagine que tiene 5 tareas que pueden ejecutarse de forma independiente. Puede dividir estas 5 tareas entre 5 piezas y combinar el resultado cuando haya terminado. Esto es computación distribuida.

Supongamos que tiene una arquitectura maestra esclava donde envía un trabajo a un nodo maestro y el nodo maestro divide las tareas entre varios nodos de trabajo y le da el resultado agregado cuando haya terminado. Esto es computación en clúster. Cluster tiene un control centralizado.

Por otro lado, si hay varias máquinas sin nodo maestro donde cada una tiene su propia política de programación y asignación de recursos, forman una cuadrícula. En general, se forma una cuadrícula con varias máquinas, cada una de las cuales tiene una ejecución autónoma y una política de asignación de recursos.

Tiene una cuadrícula y la expone a través de Internet como un servicio. Tienes una nube

Una cuadrícula puede tener múltiples grupos. Se puede formar una nube con múltiples cuadrículas distribuidas geográficamente, etc. Pero en última instancia, es un montón de computadoras que hacen algo.

Las cuadrículas y las nubes son muy útiles por muchas razones. Para darle un ejemplo muy simple: suponga que tiene un archivo de registro de 20 gb que necesita procesar. Tienes 2 opciones:

Compre una máquina muy costosa con múltiples núcleos y gran memoria O divida el archivo en partes pequeñas y distribúyalo en varias máquinas. Finalmente agregue el resultado. Esto es lo que hace hadoop