¿Qué es la nube y cómo funciona AWS?

¿Qué significa trabajar en la nube?

La computación en la nube consiste en utilizar recursos tecnológicos a través de Internet en lugar de depender exclusivamente de la infraestructura física que tenemos directamente frente a nosotros.

En un entorno tradicional, una aplicación puede necesitar servidores, almacenamiento y otros recursos que deben instalarse y administrarse físicamente. En la nube, esos recursos pueden proporcionarse como servicios y utilizarse según las necesidades de la aplicación.

Podemos representar la idea de forma sencilla:

Aplicación
   ->
Internet
   ->
Servicios en la nube
   ->
Recursos de infraestructura

1. ¿Qué es AWS?

Amazon Web Services (AWS) es una plataforma de servicios de computación en la nube. Proporciona distintos servicios que permiten construir, desplegar y ejecutar aplicaciones utilizando infraestructura disponible a través de Internet.

En lugar de implementar cada componente físicamente por cuenta propia, una aplicación puede utilizar servicios de AWS para cubrir necesidades como cómputo, almacenamiento o bases de datos.

Aplicación
   ->
AWS
   ->
Servicios de infraestructura

2. Recursos bajo demanda

Una de las ideas centrales de la nube es que los recursos pueden solicitarse cuando una aplicación los necesita.

Por ejemplo, una aplicación puede requerir capacidad de cómputo para ejecutar su backend y almacenamiento para conservar archivos. En un entorno de nube, estos recursos pueden proporcionarse mediante servicios administrados.

La diferencia conceptual puede verse así:

Infraestructura tradicional
Servidor físico -> aplicación

Nube
Servicio de cómputo -> aplicación

La aplicación sigue necesitando recursos para ejecutarse. Lo que cambia es la forma en que esos recursos se proporcionan y administran.

3. Algunos tipos de servicios

AWS dispone de servicios orientados a distintas necesidades de una aplicación.

Podemos agruparlos conceptualmente en áreas como:

  • Cómputo: recursos utilizados para ejecutar aplicaciones.
  • Almacenamiento: servicios destinados a guardar archivos y otros datos.
  • Bases de datos: servicios para almacenar y consultar información estructurada u otros tipos de datos.
  • Redes: componentes necesarios para conectar y controlar la comunicación entre recursos.

Cada servicio resuelve una necesidad concreta dentro de una arquitectura.

4. ¿Qué pasa con un servidor?

En un entorno tradicional, una empresa puede tener que adquirir, instalar y mantener físicamente sus propios servidores.

En la nube, una parte de esa infraestructura puede proporcionarse como un servicio. El desarrollador puede trabajar con recursos de cómputo sin que el servidor físico tenga que estar instalado dentro de su propia infraestructura.

Esto no significa que el hardware desaparezca. Los recursos físicos siguen existiendo. La diferencia está en quién administra esa infraestructura y en cómo se proporciona al usuario.

5. Una aplicación utilizando AWS

Podemos imaginar una aplicación web compuesta por varias partes:

Usuario
   ->
Aplicación web
   ->
Servicio de cómputo
   ->
Base de datos
   ->
Almacenamiento

Cada componente puede corresponder a un servicio diferente dentro de una arquitectura en AWS.

La aplicación no tiene que tratar todos esos componentes como si fueran un único servidor. Puede utilizar servicios especializados para cada necesidad.

6. La nube no es solamente almacenamiento

Una confusión frecuente es pensar que trabajar en la nube significa simplemente guardar archivos en Internet.

El almacenamiento es solo una parte del concepto. La computación en la nube también incluye recursos para ejecutar aplicaciones, gestionar redes, trabajar con bases de datos y proporcionar otros servicios tecnológicos.

Por eso una aplicación completa puede construirse utilizando varios servicios en conjunto.

7. ¿Qué cambia para el desarrollador?

La nube cambia principalmente la forma en que se obtiene y administra la infraestructura.

En lugar de que el desarrollador tenga que preparar físicamente cada componente, puede trabajar con servicios que ya proporcionan una parte de esa infraestructura.

Eso permite concentrarse en la aplicación mientras los servicios utilizados se encargan de las capacidades que proporcionan.

8. AWS dentro de una arquitectura

AWS no sustituye al código de una aplicación. La aplicación sigue teniendo frontend, backend, base de datos y demás componentes definidos por su arquitectura.

AWS proporciona los servicios sobre los que esos componentes pueden ejecutarse o almacenar información.

Podemos visualizar la relación así:

Código de la aplicación
        ->
Arquitectura
        ->
Servicios AWS
        ->
Infraestructura

Consideraciones

La computación en la nube consiste en utilizar recursos tecnológicos mediante servicios disponibles a través de una red. AWS es una plataforma que ofrece distintos servicios para construir y ejecutar aplicaciones sobre esa infraestructura.

La idea fundamental no es que la infraestructura física deje de existir, sino que el desarrollador puede consumir capacidades de cómputo, almacenamiento, bases de datos y otros recursos mediante servicios de nube.

Comprender esta diferencia ayuda a entender por qué una aplicación moderna puede estar formada por varios servicios que trabajan juntos en lugar de depender de un único servidor físico.

© Arturo Juárez Monroy