我现在在 Python 中缓存了以下数据:
id timestamp data-string
数据字符串大小约为 87 字节。以最佳方式将其存储在 python 中(使用 dict 并在带有分隔符的 data-str 前添加时间戳),每个条目的 RAM 成本约为 198 字节。这对于我需要的缓存大小来说是相当大的。
我想尝试在 MySQL 表中存储相同的内容,看看是否可以节省 RAM 空间。这样做时,我将其存储为:
id timestamp data-string
4B 4B
<---- PK ---->
我知道 MySQL 会将 InnoDB 表的索引(这就是我现在拥有的)加载到 RAM 中。因此,id(唯一)、时间戳和指向数据字符串的指针将驻留在 RAM 中。
如何仅为这个新表计算 MySQL 的 B+Tree 的完整 RAM 使用量(即包括元数据)?