MySQL Autopilot automates many of the most important and often challenging aspects of achieving high query performance at scale, including provisioning, loading data, query execution, and failure handling. It uses advanced techniques to sample data, collect statistics on data and queries, and build machine learning models to model memory usage, network load, and execution time. These machine learning models are then used by MySQL Autopilot to execute its core capabilities. MySQL Autopilot makes the HeatWave query optimizer increasingly intelligent as more queries are executed, resulting in continually improving system performance.
Autopilot focuses on four aspects of the HeatWave service life cycle:
Estimates the number of HeatWave nodes required for a workload by sampling the data, which means that manual cluster size estimations are not necessary. See HeatWave Cluster Size Estimates.
Auto Parallel Load
Optimizes load time and memory usage by predicting the optimal degree of parallelism for each table loaded into HeatWave. See Section 4.1, “Auto Parallel Load”.
Determines the optimal representation of columns loaded into HeatWave by analyzing HeatWave query history, which improves query performance and minimizes the required cluster size. See Section 8.1, “Auto Encoding”.
Auto Data Placement
Recommends how tables should be partitioned in memory to achieve the best query performance, and estimates the expected performance improvement. See Section 8.2, “Auto Data Placement”.
Auto Query Plan Improvement
Uses statistics from previously executed queries to improve future query execution plans. See Auto Query Plan Improvement.
Auto Query Time Estimation
Estimates query execution time, allowing you to determine how a query might perform without having to run the query. Runtime estimates are provided by the Advisor Query Insights feature. See Section 8.3, “Query Insights”.
Auto Change Propagation
Intelligently determines the optimal time when changes in MySQL DB System should be propagated to the HeatWave Storage Layer.
Identifies short running queries and prioritizes them over long running queries in an intelligent way to reduce overall query execution wait times. See Auto Scheduling.
Auto Error Recovery
Provisions new HeatWave nodes and reloads data from the HeatWave storage layer if one or more HeatWave nodes becomes unresponsive due to a software or hardware failure. See HeatWave Cluster Failure and Recovery.