2014-02-13 30 views
4

随着Elasticsearch我知道我可以做一些很好的时间序列数据的查询,并获得平均/最大等采用百分/位

http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-facets-statistical-facet.html

ES的时间序列数据是否有可能虽然仅包括9​​0%百分位数在这个计算中,特别是在Kibana中?

有关如何做到这一点的任何想法?

+0

更新:对于任何感兴趣的人,我发现此文章后:http://blog.qbox.io/elasticsearch-aggregations-1-1-0?utm_content = buffer9f437&utm_medium = social&utm_source = twitter.com&utm_campaign = buffer –

回答

5

Elasticsearch目前不支持百分位数(包括中位数)。

百分比比分布式环境中的统计更难计算。假设你有2个碎片。如果你问他们两人的价值和数量的总和,你就可以知道全球平均值:($sum1 + $sum2)/$(value_count1 + $value_count2)。另一方面,如果要计算中位数,唯一准确计算它的方法是从两个分片中获得所有值,对它们进行排序并取中间值。这将需要大量的内存和网络带宽。

幸运的是,有算法可以计算出有限内存使用情况下百分位数的近似值,并且我们特别关注tdigest,因此未来版本的Elasticsearch很可能会支持(近似)百分位数。