问:scripted_metrc有什么特点?
答:
问:scripted_metric如何使用?
答:
DELETE /scripted_metric_test PUT /scripted_metric_test { "mappings": { "properties": { "type": {"type": "integer"}, "num": {"type": "integer"} } } } POST /scripted_metric_test/_bulk {"index": {"_id": 1}} {"type": 1, "num": 3} {"index": {"_id": 2}} {"type": -1, "num": 7} {"index": {"_id": 3}} {"type": 1, "num": 5} {"index": {"_id": 4}} {"type": -1, "num": 9} {"index": {"_id": 5}} {"type": 1, "num": 1} GET /scripted_metric_test/_search { "size": 0, "aggs": { "scripted_metric_aggs": { "scripted_metric": { "init_script": "state.cals=[]", "map_script": "state.cals.add(doc.type.value == 1 ? doc.num.value * params.param1 : doc.num.value * params.param2)", "combine_script": "int sum = 0; for (n in state.cals) { sum += n } return sum", "reduce_script": "int fsum = 0; for (s in states) {fsum += s } return fsum", "params": { "param1": 3, "param2": 5 } } } } } # 结果 { "took" : 16, "timed_out" : false, "_shards" : { "total" : 1, "successful" : 1, "skipped" : 0, "failed" : 0 }, "hits" : { "total" : { "value" : 5, "relation" : "eq" }, "max_score" : null, "hits" : [ ] }, "aggregations" : { "scripted_metric_aggs" : { "value" : 107 } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)