我有一个包含 70000 行的表,计划在几个月内慢慢增长到 140000 左右。
我有 4 个低基数列,其中包含 0/1 值,如 FALSE/TRUE。我的表开销(优化后)为 28 MB,表大小为 6 MB。我为这 4 列添加了 4 个单独的简单索引。我的开销降至 20 MB。
我知道索引低基数列(其中有很多行,但很少有不同的值)对查询的性能几乎没有影响,但我的开销下降了。如果没有这些索引,开销就会增加。我应该保持较低的开销还是应该保留可能毫无意义的索引?哪个对性能影响最大?
PS Table 主要以可变负载读取,从每分钟数千个查询到每天数百个查询不等。写入主要是更新这 4 个布尔列或 1 个时间戳列。