Re: Routine maintenance - vacuum, analyse and autovacuum
От | Iain |
---|---|
Тема | Re: Routine maintenance - vacuum, analyse and autovacuum |
Дата | |
Msg-id | 004201c3e931$52120d90$7201a8c0@mst1x5r347kymb обсуждение исходный текст |
Ответ на | Routine maintenance - vacuum, analyse and autovacuum ("Iain" <iain@mst.co.jp>) |
Ответы |
Re: Routine maintenance - vacuum, analyse and autovacuum
|
Список | pgsql-admin |
> Just moving from 7.1 to 7.4 should help, since you can start using plain > vacuum (7.1's vacuum is equivalent to vacuum full IIRC). That old DB server has been running contnuously for 2 years they tell me. Apparently it is also growing despite nightly vacuums and a stable data set size (old data is purged dai.ly and monthly). Nightly delete/insert batches and vacuums are taking longer and longer too. I suspect the vacuum isn't doing what they think - possibly due to the FSM being at the default, and possibly due to ghost processes holding old record versions open. It has been stable nonetheless. Anyway, I'm sure we can do much better in 7.4. > > If I start a VACUUM FULL, is it ok to interrupt it part way through? I mean, > > is a partially completed vacuum full worth anything, and is there any danger > > in routinely killing it? > > It's crash-safe but you may leave your indexes bigger than before :-( OK, that's the kind of thing I wanted to know. Basically, partial runs of vacuum full are not likely to be of any benefit. So, unless you intend to let it run to completion, best to avoid it. Given that our system experiences quite heavy usage during the day, and has a nightly window for batch processing I'm wondering if the best way to go about this is to give auto vacuum a miss and just do a standard vacuum after the batch processes have completed. As long as the FSM is big enough to handle the amount of data changed in 1 day, it would be OK, right? Thanks for the input, (and Bruno too) Iain
В списке pgsql-admin по дате отправления: