Pequeña introducción a la nube de Google

Google Cloud es una de las principales ‘nubes’ de internet. Está compitiendo por ser la primera junto a la nube de Amazon (la primera indiscutible) y la de Microsoft. Aunque todos hemos oído el concepto de nube, la verdadera revolución de la nube no es el dropbox ni nuestras imágenes en internet.

Vamos con una sencilla explicación: programar en ‘la nube’ es el desarrollo y uso de programas y páginas web alojados en internet.

Es decir, si queremos crear una app o una pagina web, la nube nos permite programar el código de nuestro programa, usando varias tecnologías, y alojarlo en la infraestructura de otra empresa. La principal ventaja de esto, es que no tenemos que preocuparnos por el mantenimiento de los servidores ni las bases de datos, ni tampoco el crecimiento del número de usuarios. Por si fuera poco, también ofrecen una gran cantidad de servicios, como login y análisis de datos para completar nuestras aplicaciones. Y todo esto, pagando únicamente por su uso, es decir, si mi página web no tiene ninguna visita, entonces no pago nada (bueno, casi nada)

Dicho de otra manera: donde antes se necesitaba un administrador de sistemas, un administrador de Base de datos, y un programador para crear una aplicación, con toda esta tecnología solo es necesario un programador.

Los principales servicios que ofrece la nube de google son:

  • Firebase: Es el módulo de Google para simplificar la gestión de apps, especialmente las de dispositivos móviles. Ofrece análisis de uso, Bases de datos, login, chat, alojamiento y más utilidades. Es muy buena cuando tenemos una app sencilla, como la mayoría de las app.

  • Google app engine: Es el módulo de PaaS (Plataforma as a service) para programar el código y alojarlo en internet. Una vez que hemos subido nuestra web a App engine, no pagaremos nada hasta que el número de visitantes supere determinado número. Se divide en dos módulos:

    • Google App standard environment: El módulo más económico de Google. Solo se puede programar en PHP, Go, Java, y Python2. A cambio las posibilidades son más reducidas.
    • Google App Flexible environment: Usa contenedores docker para poder programar en cualquier lenguaje de programación. Los costes, que siempre son por número de accesos, son un poco más altos en que el standard environment.
  • Google container engine: Nos permite montar contendores docker y usar aplicaciones ‘dockerizadas’, es decir, usar aplicaciones ya montadas para configurarlas y trabajar sobre ellas.

  • Google compute engine: Para montar máquinas virtuales. Es la opción más cara, pero podremos tener una maquina completamente operativa y con gran rendimiento alojada en la nube de google. El coste es proporcional a las horas que se esté ejecutando.

  • Google storage: Para almacenar ficheros. Con ella también podríamos montar una página web completa, usando tecnologías como jekyl, y hugo (la tecnología usada por este blog)).

  • Google cloud sql: La base de datos relacional de Google. Los costes suelen ser altos y a veces tiene problemas si crece demasiado.

  • Google datastore: La opción NoSQL de Google. Es una base de datos ultra-sencilla, barata, y sin problemas de crecimiento.

  • Google cloud spanner: La nueva Base de Datos SQL de Google. Una revolución en cuanto a las Bases de Datos SQL: permite escalado automático por si nuestra aplicación crece de manera inesperada.

Esto es solo una pequeña introducción, faltarían otros módulos relacionados con las APIs de Google para el análisis de datos (Google Big Query) o Google functions (para desarrollar ‘programas’ y usarlo desde cualquier aplicación)

Share Comments
comments powered by Disqus