1

我在悉尼地区创建了一个Amazon Aurora实例,并在其上恢复了我的RDS快照。我正在对其中一个大约有6k条记录的表执行一个简单的查询,返回的结果非常慢。我没有更改默认参数组中的任何参数,该参数链接到我的实例。此查询在我的现有RDS实例上以0.200秒的相同参数完美运行,并返回快速响应。但是相同的查询在Aurora上需要大约0.350秒。我的查询计划(EXPLAIN)显示我没有问题。它使用PRIMARY索引来获得结果。所以,我不明白,为什么这么慢?我需要配置参数吗?因为他们声称Aurora比RDS快5倍。我如何检查? 谢谢。Amazon Aurora与Amazon RDS相比较慢

+1

您是否比单个查询的单次运行更彻底地进行了基准测试?还要注意的是,他们声称(在文档中更深入 - 营销副本有点不负责任)Aurora的**速度提高了5倍**,吞吐量** **,而不是单个查询。 – ceejayoz

+0

每个机器上SELECT 1;'花费多少时间?这可能表明他们有多远。你在哪里(在世界上)? –

+0

@RickJames,我来自印度,我的实例位于澳大利亚悉尼。距离是否等于这么长的延迟?目前如果我在我的本地mysql数据库上运行查询,它会在72毫秒内返回结果,来自RDS(新加坡)的相同查询返回结果为172毫秒。意味着大约100毫秒可能是距离延迟。我对吗? –

回答

2

Aurora也是一种基于MySQL的Amazon RDS。 您是如何将RDS(哪一个?)的数据从RDS迁移到Aurora?您是否使用Amazon DMS将Mysql/MariaDB/Aurora RDS之间的数据迁移到Aurora RDS?你说你恢复了一个快照 - (从非Aurora快照恢复Aurora是不可能的)。

当我通过Amazon DMS从其他非RDS MariaDB迁移数据时,我遇到了MariaDB和Aurora的性能问题。这非常慢! MariaDB和RDS DM之间的迁移过程没有任何问题,没有错误/警告日志,但它的工作速度非常慢,几乎所有的查询花费的时间比使用MariaDB的标准(小得多)EC2实例多100倍。我试图增加IOPS,调整RDS大小,更改参数等等。没有任何帮助!

我的解决方案是不使用DMS迁移(这在表创建模式中改变了很多)。我使用MariaDB在EC2实例上做了一个mysqldump,并将其恢复到新的MariaDB RDS中。一切都开始按预期工作,并取得良好的表现。

+0

我们是否应该使用DMS从Aurora迁移到MySQL RDS,而不需要停机或使用快照。因为我的数据库非常庞大(大约16GB),并且需要花费很多时间使用mysqldump进行下载。我不想停机 –