From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Tomas Vondra <tomas.vondra@2ndquadrant.com>
Cc: Tatsuro Yamada <tatsuro.yamada.tf@nttcom.co.jp>
Cc: Julien Rouhaud <rjuju123@gmail.com>
Cc: Pavel Stehule <pavel.stehule@gmail.com>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Subject: Re: list of extended statistics on psql
Date: Mon, 31 Aug 2020 10:28:38 -0400
Message-ID: <20200831142838.GA30609@alvherre.pgsql> (raw)
In-Reply-To: <20200830164818.b4rl4uk6wzfzrsys@development>
On 2020-Aug-30, Tomas Vondra wrote:
> On Sun, Aug 30, 2020 at 12:33:29PM -0400, Alvaro Herrera wrote:
> > I wonder how to report that. Knowing that psql \-commands are not meant
> > for anything other than human consumption, maybe we can use a format()
> > string that says "built: %d bytes" when \dX+ is used (for each stat type),
> > and just "built" when \dX is used. What do people think about this?
>
> I'd use the same approach as \d+, i.e. a separate column with the size.
> Maybe that'd mean too many columns, though.
Are you thinking in one size for all stats, or a combined size? If the
former, then yes it'd be too many columns.
I'm trying to figure out what can the user *do* with that data. Can
they make the sample size smaller/bigger if the stats data is too large?
Can they do that for each individual stats type? If so, it'd make sense
to list each type's size separately.
If we do put each type in its own row -- at least "logical" row, say
string_agg(unnest(array_of_types), '\n') -- then we can put the size of each type
in a separate column with string_agg(unnest(array_of_sizes), '\n')
statname | definition | type | size
----------+-----------------+--------------------------+-----------
someobj | (a, b) FROM tab | n-distinct: built | 2000 bytes
| func-dependencies: built | 4000 bytes
another | (a, c) FROM tab | n-distint: enabled | <null>
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: alvherre@2ndquadrant.com, tomas.vondra@2ndquadrant.com, tatsuro.yamada.tf@nttcom.co.jp, rjuju123@gmail.com, pavel.stehule@gmail.com, pgsql-hackers@lists.postgresql.org
Subject: Re: list of extended statistics on psql
In-Reply-To: <20200831142838.GA30609@alvherre.pgsql>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox