VACUUM освобождает место от мертвых строк (удаленных или старых версий при MVCC). Обычно не возвращает место ОС, но помечает для переиспользования. VACUUM FULL переписывает таблицу и возвращает место, но блокирует таблицу. autovacuum запускается по расписанию. Без вакуума растет bloat и падает производительность. В Go приложение не вызывает VACUUM напрямую - это задача администрирования.
VACUUM ANALYZE users;
VACUUM FULL orders; -- только при необходимости, блокировка