ElasticSearch如何设置某个字段不分词浅析
作者:方东信 发布时间:2023-01-29 07:22:30
标签:elasticsearch,不分词
先说结论:字段类型更改为 'keyword'
elasticSearch官方文档中创建index代码如下
PUT /my_store
{
"mappings" : {
"products" : {
"properties" : {
"productID" : {
"type" : "string",
"index" : "not_analyzed"
}
}
}
}
}
由于es官方文档版本基于2.x编写,而本人安装版本为6.6 在执行如上代码过程中出现如下错误
No handler for type [string] declared on field [productID]
这里报错是因为ElasticSearch5.x以上版本没有string类型了,换成了text和keyword作为字符串类型。
字符串 - text:用于全文索引,该类型的字段将通过分词器进行分词,最终用于构建索引
字符串 - keyword:不分词,只能搜索该字段的完整的值,只用于 filtering
此时我们将文档中代码更改为如下
PUT /my_store
{
"mappings" : {
"products" : {
"properties" : {
"productID" : {
"type" : "keyword",
"index": true
}
}
}
}
}
创建成功,此时我们进行查询试试看
GET /my_store/products/_search
{
"query" : {
"constant_score" : {
"filter" : {
"term" : {
"productID" : "XHDK-A-1293-#fJ3"
}
}
}
}
}
来源:https://www.cnblogs.com/cfas/p/16142883.html
0
投稿
猜你喜欢
- 本文介绍了C# 用什么方法将BitConverter.ToString产生字符串再转换回去,分享给大家,具体如下:byte[]
- 目前在做项目中有处理图片的部分,参考了一下网上案例,自己写了一个获取内容中的图片地址的方法。 一般来说一个 HTML 文档有很多标
- LiveData简介在日常安卓开发中,一些耗时的 * 如列网络请求,数据库读写都不能在主线程执行,必须开一条子线程去执行这些耗时操作,但我们往
- 详解Android Webview加载网页时发送HTTP头信息当你点击一个超链接进行跳转时,WebView会自动将当前地址作为Referer
- 本文实例为大家分享了C# Winform选项卡集成窗体的具体代码,供大家参考,具体内容如下知识要点:利用反射动态的加载窗体到对应的TabPa
- 我先解释一下什么叫IO流:I:指的是InputStream,这是一个抽象类,最常用的子类是FileInputStreamO:值得是Outpu
- Android Studio软件下载地址如下:下载:http://www.android-studio.org/index.php/down
- 这篇文章主要介绍了spring boot如何指定启动端口,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 这篇文章主要介绍了跨域解决方案Jsonp原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以
- 1、fragment简介我对fragment的理解是基于activity的,对于大多数的基本开始发时,我们最先遇到的就是用activity来
- 1.前言Lifecycle是Google推出的一系列的框架组件的其中一个,主要是用来感知Activity和Fragment的生命周期。本文主
- 1、来源random.nextInt() 为 java.util.Random类中的方法; Math.random() 为 java.lan
- KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普
- IO的本质IO的作用就是从外部系统读取数据到java程序中,或者把java程序中输出的数据写回到外部系统。这里的外部系统可能是磁盘,网络流等
- Unity3D游戏引擎介绍Unity3D是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三
- 一、背景1.1、前言当我们写好代码并测试功能符合要求时,有可能每天都要执行这个程序(比如我写了一个爬虫脚本,每天定时运行获取我想看的小说更新
- 文章描述这个效果可能很多人都在抖音看到过,即把一个短视频,转成数字、字母等乱码组成的形式进行播放。开发环境.NET Framework版本:
- 今天无意中发现一个圆形进度,想想自己实现一个,如下图:基本思路是这样的:1.首先绘制一个实心圆2.绘制一个白色实心的正方形,遮住实心圆3.在
- 概述1、邮件相关的标准厂商所提供的 JavaMail 服务程序可以有选择地实现某些邮件协议,常见的邮件协议包括:SMTP(Simple Ma
- 1、引入依赖<dependency><groupId>org.springframework.boot</gr