[發明專利]一種基于海量標準文獻數據的排序優化算法技術實現方法有效
| 申請號: | 201711044274.0 | 申請日: | 2017-10-31 |
| 公開(公告)號: | CN110019993B | 公開(公告)日: | 2022-11-15 |
| 發明(設計)人: | 林雪;王文鋒;孫良君;袁慶祝;陳斌;劉少華 | 申請(專利權)人: | 中博信息技術研究院有限公司 |
| 主分類號: | G06F16/903 | 分類號: | G06F16/903;G06F40/289 |
| 代理公司: | 常州佰業騰飛專利代理事務所(普通合伙) 32231 | 代理人: | 張文杰 |
| 地址: | 210000 江蘇*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 海量 標準 文獻 數據 排序 優化 算法 技術 實現 方法 | ||
1.一種基于海量標準文獻數據的排序優化算法技術實現方法,其特征在于,包括如下步驟:
步驟1:安裝和配置Solr搜索服務器,Solr搜索引擎底層是基于lucene的分詞組件,構建SolrInputDocument對象,增加索引,按需添加相應的core數據表來分片存儲數據,并為每個core配置uniqueKey;
步驟2:數據庫服務器中的數據是動態增量的,所以需要定期刷新搜索服務器中用于存放搜索數據的core數據表,此外,針對全量數據對文檔的進行基準boost打分,設置字段為BASE_ORDER;
步驟3:用戶在客戶端選擇搜索方式與輸入搜索關鍵字后,客戶端將搜索方式與搜索關鍵字發送請求給服務器,服務器通過搜索解析器判斷檢索類型,以及根據HMM算法來切分搜索關鍵字;
所述搜索方式包括標準號搜索、題錄搜索、全文搜索、題錄與全文混合搜索;
所述切分搜索關鍵字包括如下步驟:
步驟31:判斷搜索關鍵字是否包含惡意字符,如有,則通過正則表達式替換掉,再判斷搜索方式;
步驟32:使用特殊搜索解析器判斷是否為標準號特殊搜索,如果結果為true則執行步驟33,結果為false則執行步驟39;
步驟33:搜索關鍵字為標準號特殊搜索,先按空格和半角圓點符號切分搜索關鍵字,再根據字典表判定是否為標準代碼開頭,結果為true則執行步驟34,結果為false為執行步驟37;
步驟34:根據標準代碼開頭判斷是否為國外標準,結果為false則執行步驟35,結果為true為執行步驟36;
步驟35:此搜索為國內標準特殊搜索,標準號切分后可分為標準代號、專業類號、順序號、年代號4個部分,根據切分后的數組長度判斷是何種類型的排列組合方式,分情況進行查詢,得出結果集;
步驟36:此搜索為國外標準號搜索,國外標準的標準號組成方式比較復雜,不像國內標準一樣可以拆分成標準代號、專業類號、順序號、年代號4個部分,因此針對國外標準號查詢直接與標準號字段進行匹配查詢;
步驟37:此搜索為非標準代碼開頭的國內標準的標準號搜索,那么出現的會有專業類號、順序號、年代號3個部分,和步驟35一致,根據切分后的數組長度判斷是何種類型的排列組合方式,分情況進行查詢;
步驟38:根據步驟31中所判斷的4種搜索方式中,如果為標準號搜索,則直接根據基準boost打分字段BASE_ORDER的大小來排序;
如果為題錄搜索,則最前端還需要加入一個層級,分別是標題精確、題錄精確、標題模糊、題錄模糊,再將這個層級和BASE_ORDER字段做算術加運算,再排序;
如果為全文搜索,最前端也需要加入一個層級,分別是全文精確、全文模糊,然后將這個層級和BASE_ORDER字段做算術加運算,再排序;
如果為題錄與全文混合搜索,最前端還是需要加入一個層級,分別是標題精確、題錄精確、全文精確、標題模糊、題錄模糊、全文模糊,然后將這個層級和BASE_ORDER字段做算術加運算,再排序;
步驟39:此搜索普通搜索,主要是中文或漢語拼音的檢索,在步驟1中添加的core中,有一個core的存儲內容為關鍵詞,每一個關鍵詞既有中文字段,也有漢語拼音字段,當用戶在客戶端上即使輸入的是漢語拼音,也會實時地進行提示對應的中文詞語以供選擇,再根據中文來查詢;
步驟310:用戶在客戶端輸入的中文詞匯串searchString是連續的,即詞與詞之間沒有空格間隔開的,則執行步驟311,如果詞與詞之間是有空格相間隔開的,則執行步驟312;
步驟311:根據lucene分詞組件對步驟310中的searchString從左往右進行分詞與去黑詞,當然如果分詞后分為多個詞,則是按照“或”邏輯進行查詢的;
步驟312:當詞與詞之間有兩個或兩個以上空格間隔開,以空格切割開的詞,每個詞分別執行上述步驟311,但是以空格間隔開的詞是以“與”邏輯進行查詢的;
步驟313:步驟311與步驟312均需要加一個層級,分別是標題精確、題錄精確、全文精確、標題模糊、題錄模糊、全文模糊,再將這個層級和BASE_ORDER字段做算術加運算,再排序;
步驟314:步驟38與步驟313的排序均要按照標準類型進行一個總的分類排序,即根據標準專業領域所要求的,依次顯示國標、行標、地標、國外標準。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中博信息技術研究院有限公司,未經中博信息技術研究院有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711044274.0/1.html,轉載請聲明來源鉆瓜專利網。





