在默认情况下,innodb_adaptive_hash_index都是被打开的,大家可以通过如下的方式查看:
root@(none) 11:32:56>show variables like '%adaptive%';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| innodb_adaptive_hash_index | ON |
+----------------------------+-------+
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| innodb_adaptive_hash_index | ON |
+----------------------------+-------+
关于通过innodb adaptive hash index访问数据的体系结构如下:
我选择了两个mysql数据库系统,查看了innodb status中关于 ADAPTIVE HASH INDEX部份,得到的信息如下:
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2,
0 inserts, 0 merged recs, 0 merges
Hash table size 42499631, used cells 30149, node heap has 46 buffer(s)
0.22 hash searches/s, 618.09 non-hash searches/s
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2,
0 inserts, 0 merged recs, 0 merges
Hash table size 42499631, used cells 1644761, node heap has 2475 buffer(s)
21688.13 hash searches/s, 5885.36 non-hash searches/s
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2,
0 inserts, 0 merged recs, 0 merges
Hash table size 42499631, used cells 30149, node heap has 46 buffer(s)
0.22 hash searches/s, 618.09 non-hash searches/s
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 0, seg size 2,
0 inserts, 0 merged recs, 0 merges
Hash table size 42499631, used cells 1644761, node heap has 2475 buffer(s)
21688.13 hash searches/s, 5885.36 non-hash searches/s
从上面的显示结果可以看出,第一个通过hash searching命中率的相当低,hash表所占的内存大小为46*16k=736k;而第二个命中率比较高,hash表所占的内存大小为2475*16k=39600k。出现如上的情况,跟这两个数据库所运行的业务系统有着直接的关系,大家的系统是否存在这样的情况呢?
<!--来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/1384/viewspace-611325/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/1384/viewspace-611325/