Recientemente se está empezando a hablar de la computación en la nube, calco de la palabra inglesa «cloud computing». Este término agrupa diferentes conceptos tecnológicos, todos ellos con el elemento común de consumir recursos informáticos como un servicio, en vez de instalar y mantener los recursos nosotros mismos.
La informática ha ido evolucionando desde el ordenador independiente a la computación en la nube. Veremos a continuación las diferentes etapas que han llevado a esta nueva manera de concebir la informática. Además, para comprenderlo un poco mejor haremos un símil con los transportes de mercancías que realiza una empresa.
Hace años los ordenadores estaban en las propias empresas. La primera tendencia fue la de crear centros de procesamiento de datos (llamados CPD) externos a las empresas. Las compañías instalaron sus ordenadores en estos lugares que tenían unas condiciones ambientales y de seguridad más adecuadas para ellos. En nuestra comparación con los transportes, la empresa, propietaria de sus camiones, contrataría el mantenimiento de los mismos a terceros, pero conservaría el uso y la gestión de los vehículos.
Hoy en día casi todas las empresas tienen sus recursos informáticos en estos lugares. Al principio, disponían de sus propios ordenadores; después, los alquilaban al propio CPD y, más adelante, con lo que se denominó la virtualización, proceso que consiste en instalar un gran ordenador y «trocearlo» mediante programación.
A cada usuario se le entregan los recursos que necesita, ya sea número de procesadores, tamaño de memoria o capacidad de almacenamiento en disco. Continuando con nuestra metáfora, el usuario compraría la capacidad de transporte en cada camión, así que cada día podría usar los camiones que necesitara.
La tecnología permitió incluso modificar la capacidad asignada a cada servidor lo que pudo aumentar o disminuir la capacidad de los servidores «en caliente», es decir, sin necesidad de apagar los equipos y de dejar de dar servicio a los usuarios. Si seguimos con nuestro ejemplo, se llegó a poder adquirir capacidad de almacenamiento en los camiones y, además, que esta capacidad pudiera cambiar a lo largo del trayecto.
Finalmente llegamos a la computación en la nube. El objetivo de esta es que los programadores se olviden de los equipos y que, en vez de eso, reciban el servicio que necesiten. Es decir, comprar servicios en vez de comprar equipos.
En el estado actual, la computación en la nube consiste en olvidarnos del camión y comprar el servicio de transporte. Así, la computación en la nube, ofrece a los informáticos la posibilidad de olvidarse de las infraestructuras y centrarse en sus propios programas o páginas web.
En la computación en la nube se distinguen fundamentalmente cuatro áreas: la infraestructura (IaaS), la plataforma (PaaS), los programas (SaaS) y la red (NaaS).
La infraestructura como servicio corresponde al software y hardware que soporta las aplicaciones informáticas, ya sean servidores, memoria, almacenamiento en disco, redes y sistemas operativos. De este modo no tendríamos que pensar si el disco duro tiene suficiente tamaño para guardar un fichero, simplemente lo guardaríamos y el proveedor se encargaría de almacenarlo.
La plataforma como servicio abarca todos los tipos de herramientas que usan los programadores para trabajar, así como los sistemas de almacenamiento de versiones de programas o de despliegue de aplicaciones.
Los programas, también denominados APIs, corresponden a funciones o partes de programas que realizan funciones específicas y a las que los programadores pueden llamar desde sus propias aplicaciones. Por ejemplo, si un programa necesita la información de la población de un país durante su ejecución, podría buscarla en un servicio externo que le devolviera esa información.
La red, por su parte, engloba los recursos de comunicación como el ancho de banda. Así, yo no contrato un ancho de banda fijo, sino que contrato la capacidad de comunicación que necesito en cada momento.
Lo novedoso de la computación en la nube no está tanto en comprar servicios en vez de elementos físicos, sino en su aplicación al ámbito informático. Antes, los costes en materiales, formación e instalación, eran fijos. De esta manera, los costes son variables porque se basan en el uso que se haga de ellos.