# 原因

Grafana 作图时折线图中点的数据量太多,聚合粒度太细,导致需要从 ES 拿去的数据过多

# 提给 Grafana 的建议

建议 Grafana 可以使用 scroll 查询,能多次取数据整合

# 自身优化

方法一: 作图时尽量不要指定具体 interval 变量,如果你指定的 interval 粒度很小,比如每几分几秒就要展示一个点,当时间范围选择很大时,很容易出现 buckets 溢出

方法二: 作图时,比如 Terms 里,指定好 Min Doc Count 为 1,不要为 0,这样会减少不必要的 buckets 获取

方法三: 在 kibana 页面,进入 Dev Tools,在 tools 里执行 put 请求,设置可查询的 buckets 的最大数量,因为默认是 10000,这里可以调整为 100000 或更多,比如

PUT _cluster/settings
{
  "transient": {
    "search.max_buckets": 100000
  }
}

方法四(参考): 看 github 有个讨论里说设置 Grafana Query options 里 Min interval 和 Max data points 也会提高一定性能

# 参考:

https://discuss.elastic.co/t/increasing-max-buckets-for-specific-visualizations/187390

https://www.elastic.co/guide/en/elasticsearch/reference/master/search-aggregations-bucket.html

https://www.elastic.co/guide/en/elasticsearch/reference/master/search-settings.html#search-settings-max-buckets

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

Jalen Chu 微信支付

微信支付

Jalen Chu 支付宝

支付宝

Jalen Chu 公众号

公众号