复合索引设计建议
现在可以给出是否建单字段索引还是复合索引,以及复合索引的设计建议了。
1.
分析SQL语句中的约束条件字段
2.
如果约束条件字段比较固定,则优先考虑创建针对多字段的普通B*树复合索引。例如同时涉及到多个字段的条件,则可以考虑建立一个复合索引
3.
如果单个字段是主键或唯一字段,或者可选性非常高的字段,尽管约束条件字段比较固定,也不一定要建成复合索引,可建成单字段索引,降低复合索引开销。
4.
在复合索引设计中,需首先考虑复合索引第一个设计原则:复合索引的前缀性(prefixing)。即SQL语句中,只有复合索引的第一个字段作为约束条件,该复合索引才会启用。
5.
在复合索引设计中,其次应考虑复合索引的可选性(Selectivity或Cardinality)。即按可选性高低,进行复合索引字段的排序。
6.
如果条件涉及的字段不固定,组合比较灵活,则分别为各字段建立索引
7.
如果是多表连接SQL语句,注意是否可以在被驱动表(drived table)的连接字段与该表的其它约束条件字段上,创建复合索引。
8.
通过多种SQL分析工具,分析执行计划并以量化形式评估效果。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27064837/viewspace-746594/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/27064837/viewspace-746594/