首先说一下,RDBMS中一般采用B+树/B-树和Hash来实现索引,RDBMS根据实际要求选择合适的实现方式,属于内模式的内容。
感谢:@Breeze
B+树索引:具有动态平衡的特点。
1.支持范围查询。
2.等长的访问路径,访问时间根据数据量的变化相对稳定。
3.有明确的查找方向。
Hash索引:具有查找速度快的特点。
1.仅仅能满足”=”,”IN”和”<=>”查询,不能使用范围查询。
2.无法被用来避免数据的排序操作。
3.不能利用部分索引键查询。
4.在任何时候都不能避免表扫描。
5.遇到大量Hash值相等的情况后性能降低。
总结:
数据量大选择B+树索引,数据量少选择Hash索引。