arquitectura kappa y prácticamente todos los proyectos en los que he estado implicado, se han desarrollado usando esta arquitectura. [caption id="attachment_2887" align="alignleft" width="150"] Apache Beam[/caption] Desde hace un tiempo he empezado a estudiar y usar Apache Beam. El punto de inflexión ha sido las charlas que vi durante la apachecon big data europe que se celebró en Sevilla y en la que di una charla sobre arquitectura kappa. La conversación que tuve con Sergio Fernandez (@wikier) fue decisiva. Cuando un crack como Sergio te cuenta como está trabajando con Apache Beam y por es una tecnología es killer es muy difícil no investigar más 😉 En resumen, Apache Beam es un framework para crear arquitecturas que trabajen con datos muy al estilo de la arquitectura kappa. Si hubiera que definir una sola característica por la que es interesante sería la capacidad de abstracción en la definición de la arquitectura con un DAG que se puede ejecutar contra distintos frameworks: Apache Spark, Storm, Flink, Google Dataflow o con un Local Runner en tu máquina. Ahora mismo está en el incubator de la fundación apache y debe estar a punto de ser aprobado para que se convierta en un proyecto oficial. Ya hay empresas usándolo en producción y las pruebas que he hecho no me han dado ningún problema. También hay una mala y una buena noticia. La mala es que apache beam esta escrito en java y se programa en java. No soy un fan de java y menos de como resuelven las API/SDKs. La buena noticia es que la gente de spotify que usa a tope Apache Beam se ha programado un binding para scala. Además son unos cracks y se nota en lo bien que han resuelto el binding. Han conseguido DSL funcional, bello y casi un clon de spark/cascading. Vamos que no pienso usar java y si scala con el proyecto Scio que es como se llama el proyecto de spotify. Que por cierto tiene licencia apache y está en proceso de merging con Apache Beam. No son los únicos dos proyectos que incluyo para el 2017, ya os contaré más en otros posts 😉 ]]>