es like模糊匹配_elasticsearch 7.x 如何满足mysql中的模糊查询功能(like)-程序员宅基地

技术标签: es like模糊匹配  

业务场景:筛选项原功能是用mysql左模糊进行过滤查询,现业务要用es,怎么样才能满足原功能,又不损性能。

elasticsearch中有关于模糊查询的操作:wildcard

文档:https://blog.csdn.net/qq_22612245/article/details/82432107

另外的思路解决方案:使用分词

1、筛选项是中文类型

例:商品名称  :无糖麦芽糖口香糖

筛选这种,用中文分词即可满足业务场景

索引定义

"shopname": {

"analyzer": "ik_max_word",

"type": "text",

"fields": {

"raw": {

"type": "keyword"

}

}

}

2、筛选项是字母加数据类型

例:商品代码:abcde0001

因为在mysql中是左模糊,用户可能会筛abcde、abc、ab、abcde0、abcde0001,这种用中文分词就不能满足业务,而用es的wildcard性能不好,

综合考虑使用ngram分词器。

使用方法:

创建索引

{

"settings": {

"analysis": {

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39936310/article/details/111808586

智能推荐

《树莓派Python编程入门与实战》——3.2 检查你的Python环境-程序员宅基地

文章浏览阅读304次。本节书摘来异步社区《树莓派Python编程入门与实战》一书中的第3章,第3.2节,作者:【美】Richard Blum,更多章节内容可以访问云栖社区“异步社区”公众号查看3.2 检查你的Python环境树莓派Python编程入门与实战Raspbian发行版默认安装了Python第三版环境和一些必要的工具。下面是预装了的Python功能。Python..._怎么查树莓派是否有python环境?

工具IDEA 配置springboot+maven项目-程序员宅基地

文章浏览阅读81次。工具IDEA 配置springboot+maven项目 首先安装IDEA,至于怎么安装就不介绍了。。第一步 配置maven环境 首先安装maven,先在网上下载一个maven包。在IDEA的settings中Maven设置 点击USer settings file 文件夹正常的是空白 如图找到你下载的maven文件夹,引入setti..._maven项目怎么配置springboot

GSL 系列 5 — 向量和矩阵 2 — 向量 (vector)_gsl_vector *-程序员宅基地

文章浏览阅读1.3k次。文章目录0 写在前面1 向量 (vector)0 写在前面因为向量是构建于块之上,请先理解块,参见:GSL 系列 5 — 向量和矩阵 1 — 块 (block)1 向量 (vector)向量建构于块之上,添加了对块的切片描述,向量切片必须是内存空间中一组等间隔的元素,不同的向量可以创建于一个块之上,定义如下:// gsl_vector_double.htypedef struct {..._gsl_vector *

c语言 之求 Fibionacci 数列的前n个数_求fib序列c语言-程序员宅基地

文章浏览阅读1.9k次。Fibionacci数列有如下特点:前两个数都为1,从第三个数开始,该数是前两个数之和。即:F1=1;(n=1)F2=1;(n=2)Fn=Fn-1+Fn-2;(n>2)下面给出几种求法:解法一:#include int fib(int n){ int fib1 =1; int fib2 =1; int fib = 1; int i = 0; while (_求fib序列c语言

matlab aerospace模块,免费试用Aerospace Toolbox-程序员宅基地

文章浏览阅读302次。请选择其一AlabamaAlaska美属萨摩亚APO/FPO AAAPO/FPO AEAPO/FPO APArizonaArkansasCaliforniaCaroline IslandsColoradoConnecticutDelawareDistrict of ColumbiaFlorida格鲁吉亚关岛HawaiiIdahoIllinoisIndianaIowaKansasKentuckyLo..._aerospace toolbox的使用

Google构建VR/AR生态系统标准“双平台”,高性能传感器同样需验证-程序员宅基地

文章浏览阅读106次。集微网消息,近几年以VIVE/Oculus Rift为代表的VR产品的热销,带动了VR市场的兴起,同时随着去年AR游戏的迅速普及和今年春节前支付宝上线了AR实景红包,引爆AR市场,VR/AR已经进入了人们的日常生活。根据投资银行Digi-Capital预测,至2020年,全球VR与AR市场规模将达到1500亿美元。IDC公司近期预测,中国VR市场将在20..._谷歌为开发者提供的俩个vr ar平台是

随便推点

GPIO 口的输入,输出模式及其说明_gpio_mode_in-程序员宅基地

文章浏览阅读4.2w次,点赞65次,收藏351次。GPIO端口各种模式的区别(1)GPIO_Mode_AIN 模拟输入(2)GPIO_Mode_IN_FLOATING 浮空输入(3)GPIO_Mode_IPD 下拉输入(4)GPIO_Mode_IPU 上拉输入(5)GPIO_Mode_Out_OD 开漏输出(6)GPIO_Mode_Out_PP 推挽输出(7)GPIO_Mode_AF_OD 复用开漏输出(8)GPIO_Mode_A..._gpio_mode_in

CSS的三种引入方式_css 的三种引入方式-程序员宅基地

文章浏览阅读3k次,点赞3次,收藏14次。CSS的引入方式共有三种:行内样式、内部样式表、外部样式表。_css 的三种引入方式

javascript用js简单的实现电子时钟_4、编写程序,实现电子时钟效果,要求每隔1秒获取一次当前时间,并提供一个按钮控制-程序员宅基地

文章浏览阅读3.6k次,点赞3次,收藏12次。<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</title><!--给div一个简单样式--><..._4、编写程序,实现电子时钟效果,要求每隔1秒获取一次当前时间,并提供一个按钮控制

HIDL最全编译流程_如何编译hidl-程序员宅基地

文章浏览阅读2.1w次,点赞22次,收藏151次。想了解HIDL介绍的可以参考《HIDL概述》,本篇文章主要介绍HIDL的详细编译流程及简单的客户端应用(C++跟Android客户端的应用)。一、准备工作整一套源码,Android O或者Android P的 保证全套代码已经全编译,原生代码全编译命令source build/envset.sh lunch make 3、hidl-gen工具已经安装,安装命令make h..._如何编译hidl

jupyter notebook在一个.ipynb中调用另一个文件里的函数-程序员宅基地

文章浏览阅读873次。import一个路径解析的.py模块参考资料:http://blog.csdn.net/wangjian1204/article/details/67633614转载于:https://www.cnblogs.com/HITSZ/p/7099872.html_ipynb可以调其它python里的函数吗

WP7基础学习---第六讲-程序员宅基地

文章浏览阅读81次。WP7--6本节主讲:Silverlight Toolkit for windows phone控件UserControl控件Silverlight Toolkit资源下载:http://silverlight.codeplex.com/(注:近期有查到一个新下载地址:http://silverlight.codeplex.com/)工具(控件集):1.Contextmenu;2....