首页 > 解决方案 > 220亿条记录选择查询的Mysql RAM要求

问题描述

我有一张表,预计每年有 220 亿条记录。如果每条记录花费大约 4 KB 的数据,那么 RAM 需求是多少。

预计同一张表将有大约 8 TB 的存储空间。

[更新] 不涉及连接查询。我只需要有效地执行选择查询。

标签: mysql

解决方案


我发现,对于 x 中的 x 条记录需要多少 RAM,没有一般的经验法则MYSQL

您需要查看的第一个因素是数据库本身的设计。这是所有因素中影响最大的因素之一。如果您的数据库设计不佳,则向其投入 RAM 并不能解决您的问题。

另一个因素是这些数据将如何被访问,即如果一个特定的行被 100 人访问,那么你可以像只使用查询缓存一样使用SELECT * FROM table where column = value少量数据。RAM

MAY保留整个数据库以允许更快地读取它(取决于数据库的总大小)(并非总是)是一个好主意RAM。即,如果您的数据库大小为 100GB,那么 128GB 的​​ RAM 应该足以处理任何开销,例如操作系统和其他因素。


推荐阅读