zoukankan      html  css  js  c++  java
  • 14.4.3 Adaptive Hash Index 自适应hash index

    14.4.3 Adaptive Hash Index  自适应hash index
    
    自适应hash index(AHI) 让InnoDB 执行更像内存数据库在系统使用合适的负载组合和足够的内存用于Buffer pool,
    
    基于观察到的搜索模式, MySQL 创建一个hash index 使用一个index key 前缀。
    
    索引的前缀可以任何长度, 可能只有一些值在B树索引里是出现在hash index.
    
    
    Hash indexes 是基于需求对于那些index 的索引页经常被访问的
    
    
    如果一个表整个在主内存里, 一个hash index 可以加速查询通过直接查找任何元素,讲索引值变成一个指针。
    
    InnoDB 有一个机制监控索引搜索,如果InnoDB 注意到查询可以从创建的hash index收益,它会自动处理
    
    
    在一些负载下, 从hash index 查询加速极大的超过了额外的工作用于监控索引查询和维护hash index结构。
    
    
    有时候, read/write lock 保护访问到自适应的hash index 可以变成连接的来源在高负载下
    
    比如 多核并发关联,查询像%通配也不会从AHI(自适应索引)收益。
    
    mysql> show variables like '%hash%';
    +-------------------------------+-------+
    | Variable_name                 | Value |
    +-------------------------------+-------+
    | innodb_adaptive_hash_index    | ON    |
    
    对于负载 自适应索引是不需要的, 关闭它降低不需要的性能负载。
    
    因为它是很难预测的 是否这个功能是合适的对于特定的系统,
    
    
    考虑运行基准,使用一个现实的负载。
    
    
    hash index总是基于一个存在的B-tree Index 在表上,InnoDB 可以创建一个hash index 在一个key的任何长度的前缀
    
    定义用于B-tree 取决于搜索的模式 InnoDB观察B树索引。
    
    一个Hash index可以是部分的, 覆盖那些经常被访问的页面
    

  • 相关阅读:
    JavaScript Eval 函数使用
    WPFToolkit Calendar & DatePicker 使用介绍
    Windows Mobile 6.5 配置环境,数据库访问,部署简单实例
    ThreadPool.QueueUserWorkItem 方法 (WaitCallback)
    Windws Mobile 6.5 Professional ADO.NET数据访问
    WPF调用Web Services
    c#中Interface的理解
    PagesSection.MaintainScrollPositionOnPostBack 属性
    EclipseRCP中文语言包版本不一致,导致导出错误
    SWT美化开源控件网站
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199095.html
Copyright © 2011-2022 走看看