zoukankan      html  css  js  c++  java
  • MySQL中自适应哈希索引

    自适应哈希索引采用之前讨论的哈希表的方式实现,不同的是,这仅是数据库自身创建并使用的,DBA本身并不能对其进行干预。自适应哈希索引近哈希函数映射到一个哈希表中,因此对于字典类型的查找非常快速,如SELECT * FROM TABLE WHERE index_col='xxx'但是对于范围查找就无能为力。通过SHOW ENGINE INNODB STATUS 可以看到当前自适应哈希索引的使用情况

    -------------------------------------
    INSERT BUFFER AND ADAPTIVE HASH INDEX
    -------------------------------------
    Ibuf: size 1, free list len 0, seg size 2, 94 merges
    merged operations:
     insert 280, delete mark 0, delete 0
    discarded operations:
     insert 0, delete mark 0, delete 0
    Hash table size 4425293, node heap has 1337 buffer(s)
    174.24 hash searches/s, 169.49 non-hash searches/s

    现在可以看到自适应哈希索引的使用信息了。包括自适应哈希索引的大小、使用情况,每秒使用自适应哈希索引搜索的情况。需要注意的是,哈希索引只能用来搜索等值的查询,如

    SELECT * FROM table WHERE index_col='xxx'

    而对于其他查找类型,如范围查找,是不能使用哈希索引的。因此这里出现no--hash searches的情况,通过hash searches:non-hash searches可以大概了解使用哈希索引后的效率

    由于自适应哈希索引是由InnoDB存储引擎自己控制的,因此这里的这些信息只仅供参考。不过可以通过参数innodb_adaptive_hash_index来禁用或启动此特性,默认是开启

  • 相关阅读:
    Python--面向对象编程
    Python--私有
    Python--格式化cookie为字典类型
    Python--异常处理
    Python--加密小练习
    bzoj 1774: [Usaco2009 Dec]Toll 过路费
    lougu T7983 大芳的逆行板载
    bzoj 1083(&vijos 1190): [SCOI2005]繁忙的都市 && bzoj 1601: [Usaco2008 Oct]灌水
    vijos 1083 小白逛公园
    51nod 1766 树上的最远点对
  • 原文地址:https://www.cnblogs.com/olinux/p/5161826.html
Copyright © 2011-2022 走看看