Welcome to D
SIGMOD 2003
<<< = SIGMOD'03 Pa>>>
PODS 2003
SIGMOD-RECOR
ADBIS
CIDR 2003
CIKM 2003
DASFAA 2003
Data Enginee
DEBS
DMKD 2003
DOLAP 2003
DPDJ 2003
ER
GIS 2003
Hypertext 20
ICDE 2003
ICDM 2003
ICDT 2003
JCDL 2003
KRDB 2003
MIR 2003
MIS 2003
MMDB 2003
RIDE 2003
SBBD 2003
SIGIR 2003
SIGIR-FORUM
SIGKDD 2003
SIGKDD-EXP
SSDBM 2003
TIME 2003
TODS
VLDB 2003
VLDB Journal
WIDM 2003

Estimating Compilation Time of a Query Optimizer


Ihab F. Ilyas, Jun Rao, Guy M. Lohman, Dengfeng Gao, and Eileen Lin

  View Paper (PDF)  

Return to Query Processing


Abstract

A query optimizer compares alternative plans in its search space to nd the best plan for a given query. Depending on the search space and the enumeration algorithm, optimizers vary in their compilation time and the quality of the execution plan they can generate. This paper describes a compilation time estimator that provides a quantified estimate of the optimizer compilation time for a given query. Such an estimator is useful for automatically choosing the right level of optimization in commercial database systems. In addition, compilation time estimates can be quite helpful for mid-query reoptimization, for monitoring the progress of workload analysis tools where a large number queries need to be compiled (but not executed), and for judicious design and tuning of an optimizer. Previous attempts to estimate optimizer compilation complexity used the number of possible binary joins as the metric and overlooked the fact that each join often translates into a different number of join plans because of the presence of "physical" properties. We use the number of plans (instead of joins) to estimate query compilation time, and employ two novel ideas: (1) reusing an optimizer's join enumerator to obtain actual number of joins, but bypassing plan generation to save estimation overhead; (2) maintaining a small number of "interesting" properties to facilitate plan counting. We prototyped our approach in a commercial database system and our experimental results show that we can achieve good compilation time estimates (less than 30% error, on average) for complex real queries, using a small fraction (within 3%) of the actual compilation time.

BIBTEX


@inproceedings       {DBLP:conf/sigmod/IlyasRLGL03,
  author    = {Ihab F. Ilyas and
                Jun Rao and
                Guy M. Lohman and
                Dengfeng Gao and
                Eileen Lin},
   booktitle = {SIGMOD Conference},
   title     = {Estimating Compilation Time of a Query Optimizer.},
   pages     = {373-384},
   year      = {2003},
   url       = {db/conf/sigmod/sigmod2003.html#IlyasRLGL03},
   ee        = {http://www.acm.org/sigs/sigmod/sigmod03/eproceedings/papers/r14p02.pdf},
   crossref  = {conf/sigmod/2003},
   bibsource = {DBLP, http://dblp.uni-trier.de} 
}



©2004 Association for Computing Machinery