mysql 什么是最快的MariaDB存储引擎读取?

g6baxovj  于 2023-11-16  发布在  Mysql
关注(0)|答案(1)|浏览(142)

我在MariaDB数据库中有一个表,它有1.25亿行,用于存储自动数据分析的结果。每天随机写入几千行。表上的读取一天发生几次,可能会返回几千或几百万个结果。读取性能是最重要的,因为这发生在用户面前。
目前我使用MyISAM,它通常工作得很好,除了当结果集超过几千行时。我对用于查询的列有索引。查询缓存有帮助,但很少有用户会多次执行相同的搜索。
我相信我可以使用许多优化技术(我也很想听到这些!),但最基本的问题是,对于这种大小和这种使用模式的表,什么是最好的MariaDB存储引擎?

bakd9h0s

bakd9h0s1#

引擎之间的索引实现是不同的,足以防止在没有看到实际查询和SHOW CREATE TABLE的情况下回答您的问题。
InnoDB是几乎所有用例中最快的引擎。你有多少RAM?你的表有多大?我想知道的一部分是你的查询是CPU绑定的还是I/O绑定的。
根据查询的详细信息,利用InnoDB的“集群”PRIMARY KEY可以给予更大的提升。这在MyISAM中并不直接可用。
你对这几千或几百万行做了什么?汇总?如果是这样,那么有一种方法可以使查询的运行速度提高10倍:https://mysql.rjweb.org/doc.php/summarytables

相关问题