Buy Percona ServicesBuy Now!

MySQL Partitioning – can save you or kill you

 | December 11, 2010 |  Posted In: Insight for DBAs, MySQL

I wanted for a while to write about using MySQL Partitioning for Performance Optimization and I just got a relevant customer case to illustrate it. First you need to understand how partitions work internally. Partitions are on the low level are separate table. This means when you’re doing lookup by partitioned key you will look […]

Read More

Shard-Query adds parallelism to queries

 | November 15, 2010 |  Posted In: Insight for Developers, MySQL

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 […]

Read More

Impact of the sort buffer size in MySQL

 | October 25, 2010 |  Posted In: Benchmarks, MySQL

The parameter sort_buffer_size is one the MySQL parameters that is far from obvious to adjust. It is a per session buffer that is allocated every time it is needed. The problem with the sort buffer comes from the way Linux allocates memory. Monty Taylor (here) have described the underlying issue in detail, but basically above […]

Read More

More on dangers of the caches

 | September 23, 2010 |  Posted In: Insight for Developers, MySQL

I wrote couple of weeks ago on dangers of bad cache design. Today I’ve been troubleshooting the production down case which had fair amount of issues related to how cache was used. The deal was as following. The update to the codebase was performed and it caused performance issues, so it was rolled back but […]

Read More

UDF -vs- MySQL Stored Function

 | September 6, 2010 |  Posted In: MySQL

Few days ago I was working on a case where we needed to modify a lot of data before pushing it to sphinx – MySQL did not have a function to do the thing so I thought I’ll write MySQL Stored Function and we’ll be good to go. It worked! But not so well really […]

Read More

A workaround for the performance problems of TEMPTABLE views

 | May 19, 2010 |  Posted In: Insight for Developers, MySQL

MySQL supports two different algorithms for views: the MERGE algorithm and the TEMPTABLE algorithm. These two algorithms differ greatly. A view which uses the MERGE algorithm can merge filter conditions into the view query itself. This has significant performance advantages over TEMPTABLE views. A view which uses the TEMPTABLE algorithm will have to compute the […]

Read More

Joining on range? Wrong!

 | May 17, 2010 |  Posted In: Insight for Developers, MySQL

The problem I am going to describe is likely to be around since the very beginning of MySQL, however unless you carefully analyse and profile your queries, it might easily go unnoticed. I used it as one of the examples in our talk given at phpDay.it conference last week to demonstrate some pitfalls one may […]

Read More

Performance improvements in Percona 5.0.83 and XtraDB

 | July 14, 2009 |  Posted In: Benchmarks

There was small delay in our releases, part of this time we worked on features I mentioned before: – Moving InnoDB tables between servers – Improve InnoDB recovery time and rest time we played with performance trying to align XtraDB performance with MySQL 5.4 ® and also port all performance fixes to 5.0 tree. So […]

Read More

Announcing Percona.tv

 | June 18, 2009 |  Posted In: Events and Announcements

Today marks the official launch of Percona.tv. We’ll be uploading technical screencasts, conference video, and anything else cool we can think up. If you’ve got ideas or requests, let us know and we’ll do our best to accommodate!

Read More