例如,存在诸如根分区利用率之类的timeseries数据。数据结构如下:
name: root_disk_utilizatoin
ip: 1.1.1.1
timestamp: 1234567890
value: 0.5
我们有数百万台服务器每隔几分钟报告一次这些数据。我的期望是找到每台服务器的最新数据。
第一个想法是将这些时间序列数据存储在一些存储器中,如elasticsearc或tsdb(influxdb/opentsdb)。然后查询存储以获得结果。但我担心表演。无论我选择什么存储,他们都必须执行以下两个步骤来归档结果。
按ip分组数据
按时间戳对数据排序并返回最新的数据
我想这将是一个非常昂贵的过程(花费了很多时间)。
所以我想这可能不是个好主意。
您是否有类似的要求,如何解决?
像XDB这样的timeseries db会有问题吗?
1条答案
按热度按时间xtupzzrd1#
您可以使用术语聚合和最大聚合的组合
添加索引数据、搜索查询和搜索结果的工作示例
索引数据:
搜索查询:
搜索结果: