The MySQL 5.6 2nd Development Milestone Release (DMR) was showcased at OpenWorld 2011 and MySQL 5.6.3 is available for download now. The improvements over 5.5 are to the optimizer, the performance schema, replication, and InnoDB.
In Oracle’s MySQL Blog, Rob Young says that the optimizer now includes file sort optimizations for queries with SELECT *, ORDER by non-indexed column, and with small LIMIT values. In MySQL 5.5, a query that uses ORDER BY on a non-indexed column would involve a full table scan followed by a sort on the whole table. The optimizer will now sort only on the rows that the SELECT element of the query would return, and according to Young, this gives a 3x improvement in execution times.
Another improvement sees the optimizer pushing indexed columns used in a query’s WHERE clause to the InnoDB storage engine for evaluation, a process known as Index Column Pushdown (ICP). According to Young, for a query with a WHERE clause querying a table with 5 million rows, testing has shown:
- ICP disabled: Disk bound (default buffer pool 128 Mb) the query will take 15 seconds
- ICP disabled: All data in memory (buffer pool 1.5 Gb) the query will take 1.4 seconds
- ICP enabled: execution time reduced to 90 ms for both
Other improvements to the optimizer include better use of secondary indexes, the ability to set optimizer traces, and persistent optimizer statistics for InnoDB.
The Performance Schema now includes instrumentation for the statements/execution stages, table and index I/O and table locks, as well as the ability to view resource consumption, network I/O, and aggregated summaries by thread, user, host, account, and object.
InnoDB has been improved for better transactional throughput, and replication offers improved data integrity.
Download MySQL Community Server 5.6.3 beta version here: http://dev.mysql.com/downloads/
To be informed about new articles on I Programmer, subscribe to the RSS feed, follow us on Twitter or Facebook or sign up for our weekly newsletter.