Upload
vividcortex
View
177
Download
0
Tags:
Embed Size (px)
Citation preview
Me
✤ Cofounder of @VividCortex
✤ Author of High Performance MySQL
✤ I love hearing from people just like you:
✤ @xaprb on Twitter
✤ http://www.linkedin.com/in/xaprb
Optimization, Backups, Replication, and more
Baron Schwartz, Peter Zaitsev &
Vadim Tkachenko
High PerformanceMySQL
3rd Edition
Covers Version 5.5
Major Community Developments
✤ Replication/Clustering: Galera, Continuent
✤ Storage: TokuDB, Akiban
✤ Sharding: Clustrix, ScaleArc, ScaleBase, ParElastic
✤ Backup: Percona XtraBackup
✤ Services & Support: Percona, SkySQL
✤ Tools: MySQL Workbench, MySQL Utilities, Percona Toolkit
Obligatory Biblical Quote
When the wicked, even mine enemies and my foes, cameupon me to eat up my flesh, they stumbled and fell.
- Psalm 27:2
MySQL 5.5
✤ MySQL 5.5 is old news now.
✤ Thread pooling, auditing, pluggable authentication, multicore performance, instrumentation, InnoDB, InnoDB, InnoDB, semisync replication, partitioning, metadata locking, etc etc.
MySQL 5.6
✤ I expect MySQL 5.6 to be GA within months
✤ There’s a very long list of features and changes in 5.6
✤ It is going to be a huge step forward
MySQL 5.6 Overview
✤ Faster queries
✤ Better scalability on multicore hardware
✤ More reliable, efficient, and user-friendly replication
✤ Instrumentation and tracing to measure behavior and performance
✤ Easier and more reliable failover for high availability
Query Optimizations
✤ Subquery and “derived table” improvements
✤ Improvements for SELECT .. ORDER BY .. LIMIT
✤ Reductions to random I/O (MRR, BKA)
✤ Index condition pushdown
✤ Removal of “leftmost prefix” limitation
✤ EXPLAIN for UPDATE etc; JSON EXPLAIN; optimizer trace
Data Types
✤ Microsecond precision for timestamp / datetime types
✤ No more hardcoded magic for timestamps
InnoDB
✤ Full-text search
✤ Online ALTER TABLE
✤ Performance & scalability
✤ Split kernel mutex - multiple purge threads - adaptive flushing
✤ Fast warmup - compression - data/log file placement - persistent statistics - limits on data dictionary size - import & export
Performance Schema
✤ Many more tables that are useful for DBAs
✤ Statement digests in particular
✤ Also, per-table, per-index, per-user, etc statistics
✤ Lower overhead
✤ More configurable
Replication
✤ Global transaction ID
✤ Binary log group commit
✤ Replication can be multi-threaded
✤ Binary log events are checksummed
✤ Replication is transactional and crash-safe
✤ Easy streaming binary log backups
NoSQL Access
✤ Access InnoDB directly via memcached protocol
✤ Bypass the parser, optimizer, etc
✤ The speed of memcached—but it’s ACID compliant
✤ And automatically consistent; no stale data
Lots and lots more
✤ Stored procedure improvements; a debugger for .NET
✤ Improved installers for Windows
✤ Host cache is no longer invisible; table cache is partitioned
✤ Read http://dev.mysql.com/doc/refman/5.6/en/mysql-nutshell.html but get a cup of coffee first.
Conclusions
✤ The MySQL community/ecosystem is thriving
✤ MySQL 5.5 was the best release in its history
✤ MySQL 5.6 is going to change the MySQL world in a big way
✤ MySQL is alive and well under Oracle’s ownership
Questions?
[email protected] • @xaprb • http://www.linkedin.com/in/xaprb
Image Credits
✤ http://www.flickr.com/photos/m-louis/1482868533/
✤ http://www.flickr.com/photos/scottfeldstein/2428967207/
✤ http://www.flickr.com/photos/jdhancock/4252667795/
✤ http://www.flickr.com/photos/aunto/292238140/
✤ http://www.flickr.com/photos/uggboy/5927527168/
✤ http://www.flickr.com/photos/addedentry/3273096118/
✤ http://www.flickr.com/photos/telemax/4704175548/
✤ http://www.flickr.com/photos/notsogoodphotography/3058866282/
✤ http://www.flickr.com/photos/mcgraths/866572532/