亚马逊Aurora相对于亚马逊RDS较慢。

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

1
你是否对这个进行了比单次查询更彻底的基准测试?还要注意,他们声称(在文档中更深入的地方 - 营销文案有点不负责任)Aurora比吞吐量高达5倍,而不是单个查询。 - ceejayoz
“SELECT 1;” 在每台机器上需要多长时间?这可能可以衡量它们之间的距离。您位于哪个地区(世界范围内)? - Rick James
@RickJames,我来自印度,我的实例位于澳大利亚的悉尼。距离是否会对延迟产生影响?目前,如果我在本地mysql数据库上运行查询,它会在72毫秒内返回结果,而从RDS(新加坡)运行相同的查询则需要172毫秒。这意味着大约有100毫秒的距离延迟。我是正确的吗? - Manish Sapkal
距离很重要,因为电子通过导线的速度会产生延迟。世界上相对的两端至少相隔200毫秒。我不知道你的链接有多直。澳大利亚端点可能在海洋中,并且必须绕过该国的一半(不是笔直的)。它甚至可能通过日本从印度到悉尼。 - Rick James
@ManishSapkal 你好,我也有迁移MySQL RDS到Aurora的问题。我建议你修改问题标题为“当EXPLAIN结果相同时,如何区分MySQL和Aurora之间的解释差异?” - hiropon
2个回答

3

Aurora是基于MySQL的Amazon 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中。一切都开始按预期运行,并且性能良好。


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

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接