¿Por qué la ejecución de SQL es lenta después del uso largo de GaussDB(DWS)?
Después de utilizar una base de datos durante un período de tiempo, los datos de la tabla aumentan a medida que crecen los servicios, o los datos de la tabla se agregan, eliminan o modifican con frecuencia. Como resultado, se producen tablas de hinchazón y estadísticas inexactas, lo que deteriora el rendimiento de la base de datos.
Se le aconseja realizar periódicamente VACUUM FULL y ANALYZE en tablas que se agregan, eliminan o modifican con frecuencia. Realice las siguientes operaciones:
- De forma predeterminada, se recopilan 100 registros de estadísticas de cada 30,000. Cuando se trata de una gran cantidad de datos, la ejecución de SQL es inestable, lo que puede deberse a un plan de ejecución modificado. En este caso, es necesario ajustar la frecuencia de muestreo para las estadísticas. Puede ejecutar set default_statistics_target para aumentar la frecuencia de muestreo, lo que ayuda al optimizador a generar el plan óptimo.
- Realice ANALYZE de nuevo. Para obtener más información, consulte ANALYZE | ANALYSE.
Para comprobar si los fragmentos de disco afectan al rendimiento de la base de datos, utilice la siguiente función:
select * from pgxc_get_stat_dirty_tables(30,100000);