关于tidb_auto_analyze_ratio参数的优化

关于tidb_auto_analyze_ratio参数设置问题
在官方文档中


在配置页面中最小值 可以配置为 0

而在 https://docs.pingcap.com/zh/tidb/stable/sql-faq#在-tidb-中-auto-analyze-的触发策略是怎样的

在故障诊断,故障场景一节中 确有如下配置建议

希望优化一下,给出更合理的参数配置建议

1 个赞

这种参数,只能根据自身的系统情况,在使用中不断优化,最终得到一个较合理的设置。

1 个赞

那是要看场景的,默认配置0.5 ,是说当表中超过 50% 的行被修改时,触发自动 ANALYZE 更新。故障里面说的话,因为你 analyze 不够及时,所以把这个阈值调低一点,让他更好被触发。

1 个赞

如果没有问题,就不用动那个参数

这几个参数我倒是明白是什么意思,看我理解的对不?图一的意思是这个参数值的区间是0到1,图二里文档说这个参数最小值0.3不能配置成比0.3 还小的值 ,图三是配置为0.2 同一份文档中是不是有点乱呀?

@heiwandou 图3是这个文档?
https://docs.pingcap.com/zh/tidb/stable/troubleshoot-cpu-issues#tidb-执行计划不对导致延迟增高

https://docs.pingcap.com/zh/tidb/dev/sql-faq#在-tidb-中-auto-analyze-的触发策略是怎样的

为了保险起见,在开启 auto analyze 的时候,tidb_auto_analyze_ratio 的最小值为 0.3。

这句话有待商榷?

https://docs.pingcap.com/zh/tidb/stable/release-3.0.8#tidb
移除 minAutoAnalyzeRatio 约束使自动 analyze 更及时 #14015

const (
	minAutoAnalyzeRatio = 0.3
)

0.3 的限制从 TiDB v3.0.8 移除了?

:+1:

没有深入研究过,没有管过这个参数的值,测试环境使用好像也没有问题

如果表经常出现执行计划不稳定的情况,感觉配合crontab定期收集统计信息回好一点

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。