Innodb三大特性之自适应哈希索引、double write&change buffer

本文详细介绍了MySQL InnoDB存储引擎的三大特性:自适应哈希索引能提升查询效率,Doublewrite Buffer确保数据安全性,而Change Buffer则优化了对二级索引的操作。通过对这些特性的理解,可以更好地管理和优化MySQL数据库的性能。
摘要由CSDN通过智能技术生成

来源:mysql官方手册整理

自适应哈希索引

自适应哈希索引特性能够使MySQL在不牺牲事务的特性和可靠性的前提下,在具有特性的工作负载和缓存配置时表现的更像内存数据库。

可以通过启用innodb_adaptive_hash_index来开启自适应哈希索引特性或在服务器启动时通过指定--skip-innodb-adaptive-hash-index关闭。

mysql> show variables like 'innodb_adaptive_hash_index';
+----------------------------+-------+
| Variable_name              | Value |
+----------------------------+-------+
| innodb_adaptive_hash_index | ON    |
+----------------------------+-------+

基于观察到的搜索模式,使用索引键的前缀构建哈希索引,前缀可以是任意长度,而且哈希索引可能只有b-tree的一部分值。哈希索引基于经常访问的索引页建立。

如果一张表几乎完全在内存中,哈希索引可以将键值转化为指针,通过启用对任意元素的直接查找来加快查询的效率。innodb拥有能够监控索引搜索的机制,如果发现能够通过建立哈希索引来使查询变快,它会自动建立哈希索引。

在某些工作负载下,哈希索引带来查询速度的提高远远超过监控索引查找和维护哈希索引结构的代价。在较高的工作负载下,哈希索引也可能称为一部分争用的来源,比如多个并发的连接,使用like和%通配符这样的查询也不能从哈希索引中受益,在这种情况下可以关闭该特性以减轻不必要的工作负载。因为很难精确的预

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值