首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MariaDB变得更快了,我却找不到原因?

MariaDB变得更快了,我却找不到原因?
EN

Stack Overflow用户
提问于 2021-02-13 07:35:52
回答 2查看 134关注 0票数 2

我担心我的MariaDB 10.4.12数据库查询执行时间,在不对数据库模式或数据进行任何更新的情况下,执行时间会变得更快。虽然加速总是受欢迎的,但我担心这种加速的根本原因,特别是因为我在过去24小时内没有推出任何更改。这个特定的查询在一夜之间加速了60倍。

我有一个NodeJS web应用程序,它将大型数据集过滤成“报告”页面,通常需要10-12秒才能加载。我的主表有350万行,基本查询涉及许多

、日期比较和文本比较。查询还有微调的空间,但它的效果与它的设计目标相符,我可以忍受10秒的加载时间。不过,今天早上我注意到,我的查询在不到1秒的时间内执行完毕

最近

我的改变。

对应用程序的最新更改是在五天前推出的,这影响了拉入此数据库的数据量。同一服务器上的单独应用程序每隔10分钟访问一个数据集,并将这些行复制到“报告”应用程序与之通信的同一数据库中。在此更新之前,查询平均收集和插入约80,000行,大约需要8-10秒才能将数据完全复制到此数据库中。我在五天前所做的更改将插入的行数平均减少到大约20,000行。

其他线索:

PHPMyAdmin仍然需要10-12秒来运行查询,而MySQL命令行工具只需不到1秒

MariaDB临时目录在7天前更改为更大的分区

24小时前,查询被测试为很慢(10-12秒

在运行相同应用程序且运行相同MySQL实例(相同模式和数据)的预生产服务器上,查询仍然很慢

我目前运行的理论是,大约80,000个插入没有在NodeJS报告的时间范围内执行(插入需要8-10秒),而是在MariaDB临时目录中等待,直到它们完全写入数据库。这表明数据库经常被这些写操作阻塞,将数量减少到约20k可以让数据库插入得更快,从而允许select查询在今天早上运行得更快。

我应该担心这个速度吗?MariaDB能找到一种更快的方法来索引我的数据吗?我是不是疯了?

谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-15 07:44:02

别担心。这种事情可能是由争用(多个数据库客户端并发地使用数据库)和各种其他事情引起的。

)珍视这一刻。性能通常与之相反。)

你可以通过测试正确性来提高你的置信度。检查一些较旧的记录和一些较新的记录,看看它们是否仍然包含良好的数据。

或全表扫描查询,如下所示

代码语言:javascript
复制
SELECT COUNT(*), AVG(some_number_column), MIN(some_text_column) FROM mytable

这将需要一段时间,但它将命中表中的每一行。

你可能不需要这样做,但这是一种双重检查的方法(并告诉你的老板,“我仔细检查了一下。)”

票数 1
EN

Stack Overflow用户

发布于 2021-03-02 01:28:25

10秒,然后1秒。这是“正常的”。

第一个是在没有数据的情况下运行的

已缓存

在RAM中;第二个是所有缓存的。

第三次运行它;它将再次运行1秒。

重新启动MariaDB并再次运行它;这将再次需要10秒。

离开机器很长一段时间,不要碰桌子。它

威力

回到10秒。为此,请查看RAM的大小和

..。也要寻找大型表扫描,它会将所有内容都从缓存中剔除。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66180391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档