色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

信息檢索索引的結(jié)構(gòu)

信息檢索索引的結(jié)構(gòu)?

Hash:

跟集合的Hash差不多,是根據(jù)Hash算法計(jì)算的下標(biāo)位置,可能出現(xiàn)哈希沖突;

查詢精準(zhǔn)快速,但不支持范圍查詢,范圍查詢就成了全文檢索;

顯然不適合數(shù)據(jù)庫(kù)索引使用

適合場(chǎng)景:

等只查詢的場(chǎng)景,就只有KV形式的情況,在Redis、Memcached一些NOSql的中間件;

有序數(shù)組:

? 有序數(shù)組在范圍查詢和等值查詢上很好;有序的適合靜態(tài)數(shù)組,

? 可以做來(lái)靜態(tài)存儲(chǔ)引擎,保存一些靜態(tài)數(shù)據(jù),不會(huì)變動(dòng)的靜態(tài)數(shù)據(jù)

? 有序數(shù)組的缺點(diǎn)就是變換數(shù)據(jù)時(shí)會(huì)移動(dòng)數(shù)據(jù),改變數(shù)據(jù)結(jié)構(gòu);

? 靜態(tài)數(shù)組存放一些一般不會(huì)改變的數(shù)據(jù)也是不錯(cuò)的。

二叉樹(shù):

是有序的,可以支持范圍查詢;

時(shí)間復(fù)雜度是log(N),為了維持時(shí)間復(fù)雜度更新的復(fù)雜度也要一樣,就成了完全平衡二叉樹(shù)了;

但隨著數(shù)據(jù)的增加,對(duì)于二叉樹(shù)就會(huì)變的很高,查詢消耗的時(shí)間就會(huì)很多。

B樹(shù):

數(shù)據(jù)結(jié)構(gòu)是一個(gè)結(jié)點(diǎn)可以存儲(chǔ)多個(gè)數(shù)據(jù),相比二叉樹(shù)就很矮,就會(huì)提高磁盤(pán)的IO效率,

B樹(shù)不支持范圍查詢的快速查找,如果數(shù)據(jù)不在同一個(gè)磁盤(pán)上就需要從根節(jié)點(diǎn)進(jìn)行多次遍歷,查詢效率有待提高。

如果data存儲(chǔ)的是行記錄,行的大小隨著列數(shù)的增多,所占空間會(huì)變大。這時(shí),一個(gè)頁(yè)中可存儲(chǔ)的數(shù)據(jù)量就會(huì)變少,樹(shù)相應(yīng)就會(huì)變高,磁盤(pán)IO次數(shù)就會(huì)變大。

B+樹(shù):

是B樹(shù)的升級(jí)版,只在葉子結(jié)點(diǎn)存放數(shù)據(jù),其他節(jié)點(diǎn)存放索引值,然后葉子結(jié)點(diǎn)再加上一個(gè)雙向鏈表連接,方便了范圍查詢的效率。

B+樹(shù)中的非葉子節(jié)點(diǎn)會(huì)冗余一份在葉子節(jié)點(diǎn)中,并且葉子節(jié)點(diǎn)之間用指針相連。

B+樹(shù)一個(gè)結(jié)點(diǎn)為一頁(yè)或者一頁(yè)的倍數(shù)最好;

平衡二叉樹(shù)java,信息檢索索引的結(jié)構(gòu)