lucene倒排索引的存儲(chǔ)方式介紹

這篇文章主要講解了“l(fā)ucene倒排索引的存儲(chǔ)方式介紹”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“l(fā)ucene倒排索引的存儲(chǔ)方式介紹”吧!

創(chuàng)新互聯(lián)是一家專業(yè)提供湞江企業(yè)網(wǎng)站建設(shè),專注與成都做網(wǎng)站、成都網(wǎng)站制作、H5開發(fā)、小程序制作等業(yè)務(wù)。10年已為湞江眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。

        在談?wù)刲ucene倒排索引的存儲(chǔ)方式中只說明了倒排索引位置相關(guān)信息的存儲(chǔ),并沒有詳細(xì)說明如果需要對(duì)位置信息進(jìn)行隨機(jī)訪問,那么它的索引該如何設(shè)計(jì)。lucene采用的是多級(jí)跳躍鏈表的方式,先說說跳躍鏈表基本思想(其實(shí)在前面文中也提過),假設(shè)給定一堆排過序的數(shù)字,并且數(shù)據(jù)量很大以至于在內(nèi)存中放不下,如果要快速隨機(jī)訪問其中的某個(gè)數(shù)值,一種方法是對(duì)這些數(shù)字每隔一定的條數(shù)如1000條就記錄相應(yīng)的數(shù)值以及對(duì)應(yīng)的文件指針,然后把這些數(shù)值以及對(duì)應(yīng)的文件指針加載到內(nèi)存中采用二分查找法找到欲查找數(shù)值所在數(shù)據(jù)塊的起始地址,然后將1000條記錄依次遍歷比較或者加載到內(nèi)存中采用二分查找都可以,這些數(shù)值和文件指針又叫一級(jí)跳躍表。

        如果說一級(jí)跳躍表的數(shù)據(jù)量依然很大,那么又要在此基礎(chǔ)上再建立一層跳躍表,依此類推就會(huì)有多級(jí)跳躍表了。值得一提的是級(jí)數(shù)并不是越多越好,因?yàn)閷蛹?jí)越多,查找的次數(shù)也越多,lucene默認(rèn)最大層級(jí)為10。

lucene倒排索引的存儲(chǔ)方式介紹

上圖是lucene官方給出的示圖(一個(gè)詞代表的倒排位置索引),d代表文檔,x代表每隔128個(gè)文檔進(jìn)行壓縮的文件指針也是第一層級(jí)的索引記錄了相應(yīng)的文檔ID和所在文件的指針,c分別為第二層級(jí)和第三層級(jí)。這樣感覺在代碼實(shí)現(xiàn)上較復(fù)雜的索引結(jié)構(gòu)確在lucene實(shí)現(xiàn)的時(shí)候顯得非常討巧,因?yàn)榭偟膶蛹?jí)可以預(yù)先算出來,然后可以邊寫邊計(jì)算出文檔所在層級(jí)。有興趣滴還是看代碼吧。

感謝各位的閱讀,以上就是“l(fā)ucene倒排索引的存儲(chǔ)方式介紹”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)lucene倒排索引的存儲(chǔ)方式介紹這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

分享文章:lucene倒排索引的存儲(chǔ)方式介紹
當(dāng)前URL:http://muchs.cn/article8/gheiip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站面包屑導(dǎo)航、手機(jī)網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)微信小程序、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)