美文网首页
Elasticsearch 分词

Elasticsearch 分词

作者: 侧耳倾听y | 来源:发表于2021-11-21 11:18 被阅读0次

    Analysis与Analyzer

    • Analysis

    文本分析是把全文本转换一系列单词(term/token)的过程,也叫分词。

    • Analyzer

    Analysis通过Analyzer来实现。

    ES在数据写入时转换词条,匹配Query语句时也需要用相同的分析器对查询语句进行分析。

    Analyzer的组成

    • Character Filters

    针对原始文本处理,例如去除html。

    • Tokenizer

    按照规则切分为单词,比如按照空格。

    • Token Filter

    将切分的单词进行加工,小写,删除stopwords(停用词),增加同义词。

    ES 内置的分词器

    • Standard Analyzer:默认分词器,按词切分,小写处理;


      image.png
    • Simple Analyzer:按照非字母切分(符号被过滤),小写处理;


      image.png
    • Stop Analyzer:小写处理,停用词过滤(the,a,is);


      image.png
    • Whitespace Analyzer:按照空格切分,不转小写;


      image.png
    • Keyword Analyzer:不分词,直接将输入当做输出;


      image.png
    • Patter Analyzer:正则表达式,默认\W+(分字符分隔);


      image.png
    • Language:提供了30多种常见语言的分词器;

    • Customer Analyzer:自定义分词器。

    _analyzer API

    • 指定Analyzer进行测试;
    GET /_analyze
    {
      "analyzer" : "standard",
      "text" : "Master Elasticsearch, elasticsearch in Action"
    }
    
    • 指定索引的字段进行测试;
    POST 索引名/_analyze
    {
      "field" : "title",
      "text" : "Master Elasticsearch, elasticsearch in Action"
    }
    
    
    • 自定义分词器进行测试。
    POST /_analyze
    {
      "tokenizer" : "standard",
      "filter" : ["lowercase"],
      "text" : "Master Elasticsearch, elasticsearch in Action"
    }
    
    

    相关文章

      网友评论

          本文标题:Elasticsearch 分词

          本文链接:https://www.haomeiwen.com/subject/mmvptrtx.html