WebScaleSQL, el proyecto libre de Facebook, Twitter, Google y Linkedin para hacer MySQL más escalable

WebScaleSQL es el proyecto Open Source iniciado por ingenieros de Facebook, Google, LinkedIn y Twitter, abierto a aportaciones del resto de la comunidad. Presentado esta semana, sobre un branch de la release MySQL 5.6 community, el objetivo es mejorar con el conocimiento adquirido por estas compañía y llevar este sistema de bases de datos a un alto grado de eficiencia que soporte las exigencias a gran escala que requieren.

Facebook con más de mil millones de usuarios, es quizás uno de los mayores despliegues sobre bases de datos MySQL, por tanto uno de los principales interesados en empujar el desarrollo de MySQL, al igual que Twitter. Por eso, a pesar que cierta parte de la comunidad ha optado por hacer un fork como MariaDB o Drizzle, Facebook y el resto de compañías del proyecto WebScaleSQL apuestan por crear un branch que camine junto al proyecto inicial y nutra a la comunidad actual de MySQL.

El objetivo de WebScaleSQL es hacer posible que MySQL pueda funcionar en entornos escalables con alta exigencia como la web. Los ingenieros de las cuatro compañías implicadas llevan meses intercambiando conocimientos y viendo cómo trabaja cada uno para aunar un proyecto común que les ayude a solucionar problemas comunes.

El sistema colaborativo de WebScaleSQL está abierto para que cualquiera pueda enviar su colaboración, revisar el código o reportar errores. Por ejemplo, un desarrollador de WebScaleSQL puede proponer un cambio. Luego un desarrollador de WebScaleSQL de otra compañía revisar el código y aportar feedback. Si ambos están de acuerdo, el código es funcional y ha pasado los tests, se pushea el código para que esté disponible para todos los desarrolladores. Por otro lado, cada organización puede customizar WebScaleSQL a sus propias necesidades.

Entre las mejoras ya incorporadas por parte de WebScaleSQL se encuentran:

  • La construcción de un framework que automatice los cambios de cada propuesta enviada, ejecute y publique los resultados en el conjunto de tests de MySQL.

  • Un conjunto de tests de stress para ejecutar en los procesos de mejora de rendimiento de los sistemas MySQL.

  • Cambios en el rendimiento de MySQL: optimización de queries, mejoras del buffer pool fushing, soporte NUMA, etc..

  • Funcionalidades que habilita de forma sencilla WebScaleSQL como un sistema escalable con el modo super_read_only o poder especificar un sub-second client timeout.

Tanto Twitter como Facebook han liberado parte de sus proyectos internos, la “salsa secreta” que emplean en su arquitectura interna. WebScaleSQL es un gran ejemplo de como competidores en el negocio trabajan juntos para solventar problemas similares a nivel de desarrollo de software.

Más información | WebScaleSQL Vía | Engineering Blog Facebook En Genbeta Dev | ¿MariaDB será el MySQL del futuro?

Ver todos los comentarios en https://www.genbeta.com

VER 0 Comentario

Portada de Genbeta