elasticsearch(es)获取指定索引(index)的所有文档的 id 的方法,这里的 id 指的是 es 文档内部定义的 _id。
推荐方法
具体方法如下:
GET {index}/_search
{
"query" : {
"match_all" : {}
},
"stored_fields": []
}
我们可以看出 query 相关语句中指定了 stored_fields
参数,该参数本质是 lucene 里的概念,其主要用于行存储文档需要保存的字段内容,每个文档的所有 stored_fields 保存在一起,在查询请求需要返回字段原始值的时候使用。
上述示例,输出类似如下:
{ "took": 3, "timed_out": false, "_shards": { "total": 8, "successful": 8, "skipped": 0, "failed": 0 }, "hits": { "total": 624, "max_score": 1, "hits": [ { "_index": "qa", "_type": "qa", "_id": "1423295", "_score": 1 }, { "_index": "qa", "_type": "qa", "_id": "1423272", "_score": 1 }, { "_index": "qa", "_type": "qa", "_id": "1423164", "_score": 1 } ... ] } }