ELK,萌萌哒

elasticsearch 模糊查询

Elasticsearch | 作者 rabbitzjw | 发布于2022年04月03日 | 阅读数:1396

场景描述:字段类似微信昵称,想要支持模糊查询,据个人理解,方法大概有3种:

1. wildcard来实现,但是性能较差
2. ik自定义词典来实现
3. ngram分词器来实现 缺点就是数据偏大

目前有两个问题想问下各位大神:
1. 是否有更好的解决方式?
2. 相同结构,百万级数据量下方法1和3 QPS差距明显么?有没有做过压测的朋友告知下
已邀请:

envy666

赞同来自:

对于微信昵称这种短字段,百万级别其实无所谓,wildcard没你想象的那么差,ngram也可以,不需要想太多

liujiacheng

赞同来自:

几百万的数据随便都可以吧。
我这边线上有个索引,70亿的数据,使用wildcard查询**川**,两秒。
 

JimmyGao

赞同来自:

或者存储成keyword,用prefix搜索

要回复问题请先登录注册