  The need for accurate SQL progress estimation in the context of decision
support administration has led to a number of techniques proposed for this
task. Unfortunately, no single one of these progress estimators behaves
robustly across the variety of SQL queries encountered in practice, meaning
that each technique performs poorly for a significant fraction of queries. This
paper proposes a novel estimator selection framework that uses a statistical
model to characterize the sets of conditions under which certain estimators
outperform others, leading to a significant increase in estimation robustness.
The generality of this framework also enables us to add a number of novel
"special purpose" estimators which increase accuracy further. Most importantly,
the resulting model generalizes well to queries very different from the ones
used to train it. We validate our findings using a large number of industrial
real-life and benchmark workloads.
