加载中...

自适应哈希索引(Adaptive Hash Index,AHI)是 InnoDB 的一项内部优化:引擎监控 B+ 树索引的访问模式,当发现某些索引值被以固定模式频繁等值查询时,自动在缓冲池中为这些热点页建立哈希索引,把多层 B+ 树遍历缩短为一次哈希查找。
AHI 完全由引擎自动管理,用户无法手工创建,只能通过参数 innodb_adaptive_hash_index 开关。哈希键是索引键值的前缀,值指向缓冲池中的页位置。它只加速等值查询,对范围查询无效。
在读多写少、等值查询集中的场景下,AHI 能带来可观加速。但它引入了额外的内存开销与分区锁(latch)竞争:高并发写入或大表扫描时,AHI 的维护和失效可能成为瓶颈,不少大型部署选择关闭它。
可通过 SHOW ENGINE INNODB STATUS 中的 hash searches 与 non-hash searches 比例评估其收益。

登录 后参与讨论
暂无讨论,来发表第一条评论吧