2017-02-20 24 views
0
<analyzer type="query"> 
<tokenizer class="solr.StandardTokenizerFactory"/> 
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt"/> 
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> 
<filter class="solr.LowerCaseFilterFactory"/> 
</analyzer> 

Здесь файл "synonyms.txt" присутствует в текущем каталоге. Как загрузить этот файл, если он находится на удаленном сервере не на локальной машине?Как загрузить файл «synonyms.txt», присутствующий на удаленном сервере, используя solr?

ответ

0

К сожалению, вы не можете просто ввести URL-адрес, потому что ResourceLoaderSynonymFilterFactory использует FilesystemResourceLoader.

Таким образом, вы все равно можете указать Solr на все, что выглядит и ведет себя как файл, например. NFS-смонтированный каталог или даже локально синхронизированная папка Dropbox.

0

Вы не можете загрузить ресурс с удаленного устройства. Вместо этого вы можете HTTP запрос поста, чтобы поместить синонимы к вашему серверу Solr с ManagedSynonymFilterFactory

Это признаки введены в Solr 4.8.0

Как использовать:

Сначала вы должны объявить фильтр, как показано ниже

<filter class="solr.ManagedSynonymFilterFactory" managed="english"/> 

Вы можете оставить синонимы к Solr с ниже завитка запроса:

curl -X PUT -H 'Content-type:application/json' --data-binary '{"mad":["angry","upset"]}' "http://solr_ip:8983/solr/collection_name/schema/analysis/synonyms/english" 

Здесь вы можете изменить имя solr_ip и имя_события. и я помещаю синонимы слов для сумасшедшего, разозлился, расстроен

И вы можете проверить свои синонимы по запросу.

http://solr_ip:8983/solr/collection_name/schema/analysis/synonyms/english 

Для получения дополнительной информации: https://cwiki.apache.org/confluence/display/solr/Managed+Resources

+0

Я считаю, что ManagedResources были введены в версии Solr после Solr 4. Просто что-то иметь в виду. –

+1

Спасибо @AlexandreRafalovitch, ответ Отредактировано :) –