Category: Performance

Performance

Visualize This! MySQL Tools That Explain Queries

In this blog post, I want to go over some of the day-to-day MySQL tools and methods DBAs use to analyze queries and visualize “what is going on?” I won’t be going into the nitty-gritty details of each of these tools, I just want to introduce you to them and show you what they look …

Performance

Updated: ClusterControl Tips & Tricks: MySQL Query Performance Tuning

Bad query performance is the most common problem DBA’s have to deal with. There are numerous ways to collect, process and analyze the data related to query performance – we’ve covered one of the most popular tools, pt-query-digest, in some of our previous blog posts: Become a MySQL DBA blog series When you use ClusterControl …

Performance

Why ZFS Affects MySQL Performance

In this blog post, we’ll look at how ZFS affects MySQL performance when used in conjunction. ZFS and MySQL have a lot in common since they are both transactional software. Both have properties that, by default, favors consistency over performance. By doubling the complexity layers for getting committed data from the application to a persistent …

Performance

How to Benchmark PostgreSQL Performance

The purpose of benchmarking a database is not only to check capability of database, but also the behavior of a particular database against your application. Different hardwares provide different results based on the benchmarking plan that you set. It is very important to isolate the server (the actual one being benchmarked) from other elements like …

Performance

Four Ways MySQL Executes GROUP BY

In this blog post, I’ll look into four ways MySQL executes GROUP BY.  In my previous blog post, we learned that indexes or other means of finding data might not be the most expensive part of query execution. For example, MySQL GROUP BY could potentially be responsible for 90% or more of the query execution time.  …

Performance

How to choose the best indexes for MySQL query and database optimization

Many of our users, developers and database administrators, keep asking our team about EverSQL’s indexing recommendations algorithm. So, we decided to write about it.   Tip: Do not click here if all your SQL queries are as fast as a lightning!   This tutorial won’t detail all the internals of the  algorithm, but rather try …

Performance

MySQL Query Performance: Not Just Indexes

  In this blog post, I’ll look at whether optimizing indexing is always the key to improving MySQL query performance (spoiler, it isn’t). As we look at MySQL query performance, our first concern is often whether a query is using the right indexes to retrieve the data. This is based on the assumption that finding the data …

Performance

Using MySQL 5.7 Generated Columns to Increase Query Performance

  In this blog post, we’ll look at ways you can use MySQL 5.7 generated columns (or virtual columns) to improve query performance. Introduction About two years ago I published a blog post about Generated (Virtual) Columns in MySQL 5.7. Since then, it’s been one of my favorite features in the MySQL 5.7 release. The reason …

Performance

On InnoDBs Persistent Optimizer Statistics

As I put it in recent Facebook post, one of MySQL features that I truly hate is InnoDB’s persistent statistics. I think I should clarify this statement. It’s great to have a way to save statistics in between server restarts, to have better control on the way it is estimated (even on a per table …

Performance

From Months to Seconds with Subquery Materialization

In an earlier blog post, I showed how optimizer improvements in MySQL 5.6 gave better performance for several of the queries in the DBT-3 benchmark. However, for one of the queries, Query 18, I was not able to give exact numbers for the improvement since the query took very long in MySQL 5.5. I decided …