Cloud Computing (I): Teorías y fundamentos de la computación en nube

Cloud ComputingNo existe una definición única del concepto Cloud Computing. De hecho, cada actor importante en el mundo de la tecnología de la información ha hecho su propia definición a la medida. No obstante, es posible sintetizar esta definición. Según Ian Foster et al. [1], Cloud Computing es “un paradigma de la computación distribuida a gran escala y manejada por economías escalables, en un conjunto abstracto, virtualizado, dinámicamente escalado, con administración de potencia computacional, almacenamiento, plataforma y servicios, entregados bajo demanda a los clientes sobre Internet.”

La computación en nube es un concepto general que incorpora el software como servicio, tal como la Web 2.0 entre otras tendencias tecnológicas, donde el tema en común es la confianza en Internet para satisfacer las necesidades de cómputo de los usuarios. Es más un proceso que una tecnología. El concepto detrás de qué lo que ahora es Cloud Computing incluye una variedad de cosas, tales como Cluster Computing, Utility Computing, Grid Computing y On-Demand Computing, entre otras.

 

La tendencia es bastante clara. En el futuro, la computación se hará en la red, y no en el computador local. Los datos que actualmente están localizados en nuestros computadores del hogar u oficina, solo son accesibles desde ellos. Al estar nuestros datos ubicados en instalaciones externas se abre la posibilidad de acceder a estos en cualquier lugar o equipo, siendo solo necesaria la existencia de una conexión a Internet. Esta no es una idea nueva, como expuso en 1961 John McCarthy [2] al afirmar en una conferencia pública “… la computación podrá ser organizada algún día como un servicio público, así como el sistema telefónico es un servicio público…”.

En base a lo anterior, se puede sintetizar que Cloud Computing es un paradigma en el cuál la información está permanentemente almacenada en servidores en Internet y alternativamente puede ser cacheada temporalmente en los equipos informáticos de los usuarios. Esto permite a particulares o empresas, acceder a tecnologías y servicios desde Internet sin tener conocimientos expertos o necesidad de control y configuración de dichas tecnologías o servicios.

Por su naturaleza, Cloud Computing es muchas veces comparada con Grid Computing. Si bien, la primera se basa en la segunda, no es difícil ver que existen marcadas diferencias. La más notoria es la orientación Web 2.0 que envuelve a Cloud Computing, lo cual facilita enormemente el acceso de la misma a sus usuarios. Este último punto es la clave esencial del alcance y éxito de este esquema computacional. Según Greg Boss [3] “Cloud Computing permite que las aplicaciones puedan extenderse gracias a su accesibilidad a través de Internet. Esto es posible gracias al uso de grandes centros de datos y de servidores de gran capacidad que almacenan aplicaciones y servicios web. Cualquier persona con una conexión a internet y un navegador web estándar puede tener acceso a la nube”. La nube es un conjunto de recursos virtualizados.

En este sentido, la nube puede:

  • Contener una variedad de diferentes cargas de trabajo, incluyendo tareas por lotes y aplicaciones de uso interactivo.
  • Permite que las cargas de trabajo sean rápidamente desplegadas y escaladas gracias a un veloz aprovisionamiento de maquinas físicas o virtuales.
  • Soporta modelos de redundancia, auto-recuperación y alta escalabilidad para permitir la recuperación de la carga de trabajo de inevitables fallas de hardware y/o software.
  • Supervisa el uso de recursos en tiempo real para permitir el reequilibrio de asignaciones de trabajo cuando sea necesario.

 

Cloud Computing puede soportar entornos no-grid, tales como estructuras web estándares en árbol, o aplicaciones Web 2.0. La nube es mucho más que una colección de recursos de computación. Esto es debido a que la nube provee mecanismos para administrar esos recursos. La administración incluye cambios en aprovisionamiento, cambio de peticiones, reestructuración, balance de la carga de trabajo y monitoreo de actividades.

En el principio de los 90, el concepto de Grid Computing emergió: los usuarios podrían conectar con una red en forma simple y directa, y usar los servicios según la necesidad. Así, la gente comenzó a hablar de la computación para uso general (Utility Computing). Un problema era donde los datos estaban almacenados. Los Grid-Nodes podrían estar situados en cualquier parte del mundo, lo que podía significar potenciales retardos en los procesos cuando los datos almacenados en otras localizaciones fueron transmitidos. De cualquier forma, Grid Computing o Cloud Computing significa que los usuarios y sus negocios deben migrar sus aplicaciones y datos a terceras partes o en plataforma diferentes [4].

Para las empresas con enromes inversiones en software existente y procedimientos operacionales, ha sido una verdadera barrera la adopción de estas tecnologías compartidas. Otras preocupaciones significativas incluyen seguridad y el secreto de los datos.

 

 

Bibliografia:

[1] Foster, I. Yong Zhao Raicu, I. Lu, S. 2008. Cloud Computing and Grid Computing 360-Degree Compared. s.l. : IEEE, 2008.

[2] McCarthy, John. 1995. John McCarthy’s Home Page. [En línea] 17 de Octubre de 1995. [Citado el: 23 de Marzo de 2009.] http://www-formal.stanford.edu/jmc/.

[3] Boss, Greg., Malladi, Padma., Quan, Dennis., Legregni, Linda. 2007. Cloud Computing. s.l. : IBM, 2007.

[4] Kay, Russell. 2008. Cloud Computing: How users can hook into the power of ‘out there’. s.l. : Computer World, 2008.

Tambien le puede interesar...