Facebook publica Presto, su motor de búsqueda para Big Data, como código abierto

La red social Facebook ha decidido "regalar" a la comunidad del software de código abierto su motor de búsqueda Presto. Esta herramienta gratuita permite realizar consultas SQL rápidas en fuentes de datos de todos los tamaños empleando la tecnología Hadoop y sin requerir grandes despliegues de hardware.

Facebook publica Presto, su motor de búsqueda para Big Data, como código abiertoCon más de 1.000 millones de usuarios activos, Facebook se ha convertido en una de las compañías usuarias de centros de datos más importantes del mundo. Actualmente almacena más de 3.000 petabytes de información que requieren análisis y consultas constantes, lo que ha obligado a la empresa creada por Mark Zuckerberg a desarrollar herramientas propias para procesar esta información. Una de estas herramientas es Presto, un motor de búsqueda SQL que la red social ha decidido publicar como open source, según anunciaban los responsables de su desarrollo en un artículo publicado esta semana en su blog.

Tal y como lo definen sus creadores, Presto es un motor distribuido para realizar consultas SQL optimizado con el fin de ofrecer la máxima velocidad en búsquedas complejas. Su desarrollo se inició en 2012 en Java combinado con el framework de software Apache Hadoop. Actualmente Facebook lo usa ampliamente en sus centros de datos, realizando más de 30.000 consultas diarias en cerca de 1.000 nodos. La arquitectura básica de Presto se puede consultar en un gráfico que está disponible en el blog de Facebook.

¿Para qué sirve Presto?

Por sus características, Presto es una herramienta ideal para aplicaciones de Big Data que requieran acceder a múltiples fuentes de datos heterogéneas con rapidez y permitir la escalabilidad. Al convertirla en software de código abierto, Facebook añade una opción gratuita a la creciente oferta de software para consultas SQL sobre Hadoop. En este sentido, la empresa destaca que decidió desarrollar Presto al no encontrar una alternativa eficiente y asequible para cubrir sus necesidades.

En este sentido, antes de publicar el código fuente de Presto, Facebook compartió su motor con otras empresas como Dropbox y AirBnB, que han empezado a probarlo en varias aplicaciones y desarrollos. Por lo tanto, parece claro que la intención de la red social es que la colaboración de la comunidad de código abierto permita refinar y perfeccionar Presto, por ejemplo añadiendo nuevos conectores con fuentes de datos. De este modo, Facebook cede su tecnología a cambio de compartir los costes de desarrollo y poder continuar aplicando las mejoras a su compleja infraestructura de centros de datos.

Está disponible más información sobre el motor de búsqueda Presto aquí.

¿Te parece bien que las grandes compañías como Facebook colaboren con el software libre?

Imagen: Datacenter de Facebook en Pineville (Estados Unidos)