全文檢索 Solr從概念到實戰(一)

2021-09-07 15:08:09 字數 1257 閱讀 6914

select song_id,song_name,song_singer,song_album

from table_song

where song_name like 「%神話%」 or song_album like 「%神話%」 or song_lyric like 「%神話%」

效率低,影響效能。

從字典中查「王」:先根據這個字的拼音或偏旁部首在「檢字表」中找到這個字所在的頁碼,例如是857

頁,然後直接翻到

857頁,找到這個字。

lucene和

索引庫中的內容並不是一張完整的資料庫表,因為有些內容在查詢結果列表中不顯示,所以不需要放在索引庫中。

常用型別:

intfield

stringfield

textfield

把一句話/一篇文章拆分成乙個乙個單個的詞,並在內部統計每個詞出現的頻率,以此為依據進行後續的查詢搜尋。

good morning lily

[good]

[morning]

[lily]

我愛炒雞蛋

[我]       [我]

[愛]       [愛]

[炒]       [

炒雞蛋]

[雞蛋]

不分詞的例子:「位址」欄位中的「深圳」資料就不需要分詞。不分詞的字串型別就使用stringfield

,分詞的字串就使用

textfield

。在索引庫內部,將乙個具體的索引值和文件中分詞的結果關聯起來,在搜尋時使用索引可以快速定位到對應的詞,進而快速定位到詞所在的文件。

」欄位中「神話」這條記錄。

不需要建立索引的字段的例子:的路徑/aaa/bbb/ccc/pic10.png所在的

picture_path

欄位不需要建立索引。

資料型別:int、

double

、字串等等

是否分詞

要分詞:包含很多詞的一句話

不分詞:分詞之後失去本來的含義

是否建立索引

是否儲存

要儲存:在查詢結果列表中要顯示,或會用到

不儲存:在查詢結果列表中不顯示也不會用到

solr全文檢索

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

solr全文檢索隨筆

5 啟動tomcat下面的solr服務,在啟動jabaweb的服務,就可以連線。solr新增登入名和密碼步驟 在tomcat檔案中找到tomcat users.xml新增 admin password admin roles solr 使用者名稱和密碼 在solr的web.xml檔案中新增 solr...

全文檢索概念

全文檢索是指計算機索引程式通過掃瞄文章中的每乙個詞,對每乙個詞建立乙個索引,指明該詞在文章中出現的次數和位置,當使用者查詢時,檢索程式就根據事先建立的索引進行查詢,並將查詢的結果反饋給使用者的檢索方式。這個過程類似於通過字典中的檢索字表查字的過程。全文檢索的方法主要分為按字檢索和按詞檢索兩種。按字檢...