mysql - 220亿条记录选择查询的Mysql RAM要求
问题描述
我有一张表,预计每年有 220 亿条记录。如果每条记录花费大约 4 KB 的数据,那么 RAM 需求是多少。
预计同一张表将有大约 8 TB 的存储空间。
[更新] 不涉及连接查询。我只需要有效地执行选择查询。
解决方案
我发现,对于 x 中的 x 条记录需要多少 RAM,没有一般的经验法则MYSQL
。
您需要查看的第一个因素是数据库本身的设计。这是所有因素中影响最大的因素之一。如果您的数据库设计不佳,则向其投入 RAM 并不能解决您的问题。
另一个因素是这些数据将如何被访问,即如果一个特定的行被 100 人访问,那么你可以像只使用查询缓存一样使用SELECT * FROM table where column = value
少量数据。RAM
MAY
保留整个数据库以允许更快地读取它(取决于数据库的总大小)(并非总是)是一个好主意RAM
。即,如果您的数据库大小为 100GB,那么 128GB 的 RAM 应该足以处理任何开销,例如操作系统和其他因素。
推荐阅读
- python - 如何返回列表列表中的值计数
- bokeh - 将自制模块导入散景--serve myapp.py
- css - vuetify视差流体模板问题
- c# - MailUp.Sdk NullReferenceException
- javascript - 谷歌图表中每个条的颜色不同
- macos - Intershop 管道编辑器错误“org/eclipse/xtend/typesystem/MetaModel”
- php - 为什么在 Laravel Eloquent Builder 中检查了范围的存在,尽管它只是被克隆了
- java - 我正在尝试使用 Java 中的 svg 图书馆画一条线,但我无法创建 OMSVGPathSegList
- postgresql - PostgreSQL:在触发器的函数中检查 NEW 和 OLD
- scala - 列表上的模式匹配以检查是否为空