VACUUM reclaims dead tuples for reuse without locking the table heavily. VACUUM FULL rewrites the table to physically shrink it, but requires an exclusive lock and can be slow. Use FULL sparingly.