2014-11-05 89 views
1

我有一個Elasticsearch索引,其中我的默認分析器是雪球分析器,因此我可以獲取該詞幹,現在我需要能夠在某些字段上具有同義詞以及雪球分析儀進行干擾。ElasticSearch啓用雪球分析器和字段上的同義詞

這是可能的,如果是的話如何?

作爲測試我試圖設置在雪球analiyzer的代名詞過濾器,希望它將使所有領域的同義詞,所以我可以測試它,但沒有真正的工作...

我創造了另一個使用WordNet同義詞文件對我的索引進行同義詞分析。

如果我不清楚請讓我知道,我會嘗試和更新。這是我目前的索引設置。

"settings": { 
      "index": { 
       "analysis": { 
        "analyzer": { 
         "synonym": { 
          "filter": [ 
           "synonym" 
          ], 
          "tokenizer": "whitespace" 
         }, 
         "default": { 
          "language": "English", 
          "type": "snowball" 
         } 
        }, 
        "filter": { 
         "synonym": { 
          "type": "synonym", 
          "synonyms_path": "/elasticsearch/wn_s.pl", 
          "format": "wordnet" 
         } 
        } 
       } 
      } 
     } 
    } 

回答

1

你可能要指定一個自定義的分析儀,它使用相同的標記生成器和過濾器的雪球分析儀(http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/analysis-snowball-analyzer.html)。同樣爲它添加同義詞過濾器。

"analyzer": { 
    "default": { 
     "type": "custom", 
     "filter": [ 
      "standard", 
      "lowercase", 
      "snowball", 
      "synonym" 
     ], 
     "tokenizer": "standard" 
    } 
} 

我還沒有嘗試過,我不確定是否必須指定滾雪球過濾器。如果它不起作用,請嘗試指定如下所示的滾球過濾器:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/analysis-snowball-tokenfilter.html

+0

您的權利是一個結合了雪球作品的自定義分析器。雖然我只需要它在某些領域的活躍,所以我做了一個單獨的分析器,並運行一些測試,它與stemming和所有。 – 2014-11-06 14:38:06

相關問題