如何通过elasticsearch中的数组索引获取特定元素

时间:2017-07-24 06:49:53

标签: json elasticsearch logstash kibana

说我存储了这个文件。

示例性数据

{"name": "haris","projects": [{"title": "Splunk"},{"title": "QRadar"},{"title": "LogAnalysis"}]}

{"name": "khalid","projects": [{"title": "MS"},{"title": "Google"},{"title": "Apple"}]}

{"name": "Hamid","projects": [{"title": "Toyota"},{"title": "Honda"},{"title": "Kia"}]}

用于映射的代码

PUT index_name
{
   "mappings": {
      "iterations_type": {
         "properties": {
            "projects": {
               "type": "nested",
               "include_in_parent": true
            }
         }
      }
   }
}

我的问题:我希望将“projects”数组的第二个元素与某个特定名称相对应,例如“name”:“khalid”。

到目前为止我尝试了什么: 我是ES新手,我搜索论坛的答案,一些建议指定“项目”键的映射。我也尝试过,我面临的问题是 1.当我创建空索引时,首先指定映射然后插入数据,我得到一个像“reason”这样的错误:“对象映射[”项目“]不能从嵌套更改为非嵌套”
2.当我创建空索引时,首先插入数据然后指定映射,我得到和错误像“”reason“:”index [<>]已经存在“ ard让我明确指定每个字段的映射

提前致谢

0 个答案:

没有答案