- Newest
- Most votes
- Most comments
There is a delay between the time in which a table needs to be analyzed and the time in which the auto analyze background process identifies this and executes the analyze command. This is because auto analyze is a background process.
Additionally, auto analyze doesn't compete with user activity so if your Redshift is busy, it will wait until there are enough free resources to execute in order to prevent interfering with users' activities.
If you are loading a lot of data with an INSERT statement in an ETL pipeline, then you may want to consider adding the ANALYZE command there. Users will get up to date statistics and when auto analyze does run, it will skip tables that don't need analyze to run.
More information here: https://docs.aws.amazon.com/redshift/latest/dg/t_Analyzing_tables.html
You should check SVL_AUTO_WORKER_ACTION to see if you find status
reported for this table.
Thanks, this shows that the cluster is indeed busy. In combination with the previous answer, my issue should be solved. Thank you both!
Relevant content
- Accepted Answerasked 10 months ago
- Accepted Answerasked a year ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 3 days ago
Thank you, as you advised I added running it manually at the end of the ETL pipeline.