2012-04-18 46 views
0

我在本地機器上有一個Solr實例,我通過瀏覽器中的管理界面訪問它。 Solr的實例正在爲非模糊搜索正常工作(我廣泛使用它)。solr:確切的搜索返回正確的匹配,但Fuzzy返回沒有匹配

數據庫中的一條記錄是我自己的名字字段Barnaby和姓氏字段Dawson。另一個記錄是馬庫斯唐寧與適當的名字和姓氏字段。這裏的首都是完全一樣的。在數據庫中有十多個姓Downing的人,並且姓Dawson的人數相似。還有另外一個字段IsHistorical在我感興趣的所有記錄上設置爲false。

下面是我用粗略的匹配數(精確和不精確)執行的搜索。

IsHistorical:虛假和姓:擊落

很多比賽,其中許多是準確的。

IsHistorical:虛假和姓:其中道森

很多比賽大多數都是準確的。

IsHistorical:虛假和姓:唐寧〜

很多比賽沒有一個的是準確的。

IsHistorical:虛假和姓:道森〜

其中很多很多場比賽都是確切

IsHistorical:虛假的,用的名字:巴納比和姓:道森〜

一場比賽是正確的結果

IsHistorical:虛假的,用的名字:馬庫斯和姓:唐寧〜

無以匹配所有

我已經執行了近兩年的搜索與第一個字母大寫的所有組合的姓氏和名字及沒有觀察到結果的差異。我確保頁面返回的行數足夠大,以查看返回的所有結果。查詢是手工輸入的。

我的問題是:爲什麼模糊搜索修飾符在搜索「downing」時阻止我獲得精確匹配,但在搜索「dawson」時卻不會搜索到完全匹配?

我的最終目的是以模糊的方式撰寫包含姓氏和姓氏在內的多個字段相匹配的查詢。

回答

2

我的假設是,你在架構的領域所產生過濾器和唐寧成爲下來

模糊向下給你這種結果。我認爲這是最好的,你刪除這個領域的詞幹過濾器。

+1

謝謝!我關閉詞幹,這解決了這個問題。爲了讀者的利益,請注意,干擾過濾器工廠沒有明顯的名稱。它們包括「EnglishPorterFilterFactory」,「SnowballPorterFilterFactory」,「PorterStemFilterFactory」和「KStem」。 – 2012-04-19 09:18:35