国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

倒排索引的數(shù)據(jù)結(jié)構(gòu):Term index、Term Dictionary、Posting List

這篇具有很好參考價(jià)值的文章主要介紹了倒排索引的數(shù)據(jù)結(jié)構(gòu):Term index、Term Dictionary、Posting List。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

2、倒排索引的數(shù)據(jù)結(jié)構(gòu)

倒排索引其實(shí)包含了三種數(shù)據(jù),分別是

  • 倒排表(Posting List)
  • 詞項(xiàng)字典(Term Dictionary)
  • 詞項(xiàng)索引(Term Index)

這幾種文件分別存儲(chǔ)了不同的數(shù)據(jù)

其中倒排表包含某個(gè)詞項(xiàng)的所有id的數(shù)據(jù)存儲(chǔ)了在.doc文件中;

詞項(xiàng)字典包含了index field的所有經(jīng)過(guò)normalization token filters處理之后的詞項(xiàng)數(shù)據(jù),最終存儲(chǔ)在.tim文件中。

所謂normalization其實(shí)是一個(gè)如去重、時(shí)態(tài)統(tǒng)一、大小寫統(tǒng)一、近義詞處理等類似的相關(guān)操作;詞項(xiàng)索引就是為了加速詞項(xiàng)字典檢索的一種數(shù)據(jù)結(jié)構(gòu),落地文件為.tip。.tip文件和.tim文件的數(shù)據(jù)結(jié)構(gòu)如下圖所示:
倒排索引的數(shù)據(jù)結(jié)構(gòu):Term index、Term Dictionary、Posting List
?Lucene中通過(guò)FST Index信息來(lái)讀取當(dāng)前域在索引文件.tim的具體信息,而同一個(gè)索引所有域的FSTIndex都被連續(xù)的寫入在同一個(gè).tip文件中,所以就需要indexStartFP 來(lái)索引 FSTIndex。

FSTIndex底層是一個(gè)字節(jié)數(shù)組,存儲(chǔ)了每個(gè)Block在.tim中的起始位置,如上圖所示,Block f和Block g對(duì)應(yīng)的Block分別被保存在了.tim文件的Block 0和Block 1的位置。

每個(gè)Block內(nèi)部又保存了Block Header、Suffix和Stats信息以及Metadatas信息,其中Block Header中存儲(chǔ)了當(dāng)前Block中的Pending Block和Pending Term的總計(jì)數(shù),也就是EntryCount,Sufix則是保存了當(dāng)前Block后綴的個(gè)數(shù)以及分別是什么,如block b的SufixLength=2,為f、g。Stats則保存了當(dāng)前Term的詞頻和文檔頻率,參見(jiàn)org.apache.lucene.index.TermsEnum.TermStats。

其中docFreq為包含當(dāng)前Term的doc數(shù)量,totalTermFreq為當(dāng)前term在所有文檔中的當(dāng)前字段中出現(xiàn)的總次數(shù),但實(shí)際保存的是和docFreq的差值,這也是遵循通用最小化算法的法則表現(xiàn)。需要注意的是,兩者均是指在同一個(gè)域內(nèi)的計(jì)數(shù)。Metadatas這里不著重介紹。

關(guān)于倒排表的文件結(jié)構(gòu),我們僅需知道其內(nèi)部存儲(chǔ)了包含Term的id數(shù)組、詞頻、postion、payload、offset等信息,需要重點(diǎn)注意的是ES內(nèi)部采用怎樣的壓縮算法。這一點(diǎn)在下一節(jié)內(nèi)容展開來(lái)講。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-415866.html

