Un sitio simple para personas simples que se interesan la cultura geek y la tecnología... si aquí no entiendes matat... dios te ha abandonado

10 abr 2012

Twitter libera sus mejoras de MySql


MySQL es uno de los sistemas de gestión de bases de datos más extendidos del mundo, con más de seis millones de instancias instaladas que dan servicio a gestores de contenidos web (Drupal, Joomla!, WordPress) y está presente en redes sociales como Facebook o Twitter. Precisamente, Twitter lleva desde su origen trabajando con MySQL y, claro está, ha desarrollado mejoras a este sistema de gestión de bases de datos para adaptarlo al volumen de datos que maneja el servicio y, para contribuir con la comunidad, ha decidido liberar los desarrollos realizados y ponerlos a disposición del resto de desarrolladores.



El anuncio fue realizado por Jeremy Cole y Davi Arnaut en el blog de ingeniería de Twitter y en él comentan que Twitter, gracias a sus requerimientos relativos a escalabilidad y disponibilidad, ha sido capaz de llevar MySQL a un nivel al que ninguna empresa había sido capaz de llegar (puesto que normalmente se plantean, para grandes volúmenes de datos, adoptar bases de datos NoSQL como MongoDB). Para Twitter, y su equipo de ingeniería, estabilizar el servicio y hacerlo más robusto era un objetivo de gestión interna y, lógicamente, un objetivo vinculado a la experiencia del usuario que utiliza el servicio.


Todos los desarrollos para MySQL realizados por Twitter se encuentran ya disponibles en github bajo licencia GPLv2, por tanto, están abiertos a su utilización por parte de la comunidad de desarrolladores de MySQL. Las mejoras que Twitter le hizo según ellos son:

  • Agregar las variables de estado adicionales, en particular de las partes internas de InnoDB. Esto nos permite controlar nuestros sistemas de forma más eficaz y comprender su mejor comportamiento al manejar las cargas de trabajo de producción.
  • Optimizar la asignación de memoria en grandes sistemas NUMA: Asigna un grupo de búfer completo en el inicio de InnoDB , no rápido si la memoria no está disponible, asegúrese de rendimiento en el tiempo, incluso cuando el servidor está bajo presión de memoria.
  • Reducir el trabajo innecesario a través de la mejora del lado del servidor de tiempo de espera apoyo comunicado. Esto permite al servidor para cancelar de forma proactiva las consultas que se ejecutan más de un tiempo de espera en milisegundos granularidad.
  • La exportación y la restauración del grupo de búfer InnoDB en el uso de un método seguro y ligero. Esto nos permite construir herramientas de apoyo se reinicia de rodadura de nuestros servicios con el mínimo dolor.
  • Optimizar MySQL para SSD basados ​​en máquinas, incluyendo el comportamiento de la página-lavado y la reducción de escrituras en disco para mejorar la vida útil.

Twitter no es la única red social que revierte en la comunidad sus trabajos sobre MySQL, sin ir más lejos, Facebook también publica sus aportes en Launchpad, contribuyendo así al crecimiento de este proyecto.


Imagen: operationreality
Fuente: BlogdeIngenieriaTwitter

No hay comentarios:

Publicar un comentario