2013-11-09 36 views
0

我剛剛瞭解到反向索引。該wikipedia頁說,反向索引的要點是什麼?

在數據庫管理系統,一個反向鍵索引策略,在指數進入前逆轉 鍵值。例如1例如,值 24538在索引中變成83542。扭轉密鑰值是 用於索引數據,例如序列號,其中 每個新的密鑰值大於先前值時,即,值 單調增加是特別有用的。反向密鑰索引在大量事務處理系統中變得尤其重要,因爲它們減少了對索引塊的爭用。

爲什麼顛倒對索引序號有用的鍵值?另外,爲什麼反向索引有助於減少高容量系統中索引塊的爭用?總之:反向索引的要點是什麼?

+0

「減少鍵值」不是文章說什麼。減少的是指數中同一點的爭用數量。對數字進行反轉可以爲實際上單調遞增的值提供有用的準隨機散射,這非常適合進入B樹的數據。 –

回答

3

在您的例子是指連續的數字是反向索引了良好的應用。以引用的號碼24538,它將被插入索引中的某個點。序列中的下一個數字將是24539,由於最高有效數字是相同的,因此將插入索引中非常接近第一個數字。擴展這一點,許多連續的數字都需要在相同的點上插入,包括擴展索引塊和重新平衡索引的重大開銷。

至少這些數字的顯著數字比最顯著更迅速地改變。因此,反轉數字的順序分別爲8354293542。這兩個數字將被插入到索引中,並且將其擴展到很多數字,索引將以更均衡的方式構建,從而減少索引管理的開銷。

在計算術語中顛倒數字的操作並不重要,而管理索引可能會涉及到很多磁盤訪問,因此以減少管理開銷的方式將項插入索引中可以顯着提高性能。