Different query optimizations and how you can use and tune them to get better performance.
Title | Description |
---|---|
Index Hints: How to Force Query Plans | Using hints to get the optimizer to use another query plan. |
Subquery Optimizations | Articles about subquery optimizations in MariaDB. |
Optimization Strategies | Various optimization strategies used by the query optimizer. |
Optimizations for Derived Tables | Optimizations for derived tables, or subqueries in the FROM clause |
Table Elimination | Resolving queries without accessing some of the tables the query refers to |
Statistics for Optimizing Queries | Different statistics provided by MariaDB to help you optimize your queries |
MIN/MAX optimization | How MIN and MAX are optimized |
Filesort with Small LIMIT Optimization | MariaDB 10's filesort with small LIMIT optimization |
LIMIT ROWS EXAMINED | Means to terminate execution of SELECTs that examine too many rows |
Block-Based Join Algorithms | Algorithms that employ a join buffer for the first join before starting to look in the second. |
index_merge sort_intersection | Operation to allow the use of index_merge in a broader number of cases |
MariaDB 5.3 Optimizer Debugging | MariaDB 5.3's optimizer debugging patch |
optimizer_switch | Server variable for enabling specific optimizations. |
Extended Keys | Optimization using InnoDB/XtraDB key components to generate more efficient execution plans. |
How to Quickly Insert Data Into MariaDB | Techniques for inserting data quickly into MariaDB |
Index Condition Pushdown | Index Condition Pushdown optimization |
Query Limits and Timeouts | Different methods MariaDB provides to limit/timeout a query. |
Aborting Statements that Exceed a Certain Time to Execute | Aborting statements that take longer than a certain time to execute. |
Partition Pruning and Selection | Partition pruning is when the optimizer knows which partitions are relevant for the query |
Big DELETEs | How to DELETE lots of rows from a large table |
Data Sampling: Techniques for Efficiently Finding a Random Row | Fetching random rows from a table (beyond ORDER BY RAND()) |
Data Warehousing High Speed Ingestion | Ingesting lots of data and performance is bottlenecked in the INSERT area. What to do? |
Data Warehousing Summary Tables | Creation and maintenance of summary tables |
Data Warehousing Techniques | Improving performance for data-warehouse-like tables |
FORCE INDEX | Similar to USE INDEX, but tells the optimizer to regard a table scan as very expensive. |
Groupwise Max in MariaDB | Finding the largest row for each group |
GUID/UUID Performance | GUID/UUID performance (type 1 only) |
IGNORE INDEX | Tell the optimizer to not consider a particular index. |
Optimizing for "Latest News"-style Queries | Optimizing the schema and code for "Latest News"-style queries |
Pagination Optimization | Pagination, not with OFFSET, LIMIT |
Pivoting in MariaDB | Pivoting data so a linear list of values with two keys becomes a spreadsheet-like array |
Rollup Unique User Counts | Technique for counting unique users |
Rowid Filtering Optimization | Rowid filtering is an optimization in MariaDB 10.4. Its target use case is ... |
USE INDEX | Find rows in the table using only one of the named indexes. |
© 2019 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/query-optimizations/