1、哈希索引采用的是哈希算法,把键值换算成新的哈希值,检索时不需要类似B+树那样从根节点到叶子节点逐级查找,只需要一次哈希算法即可立即定位到相应的位置,速度非常快。
2、本质上就是把键值换算成新的哈希值,根据这个哈希值来定位。
3、哈希值的局限:
第一,哈希索引没有办法理由索引完成排序。
第二,不支持最左匹配原则。
第三,在大量重复键值情况下,哈希索引的效率也是极低的(哈希碰撞问题)。第四,不支持范围查询。
InnoDB支持哈希索引吗?
主流是用的B+树索引,对于哈希索引InnoDB是自适应哈希索引的(hash索引的创建由InnoDB存储引擎自动优化创建)