全文檢索Lucene和Solr簡介

2021-07-11 10:35:22 字數 817 閱讀 8368

在電商專案中,經常會遇到的是海量資料的查詢。如果在海量資料中進行查詢的話,使用sql語句進行查詢的話,效率非常的低。

使用lucene和solr就是為了解決這種問題的。

首先,lucene是幹什麼用的?solr又是幹什麼用的?

lucene是apache出品的乙個開源的全文檢索框架。提供了完整的查詢引擎和索引引擎。他可以做全文索引和搜尋。經常用於海量資料的查詢中。

lucene是如何使用的?

lucene中有乙個工具,會專門的對資料建立索引資訊。然後把索引資訊存放到索引庫中。

lucene的結構:

什麼是solr?

solr是乙個應用伺服器。他向外部提供了類似webservice的api介面,使用者可以過http請求,向搜尋引擎伺服器提交一定格式的xml檔案,生成索引;也可以通過http get操作提出查詢請求,並得到xml格式的返回結果。

solr是基於lucene進行開發的。可以說是對lucene的再次封裝。這樣做的好處,就是我們不需要封裝操作索引的相關方法了。可以直接使用solr的api操作索引。

lucene和solr的差別:

如果我們在專案中需要對海量資料進行查詢,首先要做的是對那些資料建立索引。之後,我們的查詢就針對的是solr庫裡面的索引目錄了。隨後又指向性的在海量資料中查詢,所以這種檢索方式比傳統的sql直接查詢資料來源的效率要高很多。

lucene 全文檢索

在講全文檢索之前,先說下資訊檢索。資訊檢索通俗的講,就是從資訊集合中找出與使用者相關的資訊,除了文字之外,還有音訊 影象等。全文檢索 把使用者的查詢請求和全文中的每個詞進行比較,不考慮查詢請求與文字語義上的匹配。b 全文檢索是指計算機索引程式通過掃瞄文章中的每乙個詞,對每乙個詞建立乙個索引,指明該詞...

Lucene全文檢索

流程圖 一.建立文件 文件域 注 每乙個doucment可以有多個field,不同的document可以有不同的field,同乙個document可以有相同的field 網域名稱和域值都相同 每乙個文件都有唯一的編號 二.分析文件 將文件中的大寫轉化成小寫,清除 is a 標點 停用詞等過程生成語彙...

solr全文檢索

1 安裝solr,修改配置檔案中的資料庫 例項 需要檢索的字段 分詞器等 詳情見上篇博文 2 控制台建立例項 匯入資料 詳情見上篇博文 3 導包 org.springframework.boot spring boot starter data solr 3 全文檢索時,將查詢的字段 欄位名傳入so...