在阅读了该网站有关索引的问答后,我想到了一个问题。
如果使用的是时间维度表,而粒度级别较低则为日。索引应该放在哪里?
Randy Melder的问题是:“索引”在RDBMS上意味着什么?说过 :
将索引视为“目录” ...即文件位置的指针的有序列表,又称偏移量
就时间维度而言,如果时间表存储了唯一年份的全天,则大多数数据研究可能针对特定的一天,特定的一周,特定的月份或特定的季度进行。
我的问题是:是否应该为所有这些字段设置索引?
Day被认为是唯一的,因此对于这一天,我完全理解索引的使用。但是一个星期id将发生7次,一个月id将发生30/31次,一个季度id将或多或少发生120次。
- 还应该为那些字段添加索引吗?
- 还会有用吗?
我问你,因为在同一问题上,大卫·斯皮利特(David Spillett)说:
当然,添加过多的索引可能是一个糟糕的优化,因为用于存储索引的额外空间(如果您的DB看到许多写操作,则还有用于维护索引的IO负载)可能比最优读取请求稍差一些,这是一个更糟糕的问题。 ,所以不要过度操作。
那么,对于时间维度情况,最好的考虑因素是什么?