首页 > 其他分享 >Elasticsearch 配置与测试分析器 (2)

Elasticsearch 配置与测试分析器 (2)

时间:2024-04-08 11:44:05浏览次数:18  
标签:自定义 text folded 分析器 analyzer Elasticsearch 测试 my

一. 配置文本分析器(Configure text analysis)

    默认情况下,Elasticsearch 使用standard分析器来进行文本分析,如果使用该分析器,则不用额外的配置。如果不满足,可以使用其它内置分析器,也可以创建自定义的分析器更好的控制,通常在生产实战中都是自定义分析器,方便更好扩展。

 

  1.1.下面使用内置的whitespace分析器来看下效果(后续会介绍内置的各种分析器)

POST _analyze
{
  "analyzer": "whitespace",
  "text":     "The quick brown fox."
}

    分析结果如下所示:

     使用数组表示的分词结果:[ The, quick, brown, fox. ]

 

  1.2 下面使用各项组合分析器

POST _analyze
{
  "tokenizer": "standard",
  "filter":  [ "lowercase", "asciifolding" ],  #lowercase:转小写, asciifolding:将包含非ASCII字符的文本转换为其ASCII等效表示
  "text":      "Is this déja vu?"
}

    分析结果:[ is, this, deja,vu ]

 

  1.3 下面自定义一个分析器,映射到索引中

PUT my-index-000001
{
  "settings": {
    "analysis": {     #分析根节点
      "analyzer": {   #分析器  
        "std_folded": {   #自定义一个分析器, 可以定义多个分析器
          "type": "custom",  
          "tokenizer": "standard", #分词器
          "filter": [   #token 过滤,一个token是指一个单词term
            "lowercase",
            "asciifolding"
          ]
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "my_text": {
        "type": "text",
        "analyzer": "std_folded"   #指定自定义的分析器
      }
    }
  }
}

    二种方式测试分析器文本(常用第二种)  

GET my-index-000001/_analyze 
{
  "analyzer": "std_folded",         #指定分析器名
  "text":     "Is this déjà vu?"
}

GET my-index-000001/_analyze  #分析my_text字段,默认分析器std_folded
{
  "field": "my_text", 
  "text":  "Is this déjà vu?"
}

    分析结果与上面1.2结果一样

 

参考官方资料:配置文本分析

 

标签:自定义,text,folded,分析器,analyzer,Elasticsearch,测试,my
From: https://www.cnblogs.com/MrHSR/p/18104074

相关文章

  • 学习笔记445—白盒测试用例设计方法(语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组
    白盒测试用例设计方法(语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖、基本路径覆盖语句覆盖:每条语句至少执行一次。判定覆盖:每个判定的所有可能结果至少出现一次。(又称“分支覆盖”)条件覆盖:每个条件的所有可能结果至少执行一次。判定/条件覆盖:一个判定中的每......
  • Elasticsearch,使用scroll实现遍历(分页)查询
    为什么要使用scroll查询在使用es中,当某个index存贮的数据超过10000时,只能查询到10000的数据。因为index.max_result_window默认值是10000。并且使用游标查询可以在一次查询中获取大量文档,并且保持查询快照状态,允许用户多次检索数据而不影响其他并发请求。scroll查......
  • OpenSSL测试-SM3
    OpenSSL测试-SM3本次作业分值25分|老师评分 任务详情0.在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务1.使用OpenSSL的命令计算你的8位学号(数字)的摘要值(SM3),提交截图(5')2.使用OpenSSL编程对计算"你的8位学号(数字)"SM3摘要值,提交代码和运行结果截图......
  • OpenSSL测试-SM3
    在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务使用OpenSSL的命令计算你的8位学号(数字)的摘要值(SM3),提交截图(5')使用OpenSSL编程对计算"你的8位学号(数字)"SM3摘要值,提交代码和运行结果截图。(10’)使用OpenSSL编程对计算内容为"所有同学的8位学号(文本)"的文件的......
  • OpenSSL测试-SM3
    使用OpenSSL的命令计算你的8位学号(数字)的摘要值(SM3)使用OpenSSL编程对计算"你的8位学号(数字)"SM3摘要值3.使用OpenSSL编程对计算内容为"所有同学的8位学号(文本)"的文件的SM3摘要值......
  • OpenSSL测试-Base64
    OpenSSL测试-Base64本次作业分值20分|老师评分 任务详情0.在openEuler(推荐)或Ubuntu或Windows(不推荐)中完成下面任务1.使用工具(如bc,计算机器等)把自己学号转化为16进制,提交转化过程和结果截图(2‘)2.使用工具(如echo-e,ultraedit等)把上面转化的结果写入二进......
  • elasticsearch mapping
    1 概念:​ ES中的mapping有点类似与RDB中“表结构”的概念,在MySQL中,表结构里包含了字段名称,字段的类型还有索引信息等。在Mapping里也包含了一些属性,比如字段名称、类型、字段使用的分词器、是否评分、是否创建索引等属性,并且在ES中一个字段可以有对个类型。分词器、评分等概念在......
  • 辽宁省第二十一届职业院校技能大赛高职组“软件测试”自动化测试任务要求①
    2024年辽宁省职业院校技能大赛“软件测试”竞赛任务二自动化测试要求一、任务要求题目1:按照以下步骤在PyCharm中进行自动化测试脚本编写并执行。1、设置智能时间等待3秒并将浏览器窗口最大化;2、引入By方法类;3、通过ID属性定位用户名输入框,并输入用户名XTGLY;4、通过NA......
  • 软件测试理论(2)自动化测试
    自动化测试什么时候适用自动化测试?1)可重复的、不知疲倦地运动,对于数据能进行精确的大批量的比较的;2)回归测试3)在机械化的执行和比较测试执行的问题1)自动化测试没有有效的利用,使得手工测试太多。2)测试结果的捕获没有系统性,而且没有查看或调查3)缺陷报告必须......
  • 【编译原理】手工打造语法分析器
    重点:语法分析的原理递归下降算法(RecursiveDescentParsing)上下文无关文法(Context-freeGrammar,CFG)关键点:左递归问题深度遍历求值-后续遍历上一篇「词法分析器」将字符串拆分为了一个一个的token。本篇我们将token变成语法树。一、递归下降算法还是这个例子in......