Thread: What's The Difference Between VACUUM and VACUUM ANALYZE?
I am trying to follow a message thread. One guy says we should be running vacuum analyze daily and the other says we should be running vacuum multiple times a day. I have tried looking for what a vacuum analyze is to help me understand but no luck.
--
Yudhvir Singh Sidhu
408 375 3134 cell
--
Yudhvir Singh Sidhu
408 375 3134 cell
On Tue, 8 May 2007, Y Sidhu wrote: > I am trying to follow a message thread. One guy says we should be running > vacuum analyze daily and the other says we should be running vacuum multiple > times a day. I have tried looking for what a vacuum analyze is to help me > understand but no luck. vaccum frees tuples that are no longer refrenced vaccum analyse does the same thing, but then does some additional information gathering about what data is in the tables Postgres uses this data to adjust it's estimates of how long various things will take (sequential scan, etc). if these estimates are off by a huge amount (especially if you have never done a vaccum analyse after loading your table) then it's very likely that postgres will be slow becouse it's doing expensive operations that it thinks are cheap. David Lang
Y Sidhu escribió: > I am trying to follow a message thread. One guy says we should be running > vacuum analyze daily and the other says we should be running vacuum multiple > times a day. I have tried looking for what a vacuum analyze is to help me > understand but no luck. VACUUM ANALYZE is like VACUUM, except that it also runs an ANALYZE afterwards. -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.
On Tue, May 08, 2007 at 05:52:13PM -0400, Alvaro Herrera wrote: >> I am trying to follow a message thread. One guy says we should be running >> vacuum analyze daily and the other says we should be running vacuum multiple >> times a day. I have tried looking for what a vacuum analyze is to help me >> understand but no luck. > VACUUM ANALYZE is like VACUUM, except that it also runs an ANALYZE > afterwards. Shoot me if I'm wrong here, but doesn't VACUUM ANALYZE check _all_ tuples, as compared to the random selection employed by ANALYZE? /* Steinar */ -- Homepage: http://www.sesse.net/
Steinar H. Gunderson wrote: > On Tue, May 08, 2007 at 05:52:13PM -0400, Alvaro Herrera wrote: > >> I am trying to follow a message thread. One guy says we should be running > >> vacuum analyze daily and the other says we should be running vacuum multiple > >> times a day. I have tried looking for what a vacuum analyze is to help me > >> understand but no luck. > > VACUUM ANALYZE is like VACUUM, except that it also runs an ANALYZE > > afterwards. > > Shoot me if I'm wrong here, but doesn't VACUUM ANALYZE check _all_ tuples, > as compared to the random selection employed by ANALYZE? You are wrong, but it won't be me the one to shoot you. There have been noises towards making the ANALYZE portion use the same scan that VACUUM already does, but nobody has written the code (it would be useful for some kinds of stats). -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support
"Alvaro Herrera" <alvherre@commandprompt.com> writes: > Steinar H. Gunderson wrote: > >> Shoot me if I'm wrong here, but doesn't VACUUM ANALYZE check _all_ tuples, >> as compared to the random selection employed by ANALYZE? > > You are wrong, but it won't be me the one to shoot you. > > There have been noises towards making the ANALYZE portion use the same > scan that VACUUM already does, but nobody has written the code (it would > be useful for some kinds of stats). I think it does for the count of total records in the table. But not for the rest of the stats. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com