domingo, abril 13, 2008

Google Application Engine

.
Como nos tiene acostumbrado Google ha lanzado un nuevo servicio, para programadores, a los efectos que la comunidad lo pruebe. Se trata del "Application Engine" el cual consiste en una plataforma similar a la Amazon AWS, donde un grupo de librerías de desarrollo (por ahora en Python) permiten realizar aplicaciones web que corran en servidores Google. Es decir que lo que Google ofrece es su data center distribuido, a los efectos que las empresas puedan usar este como su servicio de hosting.

La ventaja competitiva de Google sobre cualquier prestador clásico de hosting es que "asegura" que una aplicación que demande más espacio de almacenamiento, ciclos de CPU o ancho de banda se tramitará de forma "eficiente" y el cliente lo obtendrá de forma transparente a sus aplicaciones.

En este momento el servicio está en estado beta y 10.000 desarrolladores lo testean, hay una página donde ellos presentan algunas aplicaciones ejemplo. Hay un rumor que el espacio inicial para almacenar proyectos será de 500 MB y se dispondrán de 200 millones de megaciclos de CPU y 10 GB de transferencia diaria.

Según Ricardo Galli, conocido profesor universitario, la informática de servidores en 10 años tendrá poco que ver con la actual y por ello deberían empezar a estudiarse cambios en la currícula de las carreras universitarias:

1. Tratamiento masivo de datos. La precisión perderá el valor primordial y absoluto que tiene hoy en día en la informática tradicional. Ganará importancia la capacidad de obtener aproximaciones de inmensa cantidades de datos (los vídeos de Youtube son casi un ejemplo paradimático, por naïve y fácil de entender).

2. Programación distribuida y multiprogramación masiva con modelos como el map-reduce (el map-reduce es heredado de los lenguajes funcionales como el Lisp, seguramente veremos la introducción de modelos más sofisticados de este tipo en casi todos los lenguajes dinámicos).

3. Las base de datos relacionales no serán relativamente tan importantes –como lo son hoy– por sus características relacionales+ACID, otras adquirirán más relevancia: free form, bajas latencias, creación automática de índices de acuerdo a los patrones de consultas, clustering/particionado, distribución y replicación.

4. Los lenguajes dinámicos serán los reyes (Python, Ruby, Perl, incluso el PHP, algunos dicen que el Javascript 2/ECMAScript Edition 4 será competencia dura, aunque también tienen sus discusiones y piden incluso que se pythonise), pero los “exquisitos” usarán lenguajes funcionales específicamente orientados a sistemas concurrentes y distribuidos, como Erlang.


No hay comentarios.: