Sobes.tech
Junior — Middle

¿Puede explicar cómo funciona el comando VACUUM en PostgreSQL y para qué se utiliza?

sobes.tech AI

Respuesta de la IA

El comando VACUUM en PostgreSQL se utiliza para limpiar la base de datos de filas 'muertas' que permanecen después de operaciones de actualización y eliminación. Esto ayuda a liberar espacio y prevenir el crecimiento de las tablas.

Tareas principales de VACUUM:

  • Eliminar versiones antiguas de filas (tuplas muertas) para que no ocupen espacio.
  • Actualizar las estadísticas para el planificador de consultas (si se usa VACUUM ANALYZE).
  • Prevenir el desbordamiento del ID de transacción (wraparound).

Sin ejecutar VACUUM regularmente, el rendimiento de la base puede deteriorarse y el tamaño de las tablas puede crecer.

Ejemplo de llamada en SQL:

VACUUM;
VACUUM ANALYZE;

En Go, puedes ejecutar este comando a través del controlador de base de datos, por ejemplo:

_, err := db.Exec("VACUUM")
if err != nil {
    log.Fatal(err)
}