Servicios de computación con Google y Amazon
Una de las noticias que más revuelo han causado en las últimas semanas ha sido la publicación del servicio Google App Engine, con el que Google ofrece a los desarrolladores la opción de crear y ejecutar aplicaciones sobre su infraestructura. La idea no es nueva y está relacionada en mayor o menor medida con la propuesta de otro de los gigantes de internet, Amazon y sus Amazon Web Services.
Ambas compañías ofrecen a los desarrolladores de aplicaciones la posibilidad de ejecutar aplicaciones sobre entornos teóricamente más estables y seguros, y que permiten una gran escalabilidad. Esto es un punto a favor importante de ambas propuestas, ya que ofrece a los desarrolladores la opción de olvidarse en parte de los problemas de las plataformas y tener garantizada la escalabilidad de las soluciones.
Pero aquí se acaban las similitudes, por lo demás ambas soluciones son muy distintas. Por un lado Amazon ofrece un conjunto de soluciones tecnológicas que abarca un abanico más amplio que el de Google, aunque todas ellas de pago. Estas aplicaciones van desde el almacenamiento ofrecido por S3, la gestión de colas de mensajes de SQS, el almacenamiento de datos con SimpleDB y los servicios de computación propiamente dichos con Elastic Computing Cloud (EC2), con los que podemos crear máquinas virtuales. Por otra parte Google ofrece un espacio en el que publicar aplicaciones que se ejecutaran dentro de su plataforma y que deberán utilizar una API específica, así como sus sistemas se autenticación, su modelo de almacenamiento de datos basado en BigTable, y Python como lenguaje de programación.
Ambas propuestas son interesantes aunque creo que están enfocadas fundamentalmente hacia ámbitos distintos. Se ha hablado bastante de que Google puede convertirse en uno de los principales proveedores de hosting con esta propuesta y seguramente será cierto, aunque deberá ampliar la base de lenguajes soportadas a otros como .NET, Java, PHP o Ruby. De todas formas hay que tener en cuenta que obligará a los desarrolladores a utilizar su framework (API, Autenticación, BigTable…), algo que en principio puede ser bueno, pero que puede restar flexibilidad a muchos proyectos. A buen seguro no tardaremos en ver adaptaciones de aplicaciones como WordPress o similares que funcionen sobre este entorno, lo cual producirá que muchos blogs y aplicaciones pequeñas puedan migrar a él, más teniendo en cuenta que el servicio se ofrece de forma gratuita con un espacio de 500GB y hasta 5 millones de páginas vistas al mes.
En lo que respecta a Amazon considero que sus servicios están más enfocados a los desarrolladores de aplicaciones más complejas, donde pueda sacarse provecho a las características de S3, SQS y EC2 principalmente. Hay que tener en cuenta que EC2 permite publicar máquinas virtuales completas, que funcionan sobre un procesador equivalente a un Xeon 1.2Ghz, bajo una política de precios de pago por uso. Además este servicio ha recibido un fuerte impulso también en los dos últimos meses mediante la opción de tener IP asignadas a las máquinas (Elastic IP Addresses) y almacenamiento persistente, lo que hace que pueda ser utilizado por muchas empresas como alternativa viable a otras soluciones de hosting como el housing y los servidores dedicados.
EC2 permite también montar de forma muy sencilla infraestructuras dinámicas en las cuales se vayan añadiendo o eliminando servidores dinámicamente conforme sea necesario, bien por rangos horarios, por periodos específicos, etc. Ofrece también por ejemplo, una forma sencilla y barata de disponer de clusters y sistemas grid en los que ejecutar procesos complejos, algo que puede resultar muy interesante para algunas compañías y universidades. Como principal inconveniente hay que tener en cuenta que al estar basado en un modelo de virtualización, no nos olvidaremos de los temas de sistemas, aunque podemos aprovecharnos de la existencia de máquinas ya preconfiguradas.
Podríamos decir por tanto que, al menos por ahora, Google parece estar orientando más su servicio hacia los desarrolladores de aplicaciones y usuarios o empresas con necesidades básicas o medias, y que Amazon ofrece una infraestructura más completa, orientada hacia los usuarios que requieran de una mayor flexibilidad y tengan unos requerimientos más altos y complejos, y que estén dispuestos a lidiar con el trabajo añadido de administrar las máquinas virtuales.
Habrá que ver cómo evolucionan ambas ofertas en los próximos meses.
Interesantísimo tema, y muy bien desarrollado. Muchas gracias por la info Patxi, un abrazo! Babu