托管在Amazon aws中的Mysql有时非常慢

时间:2015-07-16 09:56:33

标签: mysql ruby-on-rails amazon-s3

我们有一个数据库,表包含超过200万条记录。数据库托管在Amazon aws服务器中。

有时“select”查询执行时间非常慢。这种缓慢执行背后的原因是什么?

我的一个问题是:

SELECT     O.ORG AS ORG, SUM(ISNULL(E.CODE,0,1)) AS OK 
FROM       ORGANIZATIONS O
           LEFT JOIN EVENTS E ON O.ORG = E.ORG 
                              AND E.TYPE = 'A' 
                              AND E.DATE BETWEEN '2015-07-06' AND '2015-07-12'
GROUP BY   O.ORG

查询说“select UserDID, count(*) from exportusers group by UserDID having count(*) > 1; ”,它永远不会结束。我强行退出查询浏览器。

这是我对选择陈述的解释

executing query...

1 个答案:

答案 0 :(得分:1)

在较大的表上查询速度可能有很多原因。一些:

  • 没有可用于加速查询的索引。
  • 数据库没有处理已加载到内存中的请求所需的索引部分。
  • 请求的操作与其他查询或数据库处理更新竞争。特别是,查询和更新并不总能相处得很好。
  • 你可以在一个提供" bursty"的微实例上运行你的数据库。表现并且有时可能会因为表现不佳而过度表现。鉴于其价格点。
  • 您可以在用于提供Web服务,cron作业,软件开发,电子邮件或其他处理工作的实例上运行数据库。

注意:其中一些项目也可能受到正在使用的数据库引擎的影响。