Re: really stupid question about checkpointing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 28 Jul 2009, Doug Hunley wrote:

Jul 26 04:45:48  checkpoint complete: wrote 219 buffers (0.1%); 0
transaction log file(s) added, 0 removed, 0 recycled; write=43.634 s,

Each buffer is 8KB here. So this one, the largest of the checkpoints you showed in your sample, is writing out 1.71MB spread out over 43 seconds. It hardly seems worthwhile to further spread out I/O when the total amount of it is so small.

checkpoint_segments             | 128

This is on the high side, and given the low buffer write statistics you're seeing I'd bet that it's checkpoint_timeout you'd need to increase in order spread out checkpoints further. You might get a useful improvement increasing checkpoint_timeout a bit, checkpoint_segments you already have set to an extremely high value--one that is normally only justified if you have a lot more write activity than your logs suggest.

If I were you, I'd cut checkpoint_segments in half, double checkpoint_timeout, and check back again on the logs in a day. That should reduce the amount of disk space wasted by the pg_log overhead while netting you better performance, because right now you're probably only having timed checkpoints rather than segment based ones. If you look at pg_stat_bgwriter you'll probably find that checkpoints_req is close to 0 while checkpoints_timed is not.

--
* Greg Smith gsmith@xxxxxxxxxxxxx http://www.gregsmith.com Baltimore, MD

--
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux