Foro de la Comunidad SIU

General => PostgreSQL => Mensaje iniciado por: martin.ibanez en marzo 04, 2020, 05:01:57 pm

Título: Mantenimiento y Optimizacicón de BD
Publicado por: martin.ibanez en marzo 04, 2020, 05:01:57 pm
Buenas tardes.
Quisiera consultar si es correcto y recomendable correr los siguientes comandos para optimizar nuestras bases de los sistemas siu -producción-.

VACUUM FULL VERBOSE ANALYZE  [BDname];
 REINDEX DATABASE [BDname];

Tengo entendido que el vacuum full no hace la reindexación por eso haría el reindex de la BD.

Espero puedan ayudarme/orientarme.
Desde ya muchas gracias!
Saludos.
Título: Re:Mantenimiento y Optimizacicón de BD
Publicado por: nicolasdom en marzo 05, 2020, 08:10:41 am
Hola Martín, siempre es recomendable realizar tareas de mantenimiento sobre la base de datos.
Lo que suele resultar muy útil, es armar un cronograma automatizado según el uso que se le de al sistema. Y ligar esas automatizaciones a franjas horarias adecuadas.
Por ejemplo: El vacuum full te produce un bloqueo de tabla, por lo que mientras este este ejecutando podes notar demoras y limitaciones en el sistema. Puntualmente el full lo que hace es devolver espacio de disco al S.O.
Podes correr los comandos con diferentes periodicidades y lograr muy buenos resultados.
Los comandos serian: analyze / vacuum / vacuum full / reindex.
Los dos primeros,  se podrían correr 1 o mas veces por dia dependiendo de la operaciones sobre el sistema (se aconseja correrlo cuando se produce un cambio de volumen de datos muy grande). Los dos restantes, puden probar de correrlo una vez por semana (tal vez durante el fin de semana, cuando el sistema no se use). Postgres por defecto tiene habilitado el autovacuum. Es muy aconsejable dejarlo habilitado (salvo casos puntuales).

Saludos, Nico
Título: Re:Mantenimiento y Optimizacicón de BD
Publicado por: martin.ibanez en marzo 05, 2020, 08:15:15 am
Buenos días Nico.
Excelente!
Muchas Gracias!
Saludos.