Shard-Query adds parallelism to queries

Preamble: On performance, workload and scalability: MySQL has always been focused on OLTP workloads. In fact, both Percona Server and MySQL 5.5.7rc have numerous performance improvements which benefit workloads that have high concurrency. Typical OLTP workloads feature numerous clients (perhaps hundreds or thousands) each reading and writing small chunks of data. The recent improvements to […]

Advanced index analysis with mk-index-usage

The new release of Maatkit has a useful feature in mk-index-usage to help you determine how indexes are used in more flexible ways. The default report just prints out ALTER statements for removing unused indexes, which is nice, but it’s often helpful to ask more sophisticated questions about index usage. I’ll use this blog’s queries […]

Lost innodb tables, xfs and binary grep

Before I start a story about the data recovery case I worked on yesterday, here’s a quick tip – having a database backup does not mean you can restore from it. Always verify your backup can be used to restore the database! If not automatically, do this manually, at least once a month. No, seriously […]

Implementing Parallel Replication in MySQL

Based on discussions with several clients, we are strongly considering implementing a limited form of parallel replication. Single-threaded replication is one of the most severe limitations in the MySQL server. We have a brief outline of the ideas at this wiki blueprint. So far, the “binlog order” idea is the only one that is workable. […]

HandlerSocket on SSD

We all enjoyed Yoshinori announcement of HandlerSocket, the plugin to MySQL which open NOSQL way to access data stored in InnoDB. The published results are impressive, but I want to understand some, that’s why I run couple more experiments. In blog post Yoshinori used the case when all data fits into memory, and one of […]

Baron Schwartz interviewed on WebPulp.tv

There’s an interview with Baron Schwartz (that’s me) on WebPulp.tv. Topics include the history of Percona’s software such as Percona Server (our version of the MySQL database server) and XtraBackup, what we do at Percona, what tools we use to do it, how to think logically about performance optimization, what ugly surprises happen when you […]