2017-02-20 16 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"は現在のディレクトリにあります。このファイルがローカルマシン上にないリモートサーバーにある場合、このファイルをロードする方法は?solrを使用してリモートサーバに "synonyms.txt"というファイルをロードする方法はありますか?

答えて

0

残念ながら、SynonymFilterFactoryResourceLoaderにはFilesystemResourceLoaderが使用されているため、URLを入力するだけではありません。

このように、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とcollection_nameを変更します。私は怒っている怒りの言葉を入れている、怒っている、怒っている

そしてあなたの同義語を取得要求で確認することができます。詳細情報については

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

:私はManagedResourcesはSolrの後のSolrのバージョンに心に留めておくべき4だけで何かを導入したと信じてhttps://cwiki.apache.org/confluence/display/solr/Managed+Resources

+0

。 –

+1

ありがとう@AlexandreRafalovitch、回答済み編集:) –

関連する問題