2016-12-06 8 views
1

私はSolrの片方向シノニムまたは片方向シソーラス(Endecaのように)を実装しようとしています。私がカムコーダーを検索する場所では、カメラの結果も得ますが、その逆もありません。 「Solrで片方向のシノニムを使用するにはどうすればよいですか?

<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100" multiValued="true"> 
    <analyzer type="index"> 
     <tokenizer class="solr.ClassicTokenizerFactory"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.ClassicFilterFactory"/> 
     <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" /> 
     <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/> 
    <filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15"/> 
    </analyzer> 
    <analyzer type="query"> 
     <tokenizer class="solr.ClassicTokenizerFactory"/> 
     <filter class="solr.LowerCaseFilterFactory"/> 
     <filter class="solr.ClassicFilterFactory"/> 
     <filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" /> 
    </analyzer> 
</fieldType> 
+0

あなたはschema.xmlを投稿するのを忘れていますが、あなたはどんな結果が得られているのか、何を期待しているのかについてさらに詳しく知ることができます。あなたがこの設定をしなければ、私は別々に私が20と30の結果をそれぞれ得ると言うことを得るならば、P.s '書き込みは答えasap'を必要とする答えasap – root545

+0

を与えません。 1つの方法では、シソーラスのカムコーダーの検索で50の結果が得られ、fforカメラの検索で30の結果が得られるはずです。 –

答えて

0

ますので:私はSynonyms.txtに次を追加しようとしたが、それは奇妙な結果を与えているように動作していないことのようです:

ビデオカメラ=>カメラ

そして、私のschema.xmlがありますSynonymFilterが定義されているインデックス作成時にシノニムを拡張するだけで、camcorderは途中の各ドキュメントに対してcameraに変更されます。クエリを実行するときに同じ展開が行われない場合、Solrは引き続き検索しますcamcorder(クエリに定義されているSynonymFilterがないためalysis chain)である。インデックスにはcamcorderトークンがないため、ヒットは発生しません。

問合せ時にシノニムを拡張し、一方向のシノニムで必要なものを達成するために索引付けする必要があります。

+0

私はあなたの答えに応じて変更を行いました。しかし、私はまだ同じ数の結果を得ています。シノニム設定なし(カムコーダー=>カメラ)の場合、私は別々に検索すると、それぞれ20と30の結果が得られます。 1つの方法では、カムコーダーの検索で50の結果が得られ、カメラ検索で30の結果が得られるはずです。 –

+0

それがあなたが望むなら、あなたはインデックス作成中に 'カメラ'、 'カムコーダー'に 'カメラ'を書き換えたいと思います。このようにして、カメラを含むドキュメントはカメラとカムコーダの両方に関連付けられ、カムコーダはカムコーダにのみ関連付けられます。 – MatsLindh

0

私は、あなたが探していたことだと思う:

camcorder => camera, camcorder 

あなたが右側にカメラが含まれていない場合は、「ビデオカメラ」を検索する場合、ビデオカメラは何も結果を返しません。

関連する問題