elasticsearch-es 分析器

Elasticsearch的分析过程包括字符过滤、分词、分词过滤和索引。标准分析器、简单分析器、空白分析器等内置分析器各有特点,适用于不同场景。分词器如标准分词器处理标点符号,关键词分词器保持字段完整。分词过滤器则涉及小写转换、停用词过滤、同义词处理等。理解这些概念能优化文本检索效率。
摘要由CSDN通过智能技术生成

elasticsearch-es 分析器

analysis 分析

分析是在文档被发送并加入倒排索引之前 ,es 会先对文本进行一系列处理

  • 字符过滤: 使用字符过滤器转变字符, 如将hello es改成hello elasticsearch
  • 文本切分为分词: 将文本切分为单个或者多个分词
  • 分词过滤: 使用分词过滤器转变每个分词
  • 分词索引:将分词存储到索引中

分析器,分词器,分词过滤器

一个分析器包括一个可选的字符过滤器,一个单个分词器,0个或者多个分词过滤器

       文本

------------------
|分析器           
|       |
|       |
|       V
|     字符过滤器
|       |
|       V
|     分词器
|       |
|       V
|     分词过滤器(0~n)
|       |
|-------------------
|       |
|       V
|      输出分词

分析器

内置analyzer分类:

  • standard(标准分析器)
  • simple: 小写转换分词
  • whitespace(空白分析器): 根据空白将文本分词
  • stop(停用词分析器): 过滤了停用词
  • keyword(关键词分析器): 将整个字段作为单独的分词,最好是将 index 设置成 not_anylyzed
  • pattern(模式分析器)
  • snowball(雪球分析器): 除了使用标准分词器和分词过滤器,也使用了小不害怕分词过滤器和停用器

分词器

内置分词器:

  • standard tokenizer(标准分词器): 最大长度255,移除了逗号和句号等标点符号
  • keyword tokenizer(关键词分词器)
  • letter tokenizer(字母分词器): 根据非字母的符号,将文本分成分词
  • lowercase tokenizer(小写分词器)
  • whitespace tokenizer(空白分词器)
  • pattern tokenizer(模式分词器): 指定任一模式将文本切分为分词

分词过滤器

       文本

------------------
|分词过滤器链           
|       |
|       |
|       V
|      小写
|       |
|       V
|     停用词
|       |
|       V
|     同义词...
|       |
|-------------------
|       |
|       V


内置分词过滤器:

  • standard token filter(标准分词过滤器): 其实什么也没有做
  • lowercase token filter (小写分词过滤器)
  • length token filter(长度分词过滤器): 将长度超出最长和最短限制的单词过滤
  • stop token filter(停用词过滤器): 将停用词从分词流中移除
  • truncate token filter(截断分词过滤器)
  • reverse token filter(颠倒分词过滤器): 将分词颠倒并过滤
  • synonym token filter(同义词过滤器)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值