即使阈值到达了设定的百分比,Redshift ANALYZE没有自动执行

0

【以下的问题经过翻译处理】 我有一个包含1300万行数据的Redshift表格,根据svv_table_info,它是100%的事实统计数据关闭(statsoff)。查阅Redshift的文档,理解analyze应该会自动在后台运行。然而,我找不到任何关于是否需要启用它(或者它是否可能被意外关闭)的信息。

根据STL_ANALYZE表格,似乎已经执行了一次ANALYZE(可能是在我复制原始数据的时候执行的),但自那以后就再也没有运行过。STL_ANALYZE表格表明analyze门槛为90%(我也没有找到在哪里可以降低它),但是由于statoff为100%,高阈值不应该是一个问题。

我知道我可以手动运行analyze,但问题是,是否可以在某个地方启用它以自动运行?

补充:参数组中的auto_analyze设置为true

profile picture
专家
已提问 5 个月前8 查看次数
1 回答
0

【以下的回答经过翻译处理】 在需要分析表格和后台自动分析进程识别并执行分析命令之间存在延迟,这是因为自动分析是一个后台进程。

此外,自动分析不会与用户活动竞争,因此如果您的Redshift正处于忙碌中,它将等待足够的空闲资源来执行,以防止干扰用户的活动。

如果您在ETL流水线中使用INSERT语句加载大量数据,则可能希望考虑在那里添加ANALYZE命令。用户将获得最新的统计数据,自动分析运行时将跳过不需要分析的表格。

更多信息请参见:https://docs.aws.amazon.com/zh_cn/redshift/latest/dg/t_Analyzing_tables.html

profile picture
专家
已回答 5 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则