Con MySQL 5.6, lanzado hace unos días, Oracle ha actualizado la base de datos de código abierto para que sea más competitiva con los almacenes de datos NoSQL.
“Estamos en diálogo constante con nuestros clientes y usuarios, y ellos nos han mostrado interés en las tecnologías NoSQL”, sostuvo Tomas Ulin, vicepresidente de Oracle para ingeniería de MySQL. Oracle espera que MySQL pueda ofrecer las velocidades y las escalabilidad que tiene NoSQL pero manteniéndose como una base de datos completamente relacional.
“Podemos combinar lo mejor de ambos mundos. Uno no tiene que dividir sus conjuntos de datos o tener dos bases de datos”, sostuvo Ulin.
Durante el desarrollo de este último release, que demoró cerca de dos años, Oracle aceleró el trabajo en varias mejoras que harían de MySQL más competitiva con las NoSQL, que han crecido en popularidad en los pasados años.
MySQL ofrece ahora una forma de acceder a los datos de manera rápida, mediante la API (application programming interface) de Memcached. MySQL en realidad no usa memcached sino que toma su API -que es conocida por muchos administradores de sistemas- como una interfase para capturar los datos directamente de la base de datos, sin pasar por el motor de la base de datos. El enfoque puede entregar datos hasta nueve veces más rápidamente, para el caso de los datos que no necesitan ser analizados por SQL.
Otra nueva característica que debería darle a MySQL un poco más de igualdad con las NoSQL es la capacidad de ejecutar operaciones DDL (Data Definition Language) sin poner offline las tablas de la base de datos que están siendo cambiadas. Los administradores pueden alterar un esquema, añadir o soltar una columna, o renombras una columna, todo sin poner offline la base de datos. Los productos NoSQL han sido alabados por este tipo de actualizaciones de esquema dinámico, las cuales ahora también ofrecerá MySQL.
Otras nuevas características en MySQL 5.6 incluyen la capacidad de optimizar las subqueries, o los nested queries, las cuales, de otro modo, se ejecutan en un periodo prohibitivamente largo. Los diagnósticos son más completos, gracias a un query EXPLAIN más amplio. La base de datos también ofrece un índice para búsquedas con texto completo, de tal forma que las búsquedas pueden hacerse dentro de grandes campos de texto sin en realidad realizar un escaneo completo de la tabla, lo cual toma más tiempo.
Para una gran disponibilidad, MySQL 5.6 tiene identificadores globales de transacciones, los cuales simplifican el proceso de failing over a un servidor de backup de base de datos. El MySQL Workbench ahora incluye un conjunto de código Python que monitorea conjuntos de bases de datos master-slave y puede automáticamente cambiar las operaciones al servidor de backup si es que la base de datos primaria falla.
El software puede ahora correr en servidores de 48 núcleos, mientras que antes los hacía en 32 núcleos con el MySQL 5.5. Aunque no muchos corren la base de datos en sistemas tan grandes, Oracle espera que se realice en los próximos años. “Necesitamos estar un poco adelantados a la curva cuando todo esto crezca”, sostuvo Ulin.
Joab Jackson, IDG News Service.