Re: proposal : cross-column stats

Josh Berkus <josh@agliodbs.com>

From: Josh Berkus <josh@agliodbs.com>
To: Tomas Vondra <tv@fuzzy.cz>
Cc: pgsql-hackers@postgresql.org
Date: 2010-12-13T21:50:50Z
Lists: pgsql-hackers
Tomas,

>   (a) find out what statistics do we need to collect and how to use it
>   (b) implement a really stupid inefficient solution
>   (c) optimize in iterations, i.e. making it faster, consuming less
>       space etc.

I'll suggest again how to decide *which* columns to cross: whichever
columns are combined in composite indexes.  In version 2, allow the DBA
to specify combinations.

In the unlikely event that correlation could be reduced to a single
float number, it would be conceivable for each column to have an array
of correlation stats for every other column where correlation was
non-random; on most tables (i.e. ones with less than 100 columns) we're
not talking about that much storage space.

The main cost would be the time spent collecting that info ...

-- 
                                  -- Josh Berkus
                                     PostgreSQL Experts Inc.
                                     http://www.pgexperts.com