在 Mapping 里面,将 dynamic 参数设置成 strict 可以拒绝索引包含未知字段的文档。 此条 Tips 由 medcl 贡献。

关于ES里面的span查询

Elasticsearch | 作者 Charele | 发布于2024年04月25日 | 阅读数:1299

span查询,实质上不难理解。
不过我刚开始看到的时候,非常非常地蒙,
实在整不明白它到底出来的结果是什么意思。
 
 看ES官网,没有详细地解释,寥寥数字,
只给一个查询DSL代码,连示例结果都没有。
 
 网上很多文章,感觉这里是一个很好的参考。
https://blog.csdn.net/weixin_3 ... 28640
 最后,关于masking查询,他给出了一个Lucene源码中的的示例,
他没有对这个示例作出解释,包括masking查询的意义,还有这个slop=-1的意思
1111.png

 
这里的slop=-1,并不是顺序倒过来的意思。
比如  "aaa xxx bbb"
你用Near("aaa", "bbb", 0)查不到,
因为中间隔了一个词, 所以用Near("aaa", "bbb", 1)就可以查到,
但你用Near("bbb", "aaa", -1)并不能查到这个文档
 
另外,图中这个很怪异的查询用法,
在ES中被用在match_phrase_prefix查询当中,,,
已邀请:

Charele - Cisco4321

赞同来自:

https://blog.csdn.net/iteye_14 ... 77730
这里的文章,我感觉他说得不太准确吧,
1111.png


1 SpanTermQuery没有任何作用?
我的看法相反,SpanTermQuery是最基础最重要的span查询
 
2 不知道是不是版本原因,
现在版本中,SpanTermQuery和TermQuery一模一样,
如果你分别执行两个查询,结果,打分,完全一样

要回复问题请先登录注册