1. 程式人生 > >資料庫索引檔案一般採用什麼資料結構?

資料庫索引檔案一般採用什麼資料結構?

關於資料庫索引資料結構,大多數資料庫都是採用B樹。可參照文章:
http://blog.csdn.net/Ant_Yan/archive/2008/09/15/2932068.aspx

非主鍵索引需要在資料表本身的儲存空間外額外開銷儲存空間,所以在更新的時候可能不僅要更新資料表本身,還要更新非主鍵索引,更新內容更多了,所以導致速度降低。反過來,如果資料表中的資料按照主鍵索引的順序儲存,更新的時候就沒有額外的開銷。

非主鍵索引對提高查詢速度來講,主要的方面是:檢索的條件(where...)如果命中對應的非主鍵索引的話,就不需要對資料表做全表掃描,效率肯定是大大提高。(索引的建立和使用是資料庫設計和優化的重要部分,是一個數據庫
程式設計師的必修課,不同資料庫系統的語法不同,但是原理基本相同);
另一方面,也有如下的可能:如果檢索結果的欄位包含在非主鍵索引中,即使對非主鍵索引做全掃描,也比對整表字段做全掃描快,因為只有非主鍵索引本身的資料需要從儲存裝置調入記憶體,節約了IO時間。
不過一般說索引對查詢速度的影響,主要指第一種情況。