elasticsearch,Curl,elasticsearch" /> elasticsearch,Curl,elasticsearch" />

是否有任何方法可以使用curl查询elasticsearch以获取多个文档中的字段值?

是否有任何方法可以使用curl查询elasticsearch以获取多个文档中的字段值?,curl,elasticsearch,Curl,elasticsearch,我正在寻找curl查询来查询索引中的多个唯一文档ID。正如我们所知,文档的实际数据存储在“\u source”下,但到目前为止,我能够在源中查询所需字段的单个文档\u id,但不能查询包含筛选器的多个文档。我认为“mget”在这里会很有帮助 获取///\u源 例如- curl -XGET "http://localhost:9200/my_index/document/id/_source?_source_include=_id_batch" -d "{"query":{"bool":{"m

我正在寻找curl查询来查询索引中的多个唯一文档ID。正如我们所知,文档的实际数据存储在“\u source”下,但到目前为止,我能够在源中查询所需字段的单个文档\u id,但不能查询包含筛选器的多个文档。我认为“mget”在这里会很有帮助

  • 获取///\u源
例如-

curl -XGET "http://localhost:9200/my_index/document/id/_source?_source_include=_id_batch" -d "{"query":{"bool":{"must":[{"term":{"_doc_date":"20150122"}}],"from": 0,"fields":[],"size":5,"sort":[]}" > "C:\Users\user.id\Downloads\output.json"
样本指数-


实际上有mget API:

使用您的示例,您可以执行以下操作:

curl 'localhost:9200/my_index/_mget' -d '{
    "docs" : [
        {
            "_type" : "document",
            "_id" : "1"
        },
        {
            "_type" : "document",
            "_id" : "2"
        }
    ]
}'

谢谢你的回复,斯莱纳,我也看了那一页,做了一些基础工作。但是我想做的每件事,看起来我每次都必须手动插入id。因此,我一直在寻找一个更健壮的解决方案,因为样本只有几个文档,但我的产品设计大约有90k。我也在研究一些脚本,也许可以在这里有所帮助。你有没有想过空的搜索API?默认情况下,空搜索将返回所有结果。例如:
curl'localhost:9200/my\u index/document/\u search?size=1000'
。您可以增加大小以获得更多的结果(但需要更长的时间才能完成)。我这样做了,但这样做后,我无法捕获整个批处理ID集。我试图指定“字段”:以及筛选条件,但只让筛选部分工作,而不是从源获取批次id。如果我正确理解您的问题,您有文档,并且每个文档都有巴赫id。您需要筛选一些文档,并获取其巴赫id吗?如果我是正确的,您应该使用聚合bach_id,它将返回您所有唯一的bach_id