Histograms in MySQL and MariaDB
MariaDB Server has had histograms since MariaDB 10.0, now, MySQL 8.0 will have them too. This session will present an overview of histogram implementations in MariaDB, MySQL 8.0, and we will also take PostgreSQL for comparison. We’ll cover everything about histograms: - Why do query optimizers need histograms - What are the costs of collecting and maintaining a histogram in each database - How the query optimizers use histogram data - What are the strong and weak points of histogram implementation in each database At the end, I’ll talk a bit about a related development in MariaDB Server: the optimizer is getting a capability to use constraints.
Query Optimizer Developer, MariaDB Corporation
Sergei Petrunia is a query optimizer developer at MariaDB Corporation Ab. He implemented MariaDB's optimizer features like Table Elimination (MariaDB 5.1), improvements to semi-join subquery optimizations (MariaDB 5.3/5.5), SHOW EXPLAIN (MariaDB 10.0), and ANALYZE for statements (MariaDB 10.1) Prior to Monty Program, he has worked for MySQL Ab/Sun Microsystems, where he was the author of query optimizer features like Partition Pruning, Index Merge (MySQL 5.1), and numerous smaller improvements in query optimizer and other parts of the server. He maintains a highly technical blog at http://s.petrunia.net/blog