fns*_*jdb 7 mysql performance amazon-web-services amazon-rds
我一直致力于性能敏感的功能。我一直在本地开发,在我的 Mac 上运行 MySQL 服务器。一键查询在我的机器上运行时间约为1.2秒,在我可以接受的范围内。一切都运行得足够快,因此我决定将其转移到 AWS RDS Aurora 数据库上,以便我可以开始在生产中使用新系统。
但是,一旦我开始连接到 RDS 而不是本地服务器,查询的时间就开始增加两倍以上。这是比较实际查询运行所需的时间,不受网络速度的影响。我就是这样测量的。
我已将 RDS 使用的实例升级为db.r3.4xlarge
,该实例具有 122 GB RAM、Intel Xeon E5-2670 v2 (Ivy Bridge) 和 16 个 vCPU。我的本地机器有 32 GB 内存和 4 GHz Intel Core i7。
我对这些东西了解不多,但无论您查看什么指标,云中的数据库似乎都在更强大的硬件上运行。
主要问题:我还可以研究什么才能使云数据库像本地计算机一样快速运行?
看似合理但事实并非如此的事情:
explain
在查询开始时使用会在两个数据库上产生完全相同的索引计划。可能是因素,但我真的不知道:
我真的有点不知所措。如果有人有任何想法或建议,我们将不胜感激!
我采纳了 Tim 在评论中的建议并注册了 AWS Support,这样我就可以与某人讨论这个问题。解释是:
Aurora 是针对高并发工作负载而构建和定制的,单线程不太可能产生令人印象深刻的结果,因为基准测试中的并发级别也需要验证。
因此,如果我们正在进行 1 个查询,Aurora 的执行速度极不可能与您的本地计算机一样快
又来回聊了一会儿,然后我用 RDS MySQL 而不是 Aurora 重试,结果成功了!几乎和我的本地机器一样快,而且硬件便宜得多。
归档时间: |
|
查看次数: |
6736 次 |
最近记录: |