If you're using MySQL in your applications, the next version has been made available for testing and feedback. Oracle says the changes are focused on better scalability, performance and flexibility.
Looked at in more detail, you can make use of a new full text search function that means you can create indexes on text-based data held in InnoDB tables, and once indexed carry out full text searches on it. MySQL replication has been speeded up, and there's a new BinLog API that's designed to let developers
"seamlessly integrate MySQL with both new and legacy applications and data stores."
The improvements to performance come from optimizer improvements such as index condition pushdowns and multi-range reads. Index condition pushdown means that processing of WHERE clauses is moved to the storage engine, so reducing I/O overhead. Multi-range Reads mean that when a query makes use of a secondary index, the disk blocks are sorted so that they can be read in large sequential I/O requests rather than lots of small out-of-order reads.
In addition to the new full text search, other improvements to InnoDB include persistent optimizer stats that help the optimizer decide which indexes to use in a query by sampling a portion of the index. These stats can now persist across server restarts, rather than being recomputed (and possibly changing) due to restarts and some runtime events, so will be more accurate and keep query performance stable.
One major addition is that of a NoSQL interface via memcached. Using the memcached API, web services can now directly access the InnoDB storage engine without transformations to SQL. The InnoDB memcached API is available in Labs.mysql.com.
In terms of scalability, partitioning has been improved with the addition of explicit partition selection so you can directly define which partitions are used in a query, DML, or data load operation, rather than repeating all the partitioning criteria in each statement.
Replication improvements include optimized row-based replication so that you can choose to replicate partial "before" and "after" images for INSERT, UPDATE and DELETE events where primary keys or explicit columns were set in the SQL statement.
Other improvements to replication see support for multi-threaded slave servers so that work is split between worker threads based on the database name, allowing updates to be applied in parallel rather than sequentially. Slave servers have been made crash-safe in that they can automatically recover from a failure and resume; and time-delayed replication is now supported with the ability to set replication delays up to a maximum of 68 years.
What's New in MySQL 5.6
My SQL Labs - to test early access code
MySQL 5.6 - more speed and scalability
If you would like to be informed about new articles on I Programmer you can either follow us on Twitter or Facebook or you can subscribe to our weekly newsletter.