到了這里,關(guān)于倒排索引的數(shù)據(jù)結(jié)構(gòu):Term index、Term Dictionary、Posting List的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 索引的數(shù)據(jù)結(jié)構(gòu)

    索引的數(shù)據(jù)結(jié)構(gòu)

    索引常見(jiàn)的有三種數(shù)據(jù)結(jié)構(gòu):哈希表,有序數(shù)組和二叉樹。 MySQL使用了B+樹。 1、哈希表(散列表) 對(duì)索引的key進(jìn)行一次hash計(jì)算就可以定位出數(shù)據(jù)存儲(chǔ)的位置 很多時(shí)候Hash索引要比B+Tree索引更高效 僅能滿足“=”,“in”,不支持范圍查詢 存在hash沖突 hash算法原理: hash計(jì)算后

    2024年02月07日
    瀏覽(25)
  • MySQL索引的數(shù)據(jù)結(jié)構(gòu)

    MySQL索引的數(shù)據(jù)結(jié)構(gòu)

    MySQL官方對(duì)索引的定義為: 索引(Index)是幫助MySQL高效獲取數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)。 索引的本質(zhì):索引是數(shù)據(jù)結(jié)構(gòu)。你可以簡(jiǎn)單理解為“排好序的快速查找數(shù)據(jù)結(jié)構(gòu)”,滿足特定查找算法。這些數(shù)據(jù)結(jié)構(gòu)以某種方式指向數(shù)據(jù), 這樣就可以在這些數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)上實(shí)現(xiàn) 高級(jí)查找算法

    2024年02月14日
    瀏覽(28)
  • MySQL數(shù)據(jù)庫(kù)索引的數(shù)據(jù)結(jié)構(gòu)

    數(shù)據(jù)庫(kù)索引的功能就是讓查找更加的高效,所以索引的數(shù)據(jù)結(jié)構(gòu)應(yīng)該是能夠加速查找的數(shù)據(jù)結(jié)構(gòu)。 MySQL的innoDB存儲(chǔ)引擎的索引的數(shù)據(jù)結(jié)構(gòu)就是多叉搜索樹中的b+樹,這可以說(shuō)是為索引量身定做的一個(gè)數(shù)據(jù)結(jié)構(gòu)。 首先,索引可以通過(guò)主鍵,unique修飾創(chuàng)建,也可以直接使用sql語(yǔ)句

    2024年02月10日
    瀏覽(31)
  • Mysql——索引相關(guān)的數(shù)據(jù)結(jié)構(gòu)

    Mysql——索引相關(guān)的數(shù)據(jù)結(jié)構(gòu)

    我們知道,數(shù)據(jù)庫(kù)查詢是數(shù)據(jù)庫(kù)的最主要功能之一。我們都希望查詢數(shù)據(jù)的速度能盡可能的快,因此數(shù)據(jù)庫(kù)系統(tǒng)的設(shè)計(jì)者會(huì)從查詢算法的角度進(jìn)行優(yōu)化。最基本的查詢算法當(dāng)然是順序查找(linear search),這種復(fù)雜度為O(n)的算法在數(shù)據(jù)量很大時(shí)顯然是糟糕的,好在計(jì)算機(jī)科學(xué)

    2024年01月16日
    瀏覽(26)
  • MySQL-06.索引的數(shù)據(jù)結(jié)構(gòu)

    MySQL-06.索引的數(shù)據(jù)結(jié)構(gòu)

    索引是存儲(chǔ)引擎用于快速找到數(shù)據(jù)記錄的一種數(shù)據(jù)結(jié)構(gòu),就好比一本書的目錄部分,通過(guò)目錄中找到對(duì)應(yīng)文章的頁(yè)碼,便可快速定位到需要的文章。MySQL中的索引也是一樣的道理,進(jìn)行數(shù)據(jù)查找時(shí),首先查看查詢條件是否命中某條索引,符合則 通過(guò)索引查找 相關(guān)數(shù)據(jù),如果不

    2024年04月22日
    瀏覽(17)
  • 數(shù)據(jù)結(jié)構(gòu)之索引查找(分塊查找)

    數(shù)據(jù)結(jié)構(gòu)之索引查找(分塊查找)

    活動(dòng)地址:CSDN21天學(xué)習(xí)挑戰(zhàn)賽 ??作者簡(jiǎn)介:大家好我是小唐同學(xué)(???),為夢(mèng)想而奮斗的小唐,讓我們一起加油?。?! 個(gè)人主頁(yè): 小唐同學(xué)(???)的博客主頁(yè) 系列專欄:數(shù)據(jù)結(jié)構(gòu) 博友們?nèi)绻彩切率秩腴T數(shù)據(jù)結(jié)構(gòu)我希望大家可以多加練習(xí) 數(shù)據(jù)結(jié)構(gòu)題庫(kù)在牛客網(wǎng)就有已

    2024年02月02日
    瀏覽(22)
  • 索引的數(shù)據(jù)結(jié)構(gòu)(MySql高級(jí))

    索引的數(shù)據(jù)結(jié)構(gòu)(MySql高級(jí))

    索引是存儲(chǔ)引擎用于快速找到數(shù)據(jù)記錄的一種數(shù)據(jù)結(jié)構(gòu),就好比一本教科書的目錄部分,通過(guò)目錄中找到對(duì)應(yīng)文章的頁(yè)碼,便可快速定位到需要的文章. MySQL中也是一樣的道理,進(jìn)行數(shù)據(jù)查找時(shí),首先查看查詢條件是否命中某條索引,符合則通過(guò)索引查找相關(guān)數(shù)據(jù),如果不符合

    2024年01月18日
    瀏覽(22)
  • 數(shù)據(jù)庫(kù)索引結(jié)構(gòu)(1)概念

    數(shù)據(jù)庫(kù)索引結(jié)構(gòu)(1)概念

    MySQL學(xué)習(xí)筆記-主鍵索引和二級(jí)索引_mysql中主鍵索引和二級(jí)索引的區(qū)別_愛(ài)因詩(shī)賢的博客-CSDN博客?MYSQL-主鍵索引與二級(jí)索引_mysql二級(jí)索引存在哪個(gè)文件_青苔小榭的博客-CSDN博客 ? ? ? 采用主鍵索引的好處:如果元素的位置發(fā)生修改,那么查找的復(fù)雜度沒(méi)有變化 因?yàn)橹皇歉鶕?jù)主鍵

    2024年02月06日
    瀏覽(27)
  • 大數(shù)據(jù) | 實(shí)驗(yàn)二:文檔倒排索引算法實(shí)現(xiàn)

    大數(shù)據(jù) | 實(shí)驗(yàn)二:文檔倒排索引算法實(shí)現(xiàn)

    倒排索引(Inverted Index)被用來(lái)存儲(chǔ) 在全文搜索下某個(gè)單詞在一個(gè)文檔或者一組文檔中的存儲(chǔ)位置的映射 ,是目前幾乎所有支持全文索引的搜索引擎都需要依賴的一個(gè)數(shù)據(jù)結(jié)構(gòu)。通過(guò)對(duì)倒排索引的編程實(shí)現(xiàn),熟練掌握 MapReduce 程序在集群上的提交與執(zhí)行過(guò)程,加深對(duì) MapReduc

    2024年02月07日
    瀏覽(20)
  • 【MySQL數(shù)據(jù)庫(kù) | 第十七篇】索引以及索引結(jié)構(gòu)介紹

    【MySQL數(shù)據(jù)庫(kù) | 第十七篇】索引以及索引結(jié)構(gòu)介紹

    目錄 前言: 索引簡(jiǎn)介:? 索引結(jié)構(gòu): ? ? ? ? ??二叉樹索引結(jié)構(gòu) ? ? ? ??Tree(普通二叉樹) ? ? ? ??B-Tree(多路平衡查找樹) ? ? ? ??B+Tree ? ? ? ???哈希索引數(shù)據(jù)結(jié)構(gòu) 總結(jié): 在實(shí)際生活中,我們對(duì)SQL語(yǔ)句進(jìn)行優(yōu)化實(shí)際上有很大一部分都是對(duì)索引進(jìn)行優(yōu)化,因此對(duì)索引

    2024年02月09日
    瀏覽(40)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包