Articulo de referencia

WebScaleSQL

WebScaleSQL fue un sistema de gestión de bases de datos relacionales (RDBMS) de código abierto creado como una rama de software de las versiones comunitarias listas para producc...

WebScaleSQL fue un sistema de gestión de bases de datos relacionales (RDBMS) de código abierto creado como una rama de software de las versiones comunitarias listas para producción de MySQL . Al aunar los esfuerzos de algunas empresas e incorporar varios cambios y nuevas características a MySQL, WebScaleSQL tenía como objetivo satisfacer varias necesidades derivadas del despliegue de MySQL en entornos a gran escala, que involucran grandes cantidades de datos y numerosos servidores de bases de datos . [ 1 ] [ 2 ]

El código fuente de WebScaleSQL está alojado en GitHub y licenciado bajo los términos de la versión  2 de la Licencia Pública General de GNU . [ 3 ] [ 4 ]

El sitio web del proyecto anunció en diciembre de 2016 que las empresas involucradas ya no contribuirían al proyecto. [ 5 ]

Descripción general

Ejecutar MySQL en numerosos servidores con grandes cantidades de datos, del orden de terabytes y petabytes , genera una serie de dificultades que, en muchos casos, dan lugar a la necesidad de implementar funcionalidades específicas y personalizadas de MySQL, o a la necesidad de introducir cambios funcionales en MySQL. Varias empresas se han enfrentado a las mismas dificultades (o a muy similares) en sus entornos de producción , lo que solía derivar en la disponibilidad de múltiples soluciones para desafíos similares. [ 3 ] [ 6 ] [ 7 ]

WebScaleSQL se anunció el 27 de marzo de 2014 como un esfuerzo conjunto de Facebook , Google , LinkedIn y Twitter (con la incorporación de Alibaba Group en enero de 2015 [ 8 ] ), con el objetivo de proporcionar una estructura de desarrollo centralizada para extender MySQL con nuevas características específicas para sus implementaciones a gran escala, como la creación de grandes bases de datos replicadas que se ejecutan en granjas de servidores . Como resultado, WebScaleSQL intentó abrir un camino para eliminar la duplicación de esfuerzos que cada empresa fundadora había estado dedicando al mantenimiento de su propia rama de MySQL, y para reunir a más desarrolladores. [ 1 ] [ 4 ] [ 9 ]

WebScaleSQL se creó como una rama de la última versión comunitaria de MySQL lista para producción, que era la versión 5.6 en marzo de 2013. Como el proyecto pretendía seguir de cerca las nuevas versiones de la comunidad MySQL, se optó por una ramificación en lugar de crear una bifurcación de software de MySQL. La elección de versiones de la comunidad MySQL listas para producción para el proyecto principal de WebScaleSQL , en lugar de seleccionar alguna de las bifurcaciones de MySQL disponibles, fue el resultado de un consenso entre las cuatro empresas fundadoras, que concluyeron que las características ya existentes en MySQL  5.6 son adecuadas para implementaciones a gran escala, mientras que se planean características adicionales del mismo tipo para MySQL  5.7. [ 1 ] [ 3 ] [ 4 ]

Características

Los cambios iniciales y las nuevas funcionalidades que WebScaleSQL introdujo en el código fuente  de MySQL 5.6 fueron obra de los ingenieros empleados por las cuatro empresas fundadoras; sin embargo, el proyecto estaba abierto a contribuciones de la comunidad revisadas por pares . [ 10 ] A fecha de 15 de septiembre de 2014 Las nuevas características y cambios disponibles incluyeron lo siguiente: [ 4 ] [ 9 ] [ 11 ] [ 12 ] [ 13 ]

  • Un marco de software que proporciona pruebas automatizadas de todos los cambios propuestos.
  • Un conjunto personalizado de pruebas de rendimiento de bases de datos
  • Diversos cambios en las pruebas automatizadas proporcionadas por las versiones de la comunidad MySQL.
  • Mejoras de rendimiento en diversas áreas, incluyendo el vaciado del grupo de búferes , la ejecución de ciertos tipos de consultas SQL y la compatibilidad con arquitecturas NUMA.
  • Cambios relacionados con implementaciones a gran escala, como la posibilidad de especificar tiempos de espera de cliente inferiores a un segundo.
  • Mejoras de rendimiento y fiabilidad en la función de identificador global de transacciones (GTID) [ 14 ] de MySQL  5.6
  • El llamado super_read_onlymodo de operación para el servidor MySQL, que desactiva las operaciones de modificación de datos incluso para las cuentas de base de datos privilegiadas.

