elasticsearch - 在elasticsearch中搜索多种类型

标签 elasticsearch

我有一个用例,其中同一索引中有两种不同的类型。这两种类型都有不同的结构和映射。

我需要使用不同的查询 DSL 同时查询这两种类型。

如何构建我的查询 DSL 以同时查询超过一种类型的相同索引。

我在 https://www.elastic.co/guide/en/elasticsearch/guide/current/multi-index-multi-type.html 查看了 elasticsearch 指南但这里没有适当的解释。根据这个,即使我在请求中设置了两种不同的类型:

/index/type1,type2/_search

我将不得不发送相同的查询 DSL。

最佳答案

您需要使用 multi-search API_msearch 端点

curl -XGET localhost:9200/index/_msearch -d '
{"type": "type1"}
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10}
{"type": "type2"}
{"query" : {"match_all" : {}}, "from" : 0, "size" : 10}
'

注意:确保用换行符分隔每一行(包括最后一行)

您将按照与请求相同的顺序获得两个响应

关于elasticsearch - 在elasticsearch中搜索多种类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36793682/

相关文章:

elasticsearch - Kibana:报告不同的日期间隔,例如今天,昨天,上周

elasticsearch - Elasticsearch中的条件过滤

scala - Elastic4s Ngram映射

elasticsearch - Elasticsearch 中的空值映射

elasticsearch - 如何更新文档集的routingId

elasticsearch - 如何快速将json记录批量上传到elasticsearch?

python - CentOS 6.4 + Haystack (2.1.0) + ElasticSearch (1.2.1) = SearchParseException ...解析失败

c# - Elasticsearch 中更新了文档ID

ElasticSearch:如何查询精确的嵌套数组

elasticsearch - fluentd 和 grok 解析器,添加一个键值