2012-01-14 17 views
10

Próbuję ustawić kilka podstawowych synonimów w Solr. Jeden ja pracuję na to:Jak zrobić solr synonimy działa

nam, USA, Stany Zjednoczone

Rozumiem, że dodając, że do pliku synonimów pozwoli użytkownikom na wyszukiwanie dla nas, i wrócić do dokumentów zawierających USA czy Wielka stany. Tak samo, jeśli użytkownik wprowadza USA lub Stany Zjednoczone.

Niestety, w tym miejscu, gdy przeprowadzę wyszukiwanie, otrzymuję wyniki dla pozycji, które zawierają wszystkie trzy słowa - to robi AND synonimów zamiast OR.

Gdybym włączyć debugowanie, to jest rzeczywiście to, co widzę (plus niektóre wynikające):

(+DisjunctionMaxQuery(((westCite:us westCite:usa westCite:unit) | (text:us text:usa text:unit) | (docketNumber:us docketNumber:usa docketNumber:unit) | ((status:us status:usa status:unit)^1.25) | (court:us court:usa court:unit) | (lexisCite:us lexisCite:usa lexisCite:unit) | ((caseNumber:us caseNumber:usa caseNumber:unit)^1.25) | ((caseName:us caseName:usa caseName:unit)^1.5))))/no_coord

Czy robię coś źle, aby spowodować to? Mój defaultOperator jest ustawiony na AND, ale spodziewam się, że filtr synonimów to zrozumie.

Odpowiedz

2

Dla lepszego zrozumienia wyszukiwania synonimów, będziemy musieli krok po kroku proces wdrożenia (używam SOLR 6,5 * wersję.):

Krok 1:

Pobierz plik country-synonyms.txt tekst i umieść go w poniższej ścieżce:

Ścieżka: \ solr-6.5.1 \ server \ solr \ yourCore \ conf

yourCore: Nazwa bazowa powinna zostać odpowiednio zmieniona

Krok 2:

Dodaj Typ pola w managed-schema plik na tej samej ścieżce wymienionej powyżej:

Krok 3: Dodaj swoje pole (narodowości) z rodzaju kraju w samym pliku (zarządzanych schematu).

<field name="Nationality" type="country" indexed="true" stored="true"/> 

Etap 4: restart SOLR.

solr restart -p <your solr port> 

Krok 5:.

teraz importować dane z pola zawierającego Narodowość ***

Krok 6:

Teraz kwerendy z poniższych przypadków i testu :

Zapytanie:

  1. Narodowość: US
  2. Narodowość: USA
  3. Narodowość: Stany Zjednoczone
  4. Narodowość: Stany Zjednoczone Ameryki

Wszystkie powyższe pytania daje ten sam rezultat.

Uwaga: *** Importuj dane tylko po wykonaniu powyższych kroków, w tym ponownego uruchomienia solr. Może nie działać na istniejących danych (więcej szczegółów: AnalyzersTokenizersTokenFilters)

Powiązane problemy