Solr 中的文件分析

以下章節說明 Solr 如何分解並處理文字資料。有三個主要概念需要理解:分析器、斷詞器和篩選器。

  • 欄位分析器在擷取(索引文件時)和查詢時都會用到。分析器會檢查欄位的文字並產生符號串流。分析器可以是單一類別,也可以由一系列的斷詞器和篩選器類別組成。

  • 斷詞器會將欄位資料分解為詞彙單位,或符號

  • 篩選器會檢查符號串流,並保留、轉換或捨棄它們,或建立新的符號。斷詞器和篩選器可以組合形成管道或,其中一個的輸出會變成下一個的輸入。這種斷詞器和篩選器的序列稱為分析器,而分析器的結果輸出會用於匹配查詢結果或建立索引。

使用分析器、斷詞器和篩選器

雖然分析程序用於索引和查詢,但不一定要對這兩個操作使用相同的分析程序。對於索引,您通常會想要簡化或正規化單字。例如,將所有字母設定為小寫、消除標點符號和重音符號、將單字對應到它們的詞幹等等。這樣做可以增加回想率,因為例如,「ram」、「Ram」和「RAM」都會匹配「ram」的查詢。為了提高查詢時的精確度,篩選器可以縮小匹配範圍,例如,如果您對公羊感興趣,而不是隨機存取記憶體,則可以忽略所有大寫的縮寫。

分析程序輸出的符號會定義該欄位的值或詞彙,並用於在新增新文件時建立這些詞彙的索引,或是識別哪些文件包含您要查詢的詞彙。

更多資訊

這些章節將說明如何設定欄位分析器,並作為設定每個可用斷詞器和篩選器類別詳細資訊的參考。它也作為指南,以便您在有內建篩選器或斷詞器無法滿足的特殊需求時,可以設定自己的分析類別。

分析器:Solr 分析器概觀。

斷詞器:斷詞器和斷詞器工廠類別。

篩選器:篩選器和篩選器工廠類別。

字元篩選器:用於預先處理輸入字元的篩選器。

語言分析:用於字元集轉換和特定語言的斷詞器和篩選器。

分析畫面:用於測試欄位分析的管理 UI。