小编典典
因此,我认为您可以每天获取数据,可以为此使用date_histogram聚合。因此,您的两个请求可以在单个请求中完成。
这是代码,
client.prepareSearch("myindex").
setTypes("mytype").
setQuery(
QueryBuilders.filteredQuery(QueryBuilders.matchAllQuery(),
FilterBuilders.andFilter(FilterBuilders.termFilter("server","x"),
FilterBuilders.rangeFilter("date_time").from("fdate").to("tdate")))).
addAggregation(
AggregationBuilders.dateHistogram("dateagg").field("date_time").interval(DateHistogram.Interval.DAY)
.subAggregation(
AggregationBuilders.avg("cpu_agg").field("cpu_time")
)
)
.get();
您可以更改dateHistogram聚合中的间隔以适合您的需求。
如果要基于唯一性(也以毫秒为单位),则可以将术语聚合用于日期而不是日期直方图聚合。
基于多桶值源的聚合,其中动态构建桶-每个唯一值一个。
希望对您有所帮助,谢谢。
2020-06-22