什么是nested结构, 简单可以理解为是嵌套数据类型… 嵌套类型需要实现定义好mapping. 

需要注意的是,默认的嵌套形式的kv并不是nested类型的,要提前定义mapping .


文章有些地方写的不严谨,后期会更新, 请查看原文链接   http://xiaorui.cc/?p=2376

下面是一个nested的数据样例, 我们首先手动指定mappings nested


然后我们开始扔数据


然后进行查询,我们先用传统的方式查询. 我们查询的目的是匹配liufengyun,但是他的返回结果肯定不是我们所需要的.


那对于nested该如何查询数据,需要在query filter里,指定path。

注意其中几个参数:

1 path 定义了嵌套的对象,可以是列表

2 score_mode 定义里嵌套对象计算的分数与当前查询分数的处理方式,有avg,sum,max,min以及none。none就是不做任何处理,其他的看字面意思就好理解。

3 query/filter是查询的方式,内部定义了针对嵌套对象的查询,注意内部的查询一定要是用全路径, 比如 user.first user.last .


对于elasticsearch nested就说这么多了….



对Python及运维开发感兴趣的朋友可以加QQ群 : 478476595 !!!

另外如果大家觉得文章对你有些作用!   帮忙点击广告. 一来能刺激我写博客的欲望,二来好维护云主机的费用.
如果想赏钱,可以用微信扫描下面的二维码. 另外再次标注博客原地址  xiaorui.cc  ……   感谢!

大数据ElasticSearch遇到ignore_above问题

    以前有一个叫朱伟大神的人跟我聊过,凡是所谓的坑,都是因为你没看他的源码或者文档导致的。 这话听起来有道理,但问题ElasticSearch的各种文...

阅读全文

[译文] Elasticsearch的任务管理api

心血来潮,又翻译了elasticsearch的一篇文章。 今才发现elasticsearch也有了任务管理api。这任务管理可以理解为mysql的show processlist; kill %task_id ...

阅读全文

使用elasticsearch的scroll和scan解决深度分页问题

使用ElasticSearch的scroll和scan解决大数据集合问题 内容概要, 主要是解决在ElasticSearch中大数据集合的查询需求,可以使用scroll scan可以较轻松的遍历el...

阅读全文