Re: WAL log performance/efficiency question

From: Heikki Linnakangas <heikki(at)enterprisedb(dot)com>
To: kadams(at)mxlogic(dot)com
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: WAL log performance/efficiency question
Date: 2007-05-17 14:23:00
Message-ID: 464C6544.9070104@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Keaton Adams wrote:
> Using an 8K data page:
>
> 8K data page (8192 bytes)
> Less page header and row overhead leaves ~8000 bytes
> At 100 bytes per row = ~80 rows/page
> Rows loaded: 250,000 / 80 = 3125 data pages * 8192 = 25,600,000 bytes /
> 1048576 = ~ 24.4 MB of data page space.

That's not accurate. There's 32 bytes of overhead per row, and that
gives you just 61 tuples per page. Anyhow, I'd suggest measuring the
real table size with pg_relpages function (from contrib/pgstattuple) or
from pg_class.relpages column (after ANALYZE).

> We are running on PostgreSQL 8.1.4 and are planning to move to 8.3 when
> it becomes available. Are there space utilization/performance
> improvements in WAL logging in the upcoming release?

One big change in 8.3 is that COPY on a table that's been created or
truncated in the same transaction doesn't need to write WAL at all, if
WAL archiving isn't enabled.

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Tom Lane 2007-05-17 14:55:52 Re: WAL log performance/efficiency question
Previous Message Keaton Adams 2007-05-17 14:04:30 WAL log performance/efficiency question