miércoles, 2 de abril de 2014

Oracle duplica la velocidad del manejo de queries de MySQL

Oracle duplica la velocidad del manejo de queries de MySQL

Joab Jackson, IDG News Service – CIOPeru.pe
oraclePara el próximo release de su MySQL de código abierto, Oracle está realizando varios cambios diseñados para mejorar en gran medida la velocidad del sistema de administración de bases de datos relacionales.
Un desempeño tan notable podría ayudar a las organizaciones a ahorrar dinero en compra de servidores, ya que requerirían de menos servidores para correr grandes trabajos. O también podría permitirles correr queries complejos que podrían haber tomado mucho tiempo en las versiones anteriores del sistema de base de datos, sostuvo Tomas Ulin, vicepresidente de ingeniería de MySQL de Oracle.
El lunes, la compañía lanzó la versión más recientemente desarrollada del software, MySQL Development Milestone 5.7.4, junto con varios programas asociados para administrar la base de datos. La última gran versión de MySQL, la versión 5.6, fue lanzada en febrero del 2013.
Esta nueva versión ha mostrado su capacidad para responder a 512 mil consultas de solo lectura por segundo (qps), más del doble de las 250 mil que MySQL 5.6 era capaz de realizar.
El desempeño también ha sido mejorado para los usuarios del plug in de caching Memcached, que va alrededor del motor de datos por defecto de MySQL, InnoDB, para acceder directamente a las filas de la base de datos, para conseguir un mejor desempeño. Este enfoque puede ahora ofrecer un rendimiento de solo lectura de más de un millón de QPS.
No existe una revisión única que Oracle haya hecho que haya mejorado el desempeño por sí sola, más bien es el efecto acumulado de los muchos cambios individuales, sostuvo Ulin.
Las mejoras en el desempeño son especialmente oportunas, dada la cambiante naturaleza de los servidores sobre los que se corre MySQL, de acuerdo a Ulin.
Históricamente, MySQL fue diseñado para correr en servidores comerciales con núcleos simples de procesador. Los clientes en la actualidad están comprando servidores con 16, 32 e incluso 64 núcleos. Gran parte del trabajo en el desempeño de MySQL se ha producido en torno a la mejora en el manejo de los múltiples hilos que operan sobre la misma estructura de datos.
“Tenemos que evolucionar hacia donde va la corriente”, afirmó Ulin. “Las personas no estarán contentas si se pasan de una máquina de 16 núcleos a otra de 32 núcleos y no consiguen ningún beneficio”.
Las mejoras en el desempeño también fueron realizadas en torno a otras partes del sistema de administración de la base de datos. Por ejemplo, el software también reduce la cantidad de tiempo que se necesita para establecer una conexión con la base de datos, gracias al trabajo con el que contribuyó Facebook.
Más allá del desempeño, Oracle está mejorando también a MySQL en varias otras formas.
La compañía ha ampliado el esquema del desempeño del software, el cual define las métricas usadas para medir el desempeño de la base de datos. La base de datos recoge el desempeño por sí misma a través de varias investigaciones internas. El esquema puede usarse para extraer y resumir esa información a través de la base de datos o con herramientas externas, que pueden ser útiles para diagnosticar los problemas de desempeño.
El esquema ofrece ahora mucha más información acerca de qué está ocurriendo dentro de la memoria del servidor. Puede usarse para señalar los problemas en torno al locking de los metadatos y otros problemas escurridizos. Un usuario, por ejemplo, podría usar SQL para extraer todas las métricas de desempeño de la memoria en torno a una tabla específica de la base de datos.
MySQL Workbench 6.1, que Oracle también lanzó el lunes, incluye un conjunto de herramientas de diagnóstico gráficas sobre estas nuevas indagaciones a la memoria.
La compañía también se encuentra preparando varias otras nuevas funciones que aún no se encuentran lo suficientemente maduras para este release, pero podrían ser parte de la versión 5.7. Una característica podría ser la primera en tener replicación multimaster.