Cuando se habla de computación distribuida es difícil no escuchar términos como clusters o grids entre otros, en lo personal estos términos son muy nuevos para mi, y de los cuales he escuchado mención a lo lejos del concepto de cluster, cuando nos referimos a clusters hacemos referencia a un conjunto de computadoras (que podrían ser como las desktops que tenemos en casa) que comparten recursos de hardware y que todo el conjunto de computadoras es visto como uno solo, y al igual que en el concepto general de computación distribuida estos deben estar conectados por algún medio de comunicación(una red por mencionar algo), otra definición que podemos aplicar a los cluster es la que nos proporciona la toda sapiente wikipedia:
“El término cluster se aplica a los conjuntos o conglomerados de computadoras construidos mediante la utilización de componentes de hardware comunes y que se comportan como si fuesen una única computadora.”
Con ellos podemos llegar a obtener los recursos y la capacidad computacional para realizar tareas y la ejecución de algoritmos complejos, disponiendo de recursos de hardware que son de bajo costo.
Todo aquí se escucha muy bonito, pero de lo anterior queda de forma muy vaga lo que podemos hacer con los cluster, por eso le volvemos a preguntar a wikipedia quien nos da una idea generalizada, pero un poco mas extensa:
“La tecnología de clusters ha evolucionado en apoyo de actividades que van desde aplicaciones de supercómputo y software de misiones críticas, servidores web y comercio electrónico, hasta bases de datos de alto rendimiento, entre otros usos.”
A los clusters se les ha dado una clasificación según el uso que desempeñaran, y los servicios que estos presten, y esta clasificación se divide en 3 grupos, de los cuales tenemos:
Alta Disponibilidad(HA): este tipo de clusters que se enfocan el la alta disponibilidad de servicios para los cual fueron implementados con lo que garantiza una continuidad de ellos.
Alta Eficiencia(HT): estos son cluster diseñados para la realización de tareas en el menor tiempo posible, tarea que en los clusters de alta disponibilidad no es relevante.
Alto Rendimiento(HPC): en estos se realizan tareas que requieren una gran cantidad de recursos y capacidad de computo.
El tema de la computacion distribuida es de muy amplio estudio, este es solo una pequeña introduccion enfocada en clusters, tratando de explicarla de la mejor manera y así seguir adentrándonos en este tema tan interesante.