On veux récupérer sous le nom de uniqDID
les différents kSID
contenus dans test/measures/
“size”: 0
est la pour limiter le nombre de document retournés a 0, car ce n'est pas les documents qui nous importent ici.
kSID.keyword est présent pour transformé le type text et keyword, car apparemment cela ne fonctionne que sur les keywords.
GET test/measures/_search { "size": 0, "aggs" : { "uniqDID" : { "terms" : { "field" : "kSID.keyword" } } } }
$params = [ "index" => "test", "type" => "measures", 'body' => [ "size" => 0, "aggs" => [ "uniqDID" => [ "terms" => [ "field" => "kSID.keyword" ] ] ] ] ]; $client = ClientBuilder::create()->build(); $result = $client->search($params);
{ "took": 35, "timed_out": false, "_shards": { "total": 5, "successful": 5, "skipped": 0, "failed": 0 }, "hits": { "total": 491426, "max_score": 0, "hits": [] }, "aggregations": { "uniqDID": { "doc_count_error_upper_bound": 0, "sum_other_doc_count": 0, "buckets": [ { "key": "PILL", "doc_count": 486154 }, { "key": "%YOURSID%", "doc_count": 3784 }, { "key": "toto", "doc_count": 73 } ] } } }