1. 程式人生 > >【MySQL技術內幕】24-InnoDB儲存引擎索引概述

【MySQL技術內幕】24-InnoDB儲存引擎索引概述

InnoDB儲存引擎支援以下幾種常見的索引:

  • B+樹索引
  • 全文索引
  • 雜湊索引

前面已經提到過, InnoDB儲存引擎支援的雜湊索引是自適應的, InnoDB儲存引擎會根據表的使用情況自動為表生成雜湊索引,不能人為干預是否在一張表中生成雜湊索引。

B+樹紫引就是傳統意義上的索引,這是目前關係型資料庫系統中查詢最為常用和最為有效的索引。B+樹索引的構造類似於二叉樹,根據鍵值( Key value)快速找到資料。
注意B+樹中的B不是代表二叉( binary),而是代表平衡( balance),因為B+樹是從最早的平衡二叉樹演化而來,但是B+樹不是一個二又樹。
另一個常常被DBA忽視的問題是:B+樹索引並不能找到一個給定鍵值的具體行B+樹索引能找到的只是被查詢資料行所在的頁。然後資料庫通過把頁讀人到記憶體,再在記憶體中進行查詢,最後得到要查詢的資料。