Can I customize Elastic Search to use my own Stop Word list?

后端 未结 4 1798
感情败类
感情败类 2021-01-02 04:00

specifically, I want to index everything (e.g. the who) with no stop word list. Is elastic search flexible enough and easy enough to change?

相关标签:
4条回答
  • 2021-01-02 04:25

    Certainly you can. Use stopwords_path insead of stopwords. for more information http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/analysis-stop-analyzer.html

    0 讨论(0)
  • 2021-01-02 04:33

    Yes, you can do this using ElasticSearch's internal config YAML file.

    See the config docs for how to change the analyzer settings.

    0 讨论(0)
  • 2021-01-02 04:36

    You can override default analyzer globally and turn off the stopword filter by adding these lines to your elasticsearch.yml:

    index.analysis.analyzer.default:
      type: custom
      tokenizer: standard
      filter: standard, lowercase
    

    This will create a custom analyzer with the standard tokenizer and two filters: standard and lowercase. This way your custom analyzer will be identical to the standard analyzer but it will not use the stopword filter. Because it's named "default", elasticsearch will use it everywhere where analyzer is not explicitly set.

    0 讨论(0)
  • 2021-01-02 04:40

    By default, the analyzer elasticsearch uses is a standard analyzer with the default Lucene English stopwords. I have configured elasticsearch to use the same analyzer but without stopwords by adding the following to the elasticsearch.yml file.

    # Index Settings
    index:
      analysis:
        analyzer:
          # set standard analyzer with no stop words as the default for both indexing and searching
          default:
            type: standard
            stopwords: _none_
    
    0 讨论(0)
提交回复
热议问题