ElasticSearch跨所有字段搜索多个索引

时间:2015-02-12 15:44:35

标签: javascript json elasticsearch

我正在使用查询ElasticSearch 1.4的用户界面(HTML + JavaScript) 现在,使用以下URL将搜索跨越多个索引: http://localhost:9200/_all/_search 但是为了查询所有字段,我必须在POST请求中发送以下JSON: 格式化的JSON数据

{  
   "query":{  
      "multi_match":{  
         "query":"monitor",
         "type":"most_fields",
         "fields":[  
            "First Name",
            "Last Name",
            "ProductName",
            "Organization",
            "Description"
         ]
      }
   },
   "highlight":{  
      "fields":{  
         "*":{  

         }
      }
   }
}

问题出现是因为我不想指定搜索字段。我想要求ElasticSearch搜索所有文档的所有可用字段。 这可能吗?

1 个答案:

答案 0 :(得分:1)

个人不建议在没有明确指定索引和字段列表的情况下对所有索引和字段运行查询,因为这可能会对集群性能产生负面影响。

但是如果您需要,可以尝试使用query_string查询:

示例:

  "query": {
        "query_string": {
           "fields": ["*"],
           "query": "monitor",
           "lenient":true,
           "use_dis_max" : false           
        }
 }