Re: PoC/WIP: Extended statistics on expressions

Justin Pryzby <pryzby@telsasoft.com>

From: Justin Pryzby <pryzby@telsasoft.com>
To: Dean Rasheed <dean.a.rasheed@gmail.com>
Cc: Tomas Vondra <tomas.vondra@enterprisedb.com>, pgsql-hackers@postgresql.org
Date: 2021-03-24T17:18:16Z
Lists: pgsql-hackers
On Wed, Mar 24, 2021 at 05:15:46PM +0000, Dean Rasheed wrote:
> On Wed, 24 Mar 2021 at 16:48, Tomas Vondra
> <tomas.vondra@enterprisedb.com> wrote:
> >
> > As for the changes proposed in the create_statistics, do we really want
> > to use univariate / multivariate there? Yes, the terms are correct, but
> > I'm not sure how many people looking at CREATE STATISTICS will
> > understand them.
> >
> 
> Hmm, I think "univariate" and "multivariate" are pretty ubiquitous,
> when used to describe statistics. You could use "single-column" and
> "multi-column", but then "column" isn't really right anymore, since it
> might be a column or an expression. I can't think of any other terms
> that fit.

We already use "multivariate", just not in create-statistics.sgml

doc/src/sgml/perform.sgml:    <firstterm>multivariate statistics</firstterm>, which can capture
doc/src/sgml/perform.sgml:    it's impractical to compute multivariate statistics automatically.
doc/src/sgml/planstats.sgml: <sect1 id="multivariate-statistics-examples">
doc/src/sgml/planstats.sgml:   <secondary>multivariate</secondary>
doc/src/sgml/planstats.sgml:    multivariate statistics on the two columns:
doc/src/sgml/planstats.sgml:  <sect2 id="multivariate-ndistinct-counts">
doc/src/sgml/planstats.sgml:    But without multivariate statistics, the estimate for the number of
doc/src/sgml/planstats.sgml:    This section introduces multivariate variant of <acronym>MCV</acronym>
doc/src/sgml/ref/create_statistics.sgml:      and <xref linkend="multivariate-statistics-examples"/>.
doc/src/sgml/release-13.sgml:2020-01-13 [eae056c19] Apply multiple multivariate MCV lists when possible

So I think the answer is for create-statistics to expose that word in a
user-facing way in its reference to multivariate-statistics-examples.

-- 
Justin



Commits

  1. Disallow extended statistics on system columns

  2. Identify simple column references in extended statistics

  3. Don't print extra parens around expressions in extended stats

  4. Change position of field "transformed" in struct CreateStatsStmt.

  5. Add transformed flag to nodes/*funcs.c for CREATE STATISTICS

  6. Stabilize stats_ext test with other collations

  7. Extended statistics on expressions

  8. Reduce duration of stats_ext regression tests

  9. Allow composite types in catalog bootstrap

  10. Convert Typ from array to list in bootstrap

  11. Disallow CREATE STATISTICS on system catalogs