带你读《Elastic Stack 实战手册》之32:——3.4.2.17.1.Multi-field(下)

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 带你读《Elastic Stack 实战手册》之32:——3.4.2.17.1.Multi-field(下)


《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.17.Text analysis, settings 及 mappings——3.4.2.17.1.Multi-field(上) https://developer.aliyun.com/article/1230163


english 分词器。


POST _analyze
{
  "analyzer": "english",
  "text": "quick brown foxes"
}

结果:


{
  "tokens" : [
    {
      "token" : "quick",
      "start_offset" : 0,
      "end_offset" : 5,
      "type" : "<ALPHANUM>",
      "position" : 0
    },
    {
      "token" : "brown",
      "start_offset" : 6,
      "end_offset" : 11,
      "type" : "<ALPHANUM>",
      "position" : 1
    },
    {
      "token" : "fox",
      "start_offset" : 12,
      "end_offset" : 17,
      "type" : "<ALPHANUM>",
      "position" : 2
    }
  ]
}

在 english 分词中会将 foxes 解析成 fox,如果使用 quick brown foxes 查询 title.standard,只能返回一个结果,而查询 title.english 则能返回两个结果。

 

所以为了面对不同分词器导致的不同的分词解析结果,可以一次查询多个分词子字段。


GET test-000002/_search
{
  "query": {
    "multi_match": {
      "query": "quick brown foxes",
      "fields": [ 
        "title.standard",
        "title.english"
      ],
      "type": "most_fields" 
    }
  }
}

当然这种情况下需要评估好使用成本,multi-field 会造成存储成本相应的增加。

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。 &nbsp;
相关文章
|
SQL 存储 分布式数据库
bigdata-28-HBase基本调优策略
bigdata-28-HBase基本调优策略
175 0
|
5月前
|
人工智能 自然语言处理 监控
LongPort MCP:证券业首个券商MCP,AI赋能智能投资新时代,散户也能玩转机构级交易
LongPort MCP是长桥集团推出的证券行业首个券商模型上下文协议,通过标准化接口实现AI与金融服务的无缝对接,支持自然语言交互的智能投资服务。
653 8
LongPort MCP:证券业首个券商MCP,AI赋能智能投资新时代,散户也能玩转机构级交易
|
5月前
|
SQL 调度
如何基于Dataphin智能研发开发“留存率”指标
用户留存率是指在互联网行业中,某段时间内新增用户中,在后续特定时间点或时间段内继续使用应用的用户比例。它是衡量应用质量和用户保留能力的重要指标。 本文为您介绍如何基于Dataphin规范建模结合SQL加工能力进行留存率指标开发。
161 11
|
Python
Python 头哥实验题目(一、二、三)
Python 头哥实验题目(一、二、三)
1946 0
|
11月前
|
存储 前端开发 Java
浅谈Java中文乱码浅析及解决方案
浅谈Java中文乱码浅析及解决方案
301 0
|
前端开发 JavaScript 开发者
fuse.js前端搜索简单使用的三个案例
通过这三个例子可以看出,Fuse.js 是一个功能丰富、易于实现的前端搜索库。它使开发者能够便捷地实现从基础到高级的搜索功能,无论是简单的列表搜索还是实时的搜索建议,都能够高效、精确地提供给用户所需的信息。
522 0
|
缓存 安全 固态存储
计算机提高计算机运行速度
【8月更文挑战第4天】
240 1
|
消息中间件 数据安全/隐私保护 RocketMQ
就软件研发问题之RocketMQ ACL 2.0的认证流程的问题如何解决
就软件研发问题之RocketMQ ACL 2.0的认证流程的问题如何解决
114 0
|
算法
【算法】模拟算法——数青蛙(medium)
【算法】模拟算法——数青蛙(medium)
100 0
|
资源调度 JavaScript 前端开发
将Elementui里的Table表格做成响应式并且和Pagination分页组件封装在一起(Vue实战系列)
将Elementui里的Table表格做成响应式并且和Pagination分页组件封装在一起(Vue实战系列)
750 2