Experimental evaluation of PostgreSQL's query optimizer

From: Viktor Leis <leis(at)in(dot)tum(dot)de>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Experimental evaluation of PostgreSQL's query optimizer
Date: 2015-12-16 09:51:36
Message-ID: 56713428.3070401@in.tum.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

We have recently performed an experimental evaluation of PostgreSQL's
query optimizer. For example, we measured the contributions of
cardinality estimation and the cost model on the overall query
performance. You can download the resulting paper here:
http://www.vldb.org/pvldb/vol9/p204-leis.pdf

Some findings:
1. Perhaps unsurprisingly, we found that cardinality
estimation is the biggest problem in query optimization.
2. The quality of Postgres' cardinality estimates is not generally worse
than that of the major commerical systems.
3. It seems to me that one obvious way to avoid many bad situations
would be to disable nested loop joins when the inner relation is NOT
an index scan.

I hope this will be of interest to some of you.

--

Viktor Leis

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jesper Pedersen 2015-12-16 10:02:39 Re: Additional LWLOCK_STATS statistics
Previous Message amul sul 2015-12-16 08:34:41 Re: Passing initially_valid values instead of !skip_validation to StoreRelCheck() in AddRelationNewConstraints()