繁体   English   中英

RDS实例CPU为99%

[英]The RDS instance CPU is 99%

需要很长时间才能在 AWS RDS 中执行的查询

一个查询花费了大约 3 分钟的时间。 数据库托管在具有 2cpu 和 4GB 内存(t2.medium)的 AWS RDS 中

查询样本是

select  DATE_FORMAT(log_date, '%d-%m-%Y') as 'Day',
        sum(people_count) as 'count'"
    from  avg_people_pass
    where  log_date >= #startDate
      and  log_date <= #endDate 

感谢您的帮助,因为它落后于所有解决方案。

select DATE_FORMAT(log_date, '%d-%m-%Y') as 'Day',sum(people_count) as 'count' from avg_people_pass where log_date >= #startDate and log_date <= #endDate

我猜您没有在此表上配置索引,因此您正在进行全表扫描。 3 分钟的执行时间意味着一个设计糟糕的大表,没有索引、键或优化。

跑步时会发生什么

explain select DATE_FORMAT(log_date, '%d-%m-%Y') as 'Day',sum(people_count) as 'count' from avg_people_pass where log_date >= #startDate and log_date <= #endDate

查询计划将有助于缩小性能问题的范围。

这应该使它运行得像以往一样快,假设您还没有在此列上的索引:

CREATE INDEX idx1 ON avg_people_pass (log_date);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM