En otro post, trataremos la instalación de MySQL 5.5 en CentOS, que por cierto, la primera vez no es sencilla. MySQL 5.5 se convirtió en estable el 15 de diciembre de 2010. Ahora descubro que GA es Generally Available :), vaya tela… En definitiva, algunos patchs de google incorporados a la suite 5.5, hacen más que probable que 5.5 tenga un rendimiento bastante superior a otras versiones. Lo digo sin todavía haber hecho los pertinentes test. Pero tiene buenta pinta.
Características principales
El lanzamiento de MySQL 5.5 aporta mejoras en la personalización y escalabilidad.
Escalabilidad y mejora del rendimiento: MySQL Database y motor de almacenamiento InnoDB han sido mejorados para aportar un óptimo rendimiento y escalabilidad para aprovechar los últimos avances en plataformas multi-CPU y multi-core (SMP).
En los entornos que soporten esta característica, se utilizan instrucciones atómicas de la CPU para mejorar el rendimiento de los RW-locks(mutex que permite múltiples lectores). Hay una variable de estado de MySQL que permite conocer si esta característica se soporta en nuestro sistema o instalación.
mysql> show status like 'Innodb_have_atomic%';
+-----------------------------+-------+
| Variable_name | Value |
+-----------------------------+-------+
| Innodb_have_atomic_builtins | ON |
+-----------------------------+-------+
1 row in set (0.00 sec)
Nuevas variables a configurar para mejorar el rendimiento en base a múltiples threads de lectura y de escritura
mysql> show variables like 'innodb_%_io_threads';
+-------------------------+-------+
| Variable_name | Value |
+-------------------------+-------+
| innodb_read_io_threads | 4 |
| innodb_write_io_threads | 4 |
+-------------------------+-------+
2 rows in set (0.00 sec)
Disponemos de innodb_io_capacity, otro patch de google, que permite configurar el número de operaciones de entrada/salida por segundos. Anteriormente, limitada por defecto a 100, ahora aumentada a 200.
mysql> show variables like 'innodb_io_%';
+--------------------+-------+
| Variable_name | Value |
+--------------------+-------+
| innodb_io_capacity | 200 |
+--------------------+-------+
1 row in set (0.00 sec)
mysql>
InnoDB motor por defecto: Ahora, desde la versión MySQL 5.5, InnoDB es el motor de almacenamiento por defecto de la base de datos MySQL, entrega de transacciones ACID, integridad referencial y sistema de recuperación de desastres.
Alta-Disponibilidad: nueva replicación semi-sincrona, se supone que el sistema de replicación es ahora más eficaz y consistente
Usabilidad mejorada: índices mejorados y particionamiento de tablas, soporte SIGNAL/RESIGNAL y diagnósticos mejorados, incluyendo un nuevo PERFORMANCE_SCHEMA, mejorada la administración de MySQL 5.5.
Mejoras en el rendimiento
Teóricamente, la suite MySQL 5.5 ofrece mejoras en el rendimiento versus la suite 5.1. Hasta un 360 % de ganancia en operaciones Read/Write y hasta 200 % de mejoras sólo en Read Only.
Links
- http://www.oracle.com/us/corporate/press/195726
- http://dev.mysql.com/doc/refman/5.5/en/smp-improvements.html
- http://mysqlha.blogspot.com/2008/10/more-background-io-threads-for-innodb.html
- http://mysqlha.blogspot.com/2008/12/innodb-insert-performance.html
- http://dev.mysql.com/doc/refman/5.5/en/replication-semisync.html
- http://systemadmin.es/2011/01/mysql-5-5-nuevas-caracteristicas
Pues tiene buena pinta MySQL 5.5 😀 http://bit.ly/mcaa3v