b+樹索引
b+樹索引適合全鍵值、鍵值範圍、鍵字首查詢
跟oracle的b+數是乙個結構。
聚簇索引的葉節點儲存資料頁,其結構是一致的。
雜湊索引
雜湊索引基於雜湊表實現,只有精確匹配索引所有列的查詢才有效。對於每一行,儲存引擎都會對索引列計算hash code,雜湊索引存放hash code和行指標
雜湊索引不等於雜湊連線
innodb hash索引支援表
innodb應該是不支援手動建立hash索引,僅支援 adaptive hash index
adaptive hash index
innodb儲存引擎會監控對錶上索引的查詢,如果觀察到建立雜湊索引可以帶來速度的提公升,則建立雜湊索引,所以稱之為自適應(adaptive) 的雜湊索引
innodb_adaptive_hash_index
property
value
command-line format
--innodb-adaptive-hash-index[=]
system variable
innodb_adaptive_hash_index
scope
global
dynamic
yestype
boolean
default value
on或者--skip-innodb-adaptive-hash-index啟動server時選擇關閉自適應雜湊
空間資料索引r-tree
myisam支援空間索引。gis支援較好的是postgre的postgis
全文索引
其他索引類別
第三方儲存引擎支援的索引
索引結構,索引類別,慢查詢優化
索引 索引資料結構 b tree 1.磁碟讀寫代價更低 2.查詢效率更加穩定 3.更有利於對資料庫的掃瞄 hash索引 高效 缺點 1.僅僅能滿足 in 2.無法被用來避免資料的排序 3.不能利用部分索引查詢 4.不能避免表掃瞄 5.遇到大量hash重複 bitmap點陣圖索引 主要使用重複多比如性...
索引的資料結構及類別初探
資料庫是我們開發程式設計中不可缺少的模組,而資料庫的索引又是重中之重。在關聯式資料庫中,索引是一種對資料庫表中的值進行排序的儲存結構。索引的作用相當於圖書的目錄,可以根據目錄中的頁碼快速找到所需的內容。索引提供指向儲存在表的指定列中的資料值的指標,然後根據您指定的排序順序對這些指標排序。資料庫使用索...
mysql多索引結構 MySQL 索引結構詳解
innodb的主鍵索引 primary key 是cluster形式的 聚簇索引 innodb的非主鍵索引 secondary index 是普通的b tree索引。兩種索引在root node和branch node是一樣的,在leaf node就不一樣了。primary key存放的是表的實際資...