04 junio 2014

Un vistazo a Google Cloud Platform

Uno de los temas de los que he venido conversando con los chicos últimamente es la plataforma en la nube que se conoce como Google Cloud Platform. Esta plataforma te permite desplegar aplicaciones web, almacenar data y analizarla, construir el backend de aplicaciones mobiles y varias cosas. Lo bueno es que se cuenta con una plataforma escalable y robusta.

Esta plataforma se compone de varios servicios como se muestra en la siguiente gráfica:


Como se puede apreciar contamos con tres grandes categorías Compute, Storage y App Services:

  • App Engine: la PaaS (Plataforma como servicio) de Google, nos permite desplegar aplicaciones web desarrolladas con Python, Java, PHP y Go. También, podemos interactuar con diferentes APIs de los servicios de Google. Se cuenta con un paquete básico gratuito que le viene bien a las startups.
  • Compute Engine: la IaaS (Infraestructura como servicio) de Google, nos permite la creación de máquinas virtuales a partir de imagenes predefinidas o crear con nuestras propias configuraciones. Actualmente, se cuenta con la posibilidad de emplear sistemas operativos como Debian, CentOS, CoreOS, entre otros. Recomendado para quienes requieran un alto nivel de cómputo.
  • Cloud Storage: el servicio de almacenamiento de objetos de Google, cuenta con APIs que permiten el consumo de datos desde otros servicios como App Engine, Compute Engine, etc.
  • Cloud SQL: si requerimos de una base de datos relacional en la nube, este es el servicio que debemos emplear, basado en MySQL; el mantenimiento? se lo dejamos a Google quien nos garantiza una base de datos con una buena performance y de alta disponibilidad.
  • Cloud Datastore: la base de datos NoSQL, libre de esquemas y data relacional, puede crecer de acuerdo a nuestras necesidades, con soporte a transacciones y a consultas tipo SQL.
  • BigQuery: si hablamos de consultas a grandes conjuntos de datos y a un tiempo reducido, sin duda, esto es BigQuery. Escalable y de fácil uso, nos permite explotación de conjuntos de datos que en sistemas normales podrían llevarnos horas.
  • Cloud Endpoints: nos permite construir servicios RESTful para el consumo de aplicaciones mobiles, cuenta con protección contra ataques de denegación de servicios (Denial-of-Service), soporte OAuth 2.0 y más.
  • ...y otros servicios como Prediction API, Translate API y el reciente Cloud DNS.
Si quieres saber quiénes emplean Google Cloud Platform puedes visitar el siguiente enlace.

Hace poco la gente de Google hizo un esfuerzo y preparó este site en Github lleno de ejemplos sobre cómo emplear las diversas APIs y tecnologías.

Finalmente, les comparto una presentación que empleé hace poco para dar un vistazo a lo que la plataforma ofrece:


Otros enlaces útiles: