2017-02-20 2 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> 

Ici, le fichier "synonyms.txt" est présent dans le répertoire courant. Comment charger ce fichier si son emplacement est sur le serveur distant pas sur la machine locale?Comment charger le fichier "synonyms.txt" présent sur le serveur distant en utilisant solr?

Répondre

0

Malheureusement, vous ne pouvez pas simplement taper une URL car le ResourceLoader du SynonymFilterFactory utilise un FilesystemResourceLoader. Par conséquent, vous pouvez toujours pointer Solr vers tout ce qui ressemble et se comporte comme un fichier, par ex. un répertoire monté par NFS ou même un dossier Dropbox localement synchronisé.

0

Vous ne pouvez pas charger la ressource à distance. Au lieu de cela, vous pouvez http demande de poste pour mettre synonymes de votre serveur Solr avec ManagedSynonymFilterFactory

INTERNATIONAL DAYS introduit dans Solr 4.8.0

Comment utiliser:

D'abord, vous devez déclarer votre filtre comme ci-dessous

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

Vous pouvez poster des synonymes pour Solr à la demande boucle ci-dessous:

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

Ici, changez solr_ip et collection_name avec le vôtre. et je mets des mots synonymes pour fou est en colère, contrarié

Et vous pouvez vérifier vos synonymes par une demande d'obtention.

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

Pour plus d'informations: https://cwiki.apache.org/confluence/display/solr/Managed+Resources

+0

Je crois ManagedResources ont été introduits dans la version de Solr après Solr 4. Juste quelque chose à garder à l'esprit. –

+1

Merci @AlexandreRafalovitch, Réponse éditée :) –