我在Elasticsearch中有一个小数据库,出于测试目的,我想把所有记录拉回来。我正在尝试使用表单的URL…
http://localhost:9200/foo/_search?pretty=true&q={'matchAll':{''}}
有人能给我你要用来完成这个的URL吗?
我在Elasticsearch中有一个小数据库,出于测试目的,我想把所有记录拉回来。我正在尝试使用表单的URL…
http://localhost:9200/foo/_search?pretty=true&q={'matchAll':{''}}
有人能给我你要用来完成这个的URL吗?
当前回答
Size参数将显示的命中数从默认值(10)增加到500。
http://localhost:9200/[indexName]/_search?pretty=true&size=500&q=*:*
将from逐步更改为获取所有数据。
http://localhost:9200/[indexName]/_search?size=500&from=0
其他回答
调整大小的最佳方法是在URL前面使用size=number
Curl -XGET "http://localhost:9200/logstash-*/_search?size=50&pretty"
注:此尺寸可定义的最大值为10000。对于任何高于10,000的值,它希望您使用滚动函数,这将最大限度地减少对性能的影响。
使用server:9200/_stats也可以获得所有别名的统计信息。就像每个别名的大小和元素数量一样,这非常有用,并提供了有用的信息
官方文档提供了这个问题的答案!你可以在这里找到它。
{
"query": { "match_all": {} },
"size": 1
}
您只需将size(1)替换为您想要看到的结果的数量!
如果仍然有人像我一样寻找从Elasticsearch中检索的所有数据,下面是我所做的。此外,所有的数据意味着,所有的索引和所有的文档类型。我使用的是Elasticsearch 6.3
curl -X GET "localhost:9200/_search?pretty=true" -H 'Content-Type: application/json' -d'
{
"query": {
"match_all": {}
}
}
'
Elasticsearch参考
通过提供大小,elasticSearch将返回的最大结果是10000
curl -XGET 'localhost:9200/index/type/_search?scroll=1m' -d '
{
"size":10000,
"query" : {
"match_all" : {}
}
}'
在此之后,您必须使用Scroll API来获取结果并获得_scroll_id值,并将此值放入scroll_id中
curl -XGET 'localhost:9200/_search/scroll' -d'
{
"scroll" : "1m",
"scroll_id" : ""
}'