日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

InnoDB Adaptive Hash Index(AHI)

發布時間:2023/12/20 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 InnoDB Adaptive Hash Index(AHI) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


1. InnoDB AHI的作用 InnoDB的適應哈希(AHI)是維護InnoDB葉子頁記錄的索引鍵值(或鍵值前綴)的到葉子節點記錄的Hash映射關系。能夠根據索引鍵值(或前綴)定位到記錄的地址。這樣可以不用再搜索B+樹從root到葉子頁的路徑定位過程。
2. InnoDB AHI的維護 為了避免頻繁的更新AHI帶來性能的開銷,InnoDB的AHI不是隨時可以更新的。 首先要滿足 index->search_info->hash_analysis >= BTR_SEARCH_HASH_ANALYSIS(17),即在這個索引上至少進行了17此查詢(指通過B+樹的路徑查詢,不包含通過AHI查找)才進行一次是否需要建hash的分析。 分析是否需要建索引: buf_block_struct->n_hash_helps?用相同的前綴(n_fields,n_bytes,left_side)進行的查詢 成功的次數(btr_search_update_block_hash_info). ?如果次數大于該頁記錄總數的1/16時,就有可能在該頁上建立AHI.? 并且index->search_info->n_hash_potential >= BTR_SEARCH_BUILD_LIMIT(100),即表示查詢已經連續成功使用Hash Index(btr_search_guess_on_hash), 或者是可能成功使用Hash Index的次數(btr_search_info_update_hash) 大于100. 原來沒有創建hash,或者原來創建hash的前綴參數發生了改變(n_fields, n_bytes, left_side),則需要重新對這個頁上的記錄創建AHI.
索引的創建: 如果需要創建新的AHI,如果原來在這頁上已經建立和哈希索引,則需要先刪除原來的這頁上的AHI。建立新的AHI,從這頁的第一個記錄開始,到最后的一個記錄,依次根據前綴的參數(n_fields,n_bytes,left_side)計算hash的key,然后插入哈希表中。
插入記錄時添加哈希記錄: 當一頁插入一條記錄時,如果這頁已經被創建哈希,則將這個新記錄也插入哈希表。函數: btr_search_update_hash_node_on_insert(); btr_search_update_hash_on_insert()。

3.?InnoDB?AHI前綴參數的確定: hash前綴參數(n_fields, n_bytes, left_side)的確定需要根據這次查詢的結果來確定,即查詢結束后btr_cur_t結構中的參數來確定;主要是比較cursor->up_match, cursor->up_bytes, cursor->low_match, cursor->low_bytes,即查詢結束后查詢游標指向的前后記錄的匹配程度來確定前綴的參數。 以匹配少的記錄作為前綴,即cursor->up_match,cursor->up_bytes組合與cursor->low_match, cursor->low_bytes比較結果,如果前者大則用后者來更新info->n_fields和info->n_bytes,此時info->left_side = TRUE,即當遇到相同記錄前綴時,是選擇最左邊插入hash表,后者大則用前者來更新info->n_fields和info->n_bytes,此時info->left_side = FALSE,當遇到相同記錄前綴時,是選擇最右邊的記錄插入hash表,即相同的前綴只用保留一個記錄在hash表中。 如果分析過程中發現查詢的結果和上次得到的結果不同,則需要重新前綴參數(n_fields, n_bytes, left_side)。
4. InnoDB AHI使用 在btr_cur_search_to_nth_level中,在使用B+Tree搜索前,先搜索AHI(btr_search_guess_on_hash),看是否可以找到相應的記錄。查找到記錄后還需要檢查找到的記錄是否符合要求(btr_search_check_guess),即根據Search Path(PAGE_CUR_G, PAGE_CUR_GE, PAGE_CUR_L, PAGE_CUR_LE)與tuple和當前記錄的比較結果btr_cur_t結構中的參數來判斷。如果符合要求則返回相應的記錄,否則還是采用B+Tree來查詢。

總結

以上是生活随笔為你收集整理的InnoDB Adaptive Hash Index(AHI)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲第一自拍 | 亚洲激情第一页 | 色欧美日韩 | jizzjizz国产 | 日韩中文视频 | 久草视频免费在线观看 | 94av| 日韩天堂在线观看 | 亚洲天堂成人av | 不卡视频国产 | 潮喷失禁大喷水aⅴ无码 | a级一级片| 麻豆乱码国产一区二区三区 | 国产精品九九视频 | 久操资源网 | 夜夜艹天天干 | 99亚洲天堂 | 日韩毛片一区二区三区 | 亚洲乱妇老熟女爽到高潮的片 | 青娱乐欧美 | 高清不卡一区 | 亚洲av无码乱码国产麻豆 | 永久免费未网 | 图片一区二区 | 999久久久久| 欧美老熟 | www.成人 | 青青色在线视频 | 久操成人 | 国产后入清纯学生妹 | 自拍超碰 | 日韩精品一二三四区 | 国产77777| 欧美久久久久久久久久久 | 久久91视频 | 亚洲国产成人一区二区 | 夜色福利视频 | 和漂亮岳做爰3中文字幕 | h视频在线看 | 国产又粗又猛又爽又黄又 | av在线精品 | 国产毛片毛片毛片毛片毛片毛片 | 激情综合文学 | 九草在线观看 | aise爱色av | 冲田杏梨一区二区三区 | 亚洲成人诱惑 | 国产视频在线看 | 成人av免费观看 | 啪啪亚洲| 婷婷影视| 神宫寺奈绪一区二区三区 | 奇米影 | 91口爆一区二区三区在线 | 日韩色| 一区二区韩国 | 青青青草视频在线观看 | 亚洲欧洲免费无码 | 97香蕉超级碰碰久久免费软件 | 小视频在线 | 亚洲综合小说 | 中文字幕乱码无码人妻系列蜜桃 | 91色呦呦| 夜夜爱夜夜操 | 欧美精品18 | 免费视频亚洲 | 亚洲精品一线二线三线 | 中文字幕欧美在线 | 亚洲六月丁香色婷婷综合久久 | 国产精品无码成人片 | 成人动漫在线播放 | 久久久久少妇 | 嫩草99| 亚洲人体一区 | 成人在线播放av | 国产美女被遭强高潮免费网站 | 成人av日韩| 国产第一亚洲 | 一区二区视频在线看 | 中出av在线 | 91九色视频在线 | 美女脱裤子打屁股 | 国产一级二级三级在线 | 91人人澡人人爽人人精品 | 韩国三色电费2024免费吗怎么看 | 澳门色网 | 国产成人精品免费看视频 | 亚洲精品一区二区三区四区乱码 | 无遮挡裸光屁屁打屁股男男 | 亚洲av无码乱码国产精品fc2 | 久久久久影视 | 伊人久久青草 | 狠狠干天天操 | 日韩毛片在线视频 | 国产一区二区精品 | 中文字幕免费高清 | 日韩国产精品一区 | jizz18欧美18 | 欧美激情婷婷 |