Elasticsearch停用词

Elasticsearch 停用词:

1、有些词在文本中出现的频率非常高,但是对文本所携带的信息基本不产生影响。
2、英文
a、an、the、of
3、中文
的、了、着、是 、标点符号等
4、文本经过分词之后,停用词通常被过滤掉,不会被进行索引。
5、在检索的时候,用户的查询中如果含有停用词,检索系统也会将其过滤掉(因为用户输入的查询字符串也要进行分词处理)。
6、排除停用词可以加快建立索引的速度,减小索引库文件的大小。

 

使用优缺点:

可能无法完成以下事情
区分 happy 和 _not happy_。
搜索乐队名称 The The。
查找莎士比亚的名句 “To be, or not to be” (生存还是毁灭)。
使用挪威的国家代码: `no`。

停用词的最主要好处是性能,假设有上百万文档的索引中搜索单词 fox`。或许 `fox 只在其中 20 个文档中出现,也就是说 Elasticsearch 需要计算 20 个文档的相关度评分 `_score `从而排出前十。现在我们把搜索条件改为 `the OR fox`,几乎所有的文件都包含 `the 这个词,也就是说 Elasticsearch 需要为所有一百万文档计算评分 `_score`。 由此可见第二个查询肯定没有第一个的结果好。

 

所以要慎重使用

中文:https://www.ranks.nl/stopwords/chinese-stopwords

英文:https://www.ranks.nl/stopwords