中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

lucene倒排索引的存儲方式是什么

發布時間:2021-07-05 17:45:02 來源:億速云 閱讀:248 作者:chen 欄目:大數據

本篇內容介紹了“lucene倒排索引的存儲方式是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

lucene的倒排索引存儲包括詞的索引數據存儲、詞的位置存儲以及寫入過程,這3個部分是比較復雜的準備分開描述,先談談位置的存儲方式:

詞的位置具體包括每篇文檔中的詞頻、位置以及附帶的payload(這里先忽略掉norm信息的存儲),這3塊lucene分別采用了3個輸出流進行寫入,具體寫入過程如下:

1、對于每個詞而言會記錄該次所屬的文檔ID以及在該文檔中的詞頻,由于文檔ID已經排過序所以寫入時會進行差值壓縮存儲,而文檔詞頻會直接存儲,并且每128條記錄進行分塊壓縮存儲;

2、令Doc=abc|123;bcd;def,每寫完所屬文檔ID以及詞頻,就會寫入該詞在文檔中的每個位置(指文檔經過分詞后的第n個詞(分號為詞的分隔符def為第3個詞))、起始和結束的偏移量(指文檔未分詞時的開始和結束位置(bcd的開始和結束位置分別為8和11),通過偏移量可以算出詞、payload以及payload分隔符的總長度,所以這個長度不要認為是詞的長度和payload的長度(123為payload,對于abc的開始和結束位置分別為0和7))、每個詞附帶的payload信息。由于位置信息、偏移量已經排過序所以會按照差值壓縮存儲。位置信息會按照128條記錄分塊壓縮存儲到單獨的文件中。payload的長度信息以及偏移量也按照128條記錄分塊壓縮存儲到單獨的文件中而payload的內容并沒有壓縮而是直接寫入同一個文件中。

lucene倒排索引的存儲方式是什么

對于詞頻按照128條記錄分塊壓縮是因為包含同一個詞的文檔可能非常多,極端情況下是所有文檔都有。除了壓縮還需要提供能夠隨機訪問每篇文檔位置信息的功能,因此對位置信息又建立了一層索引結構,而且是每個詞對應一套索引。

索引需要記錄的信息包括:上個塊中最后一篇文檔的ID,上個位置塊的文件指針,上個payload塊的文件指針,剩余未壓縮的位置信息個數以及剩余未壓縮的payload數組長度。(這塊索引內容還是放到下篇詳細說明)

當寫完一個term時,對于剩余未達到128條記錄的內容,文檔ID和詞頻按照vint方式壓縮,位置、payload長度和偏移量同樣按照vint方式壓縮而payload內容直接寫入。

“lucene倒排索引的存儲方式是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双鸭山市| 南城县| 监利县| 梁平县| 达州市| 五常市| 周口市| 鹤山市| 郑州市| 吉首市| 崇义县| 浠水县| 宁明县| 甘泉县| 随州市| 精河县| 南雄市| 繁昌县| 隆化县| 通海县| 正阳县| 乃东县| 崇明县| 中山市| 松桃| 赤水市| 太原市| 仲巴县| 怀安县| 东平县| 镇坪县| 蒙阴县| 大方县| 临潭县| 景宁| 东辽县| 黑山县| 岳阳市| 图片| 门头沟区| 阿克苏市|