我可以自定义 Elastic Search 以使用我自己的停用词列表吗?

发布于 2024-10-16 20:58:04 字数 69 浏览 4 评论 0原文

具体来说,我想在没有停用词列表的情况下对所有内容(例如谁)进行索引。 Elastic Search 是否足够灵活且易于更改?

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?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

我不吻晚风 2024-10-23 20:58:04

默认情况下,elasticsearch 使用的分析器是 标准分析器 使用默认的 Lucene 英语停用词。我通过将以下内容添加到elasticsearch.yml 文件中,将elasticsearch 配置为使用相同的分析器,但没有停用词。

# 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_

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_
不美如何 2024-10-23 20:58:04

是的,您可以使用 ElasticSearch 的内部配置 YAML 文件来执行此操作。

有关如何更改分析器设置的信息,请参阅配置文档

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

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

青萝楚歌 2024-10-23 20:58:04

您可以通过将这些行添加到您的elasticsearch.yml来全局覆盖默认分析器并关闭停用词过滤器

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

这将创建一个带有标准分词器和两个过滤器的自定义分析器:标准和小写。这样,您的自定义分析器将与标准分析器相同,但不会使用停用词过滤器。因为它被命名为“默认”,elasticsearch 将在未显式设置分析器的任何地方使用它。

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.

荭秂 2024-10-23 20:58:04

当然可以。使用 stopwords_path 代替停用词。有关详细信息,请访问 http://www.elasticsearch。 org/guide/en/elasticsearch/reference/current/analysis-stop-analyzer.html

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文