Безопасно ли включать автовакуум для таблицы в PostgreSQL

Я новичок в PostgreSQL(Версия 9.2) Разработка базы данных. Просматривая одну из моих таблиц, увидел опцию под названием autovaccum,
во многих моих таблицах содержится более 20000 строк. Для целей тестирования я изменил одну из этих таблиц, как показано ниже

 ALTER TABLE theTable SET (
 autovacuum_enabled = true
 );
  • Итак, я хотел бы знать преимущества / преимущества / недостатки (если таковые имеются) автопылесосом стол?

1 ответ

Автовакуумный режим включен по умолчанию в текущих версиях Postgres (и некоторое время назад). Как правило, это полезно для производительности и по другим причинам.

Перед автовакуумированием вам нужно было бы явно пропылесосить таблицы самостоятельно (через cronjobs, которые выполняли команды psql для их очистки или тому подобное), чтобы избавиться от мертвых кортежей и т. Д. Postgres некоторое время управлял этим для вас через автовакуум.

В некоторых случаях я имел дело с таблицами, которые имеют огромный отток (то есть, очень высокий уровень вставок и удалений), что было необходимо по-прежнему явно вакуумировать через cron, чтобы поддерживать низкий уровень мертвых кортежей и высокую производительность, потому что autovacuum не ' достаточно быстро, но это нишевый случай.

Дополнительная информация: http://www.postgresql.org/docs/current/static/runtime-config-autovacuum.html

Другие вопросы по тегам