A fecha de 28 de marzo de 2014 Las nuevas características y cambios planificados incluyeron lo siguiente: [ 1 ] [ 9 ]

Disponibilidad

WebScaleSQL se distribuye únicamente en formato de código fuente, sin binarios oficiales disponibles. A fecha de 27 de marzo de 2014. La compilación del código fuente y la ejecución de WebScaleSQL solo son compatibles con hosts Linux x86-64 , lo que requiere, a su vez, una cadena de herramientas que admita los estándares de lenguaje C99 y C++11 . [ 4 ]

El código fuente está alojado en GitHub y disponible bajo la versión  2 de la Licencia Pública General de GNU ( GPL v2 ). [ 3 ] [ 4 ]

Fin de las contribuciones

En diciembre de 2016, el sitio web de WebScaleSQL anunció que las empresas que originalmente colaboraban en el proyecto (Facebook, Google, LinkedIn, Twitter y Alibaba) dejarían de contribuir. El anuncio atribuyó el fin de la colaboración a diferencias en las necesidades de las distintas empresas.

Véase también

Referencias

  1. 1 2 3 4 Steven J. Vaughan-Nichols (28 de marzo de 2013). "WebScaleSQL: MySQL para bases de datos del tamaño de Facebook" . ZDNet . Consultado el 1 de abril de 2014 .
  2. Klint Finley (27 de marzo de 2013). "Google y Facebook se unen para modernizar las bases de datos tradicionales" . Wired . Consultado el 1 de abril de 2014 .
  3. 1 2 3 4 Jack Clark (27 de marzo de 2013). "¡Forkin' 'L! Facebook, Google y amigos crean WebScaleSQL a partir de MySQL 5.6" . The Register . Consultado el 1 de abril de 2014 . 
  4. 1 2 3 4 5 6 "Preguntas frecuentes" . webscalesql.org . 27 de marzo de 2014. Consultado el 1 de abril de 2014 .
  5. "WebScaleSQL avanzando" . 29 de diciembre de 2016. Consultado el 29 de diciembre de 2016 .
  6. "Parches para MySQL 5: Google publica herramientas para MySQL" . code.google.com . 24 de junio de 2011. Consultado el 1 de abril de 2014 . 
  7. "facebook/mysql-5.1" . github.com . Junio ​​de 2013 . Consultado el 1 de abril de 2014 .
  8. "¡Demos la bienvenida a Alibaba a WebScaleSQL!" . webscalesql.org . 15 de enero de 2015 . Consultado el 15 de agosto de 2015 .
  9. 1 2 3 Doug Henschen (27 de marzo de 2014). "Facebook estrena una variante de MySQL a escala web" . informationweek.com . Consultado el 15 de agosto de 2015 .
  10. "¿Es apropiado su cambio?" . webscalesql.org . 27 de marzo de 2014 . Consultado el 1 de abril de 2014 .
  11. Michael Larabel (28 de marzo de 2014). "Facebook y otros anuncian WebScaleSQL" . Phoronix . Consultado el 1 de abril de 2014 .
  12. Steaphan Greene (27 de marzo de 2014). "WebScaleSQL: Una colaboración para desarrollar sobre la base de MySQL" . code.facebook.com . Consultado el 16 de agosto de 2015 .
  13. Doug Henschen (15 de septiembre de 2014). "Facebook anuncia la actualización de WebScaleSQL para MySQL" . informationweek.com . Consultado el 16 de agosto de 2015 .
  14. " Manual de referencia de MySQL 5.6, Sección 17.1.3 Replicación con identificadores de transacción globales" . dev.mysql.com . Consultado el 16 de agosto de 2015 .  
  • Sitio web oficial
  •  Código fuente de WebScaleSQL 5.6 en GitHub