La computación en la nube, es un tipo de computación o modelo basado en la compartición de recursos y datos a través de internet.
Se podría dividir en varias capas:
El cliente: es el terminal (conjunto de hardware y software) que accede y confia en el sistema cloud computing suministrado por un proveedor.
El SaaS (Software as a Service, Software como un servicio): elimina la necesidad de tener que instalar y correr aplicaciones en un ordenador. Usa un software como un servicio a través de internet. Un ejemplo de este servicio podría ser Google Docs (aunque en general, Google Apps) ya que podemos usar un editor de texto sin tener que instalar nada en nuestros ordenadores.
El PaaS (Platform as a Service, Plataforma como un servicio): es un ambiente de desarrollo, que consiste en un software básico con una base de datos y herramientas de desarrollo. Un ejemplo sería Google AppEngine, que está basado en Python y Java.
El IaaS (Infrasctructure as a Service, Infraestructura como un servicio): en vez de tener que comprar servidores, software, espacio (discos duros), y equipamiento, los clientes alquilan estos servicios. Además, el empresario puede elegir quien quiere que sea su proveedor (lo cual quiere decir que existirá competencia en el mercado). Como ejemplo de almacenamiento, tenemos los servicios de servidores de almacenamiento online, como Megaupload o Rapidshare, y como ayuda o mantenimiento, dispondriamos de una ayuda online las 24 horas (aunque esto depende del proveedor) sin tener que contratar a un servicio especializado por nuestra cuenta. También eliminaría le necesidad de mantener el hardware y software de la empresa (que siempre tiene que estar actualizado)
Esquema de las capas
La computación en la nube reduce los costes de las empresas y el presupuesto que necesita cada una para ser desarrollada (lo que aumentaría el número de empresas). Por un lado, el empresario necesitaría menos expertos cualificados en temas como aplicaciones (por falta de tales), seguridad, mantenimiento o administración, ya que en todo momento dispondría de un servicio técnico totalmente gratis (contratando los servicios).
Otro efecto considerable, sería el descenso de programadores (orientados a desarrollar aplicaciones) que necesitarían las empresas. Esto, por el lado de las empresas es bueno ya que reduce los costes, pero por el lado de los programadores es sin duda malo, debido a que reduciría la demanda de sus servicios, que a su vez generaría un abaratamiento de estos (lo cual vuelve a ser bueno para las empresas que los quieran contratar).
Como dije anteriormente en la descripción de las capas, no serían necesarias la creación de aplicaciones personalizadas, ya que estas aplicaciones son online, a las cuales accederían las empresas mediante una subscripción (mensual, anual..). Es interesante pararnos en este último punto. A la larga, para las empresas grandes, importantes y que llevan muchos años en el mercado, puede ser una desventaja, ya que seguramente a lo largo de los años, pagarían más por esa subscripción, que a un grupo de programadores para realizar la aplicación que quieran. Sin embargo, para las empresas que están empezando, es algo bastante positivo, porque la inversión es mínima comparado con el hecho de tener que comprar la aplicación o contratar a un grupo de programadores para crearla.
Aumentaría desde luego, la rapidez con la que las empresas adquieren y usan las aplicaciones, ya que al ser una subscripción, las aplicaciones se mantendrían online y quedarían a expensas de la personalización (a partir de un estandar) que cada empresa quiera realizar sobre esta. Al ser aplicaciones online, también aumenta la facilidad con la que podriamos generar reportes.
Otra pesadilla de todo empresario que dispone de una aplicación es la actualización de la misma, ya que muchas de ellas, requerirían tener que usar una base de datos desde cero, es decir, que se perderían los datos ya guardados. Con Cloud Computing este problema quedaría solventado ya que asegura mantener los datos ya guardados.
Sin embargo, a pesar de todas estas ventajas, la computación en la nube también dispone de varias desventajas, sobre todo al sector de los expertos.
Por un lado, está el problema de la privacidad y almacenamiento de datos. Cuando un empresario o propietario guarda datos en su base de datos, como los de los clientes propios, con datos muy personales como nombres, apellidos, teléfonos y direcciones, estos datos quedan en propiedad de este dueño. Sin embargo, con Cloud Computing, además de conocer estos datos el dueño, los conocería también la empresa encargada de proporcionarles servicios (como almacenamiento) a este empresario, es decir, que estos propietarios que alquilan los servicios a una empresa de Cloud Computing dejan su información a sus proveedores.
Otro tema bastante serio, es el comentado anteriormente. La demanda de expertos en ámbitos de seguridad, mantenimiento y aplicaciones por parte de las empresas decaería sustancialmente.
Como SaaS, tenemos de ejemplo a SalesForce.com, la cual nos deja un video muy completo y sencillo de entender, en el que comprenderemos la función de esta empresa: