Re: [SOLVED?] Re: Disk wait problem... not hardware...

From: "Peter J(dot) Holzer" <hjp-pgsql(at)hjp(dot)at>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: [SOLVED?] Re: Disk wait problem... not hardware...
Date: 2023-10-29 15:16:05
Message-ID: 20231029151605.kijo6gumeen7jj26@hjp.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2023-10-29 09:21:46 -0400, pf(at)pfortin(dot)com wrote:
> These are all static tables. Does PG maintain a table row count so as to
> avoid having to count each time?

No. To count the rows in a table, Postgres has to actually read the
whole table (or an index, if a suitable index (e.g. a primary key)
exists).

However, the table statistics contain an estimate for the number of
rows:

hjp=> select schemaname, relname, n_live_tup from pg_stat_user_tables order by 3 desc;
╔════════════╤═══════════════════════════╤════════════╗
║ schemaname │ relname │ n_live_tup ║
╟────────────┼───────────────────────────┼────────────╢
║ public │ ncvhis_2016_12_03 │ 9999977 ║
║ public │ random_test │ 1000000 ║
║ public │ beislindex │ 351 ║
║ public │ delivery │ 6 ║
...

This is an estimate, not the actual count, so it might be wrong
(sometimes very wrong), but accessing it is fast and it might be good
enough for your purposes.

> WB is setup to:
> * autoload table row count
> * autoload table data (restricted with LIMIT)

Maybe WB can be set up to get n_live_tup instead of the real row count?

hp

--
_ | Peter J. Holzer | Story must make more sense than reality.
|_|_) | |
| | | hjp(at)hjp(dot)at | -- Charles Stross, "Creative writing
__/ | http://www.hjp.at/ | challenge!"

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message pf 2023-10-29 15:24:20 Re: Disk wait problem... may not be hardware...
Previous Message Paul Förster 2023-10-29 15:15:37 Re: pg_checksums?