[發(fā)明專利]一種基于大范圍掃描的詞典優(yōu)化方法在審
| 申請?zhí)枺?/td> | 202011309180.3 | 申請日: | 2020-11-20 |
| 公開(公告)號: | CN112269855A | 公開(公告)日: | 2021-01-26 |
| 發(fā)明(設(shè)計(jì))人: | 母延年 | 申請(專利權(quán))人: | 南京好魚科技有限公司 |
| 主分類號: | G06F16/31 | 分類號: | G06F16/31;G06F16/36 |
| 代理公司: | 南京中軟知識產(chǎn)權(quán)代理事務(wù)所(特殊普通合伙) 32466 | 代理人: | 鄭燕飛 |
| 地址: | 210000 江蘇省南京市江寧區(qū)董*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 范圍 掃描 詞典 優(yōu)化 方法 | ||
本發(fā)明涉及大數(shù)據(jù)處理技術(shù)領(lǐng)域的基于大范圍掃描的詞典優(yōu)化方法,具體包括首先設(shè)定一個固定篩選閥值,將tim詞典中對應(yīng)的doc文件小于該閥值的詞全部篩選出來,而大于該閥值的doclist進(jìn)行保留;每間隔固定周期就將所有詞的doclist進(jìn)行小文件合并處理同時根據(jù)各個文件位置偏移量進(jìn)行記錄doclist所屬的分區(qū)信息;將每個文件對應(yīng)的分區(qū)偏移量信息記錄在大文件的尾部,在每次獲取所需文件時進(jìn)行讀取文件尾部位置信息來獲得所有doclist的偏移量;合并大文件放入一個kv系統(tǒng)里面,kv系統(tǒng)進(jìn)行快速讀取,將隨機(jī)目錄的小文件進(jìn)行合并后避免大量的隨機(jī)磁盤數(shù)據(jù)輸入或輸出處理;本發(fā)明能夠提供一種消耗計(jì)算資源少、處理速度快且對文件損耗低的基于大范圍掃描的詞典優(yōu)化方法。
技術(shù)領(lǐng)域
本發(fā)明涉及大數(shù)據(jù)查詢處理技術(shù)領(lǐng)域,尤其涉及一種基于大范圍掃描的詞典優(yōu)化方法。
背景技術(shù)
近年來,隨著物聯(lián)網(wǎng)、社交網(wǎng)絡(luò)、云計(jì)算等技術(shù)不斷融入我們的生活以及現(xiàn)有的計(jì)算能力、存儲空間、網(wǎng)絡(luò)帶寬的高速發(fā)展,人類積累的數(shù)據(jù)在互聯(lián)網(wǎng)、通信、金融、商業(yè)、醫(yī)療等諸多領(lǐng)域不斷地增長和累積,初步測算到2020年平均下來,一個人每天會產(chǎn)生1.5GB的數(shù)據(jù),每輛車會產(chǎn)生4TB的數(shù)據(jù),每架飛機(jī)會產(chǎn)生40TB的數(shù)據(jù),每個小型的工廠會產(chǎn)生1PB的數(shù)據(jù)。
如此巨大的數(shù)據(jù)面臨的主要問題:
1、在這樣巨大的數(shù)據(jù)量下,如果分區(qū)過細(xì),我們的索引產(chǎn)生的小文件會特別多;
2、如果每次檢索都需要隨機(jī)掃描那么多小文件,磁盤的隨機(jī)io(輸入/輸出)也會特別慢;
3、每一次查詢要打開、讀取、關(guān)閉文件將近千萬次,這樣的打開和關(guān)閉對文件損耗也是十分大的。
Lucene是apache軟件基金會jakarta項(xiàng)目組的一個子項(xiàng)目,是一個開放全文檢索引擎工具包,但它不是一個完整的全文檢索引擎,而是一個全文檢索引擎的架構(gòu),提供了完整的查詢引擎和索引引擎,部分文本分析引擎。Lucene的目的是為開發(fā)人員提供一個簡單易用的工具包,以方便的在目標(biāo)系統(tǒng)中實(shí)現(xiàn)全文檢索功能,或者是以此為基礎(chǔ)建立起完整的全文檢索引擎。作為一套用于全文檢索和搜尋的開源程式庫,Lucene提供了一個簡單卻強(qiáng)大的應(yīng)用程式接口,能夠做全文索引和搜尋,就其本身而言,Lucene是當(dāng)前以及最近幾年最受歡迎的免費(fèi)Java信息檢索程序庫,人們經(jīng)常提到信息檢索程序庫,雖然與搜索引擎有關(guān),但不應(yīng)該將信息檢索程序庫與搜索引擎相混淆。這種詞典優(yōu)化方法的缺點(diǎn)包括:同一個詞的很多小文件合并時也需要消耗大量的系統(tǒng)資源,而且存儲在另一個kv(鍵值對)庫里,也需要增加額外的入kv庫時間;這樣在建立索引后,索引文件會有一定的膨脹(符合條件的索引文件會膨脹一倍);需要在一定的前提條件下才能發(fā)揮優(yōu)勢,這樣的索引文件膨脹入kv系統(tǒng)也會犧牲一部分的入庫速度,來提升在那種詞典較少的查詢上的速度提升。
發(fā)明內(nèi)容
本發(fā)明目的是為了克服現(xiàn)有技術(shù)的不足而提供一種消耗計(jì)算資源少、處理速度快且對文件損耗低的基于大范圍掃描的詞典優(yōu)化方法。
下面關(guān)于后續(xù)技術(shù)方案表述中涉及的專業(yè)名詞解釋如下:
Lucene是指開源的高性能、可擴(kuò)展的信息檢索引擎。
kv系統(tǒng)是指具備鍵值對的數(shù)據(jù)庫系統(tǒng)。
tim為英文TermDictionary的縮寫,是指詞典文件。
doc是指一種文件數(shù)據(jù)類型。
Mb是數(shù)據(jù)大小單位。
doclist是指獲取指定文檔列表。
為達(dá)到上述目的,本發(fā)明采用了如下技術(shù)方案。
一種基于大范圍掃描的詞典優(yōu)化方法,具體包括步驟如下:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南京好魚科技有限公司,未經(jīng)南京好魚科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011309180.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





