我在查询opentsdb时试图找到一种获取数据点单位的方法。我已经在元数据中保存了度量单位,并且可以使用元数据查询来获取它,但这只是让我运行额外的查询来获取它。我想知道在我们进行查询(/ api / query)时是否有办法获取我们从opentsdb返回的数据中的单位。
答案 0 :(得分:0)
我认为您希望获得放入openTSDB的原始数据。如果是这样,openTSDB很难做到这一点。 openTSDB总是在同一时间戳聚合数据点。
如果你真的想要,你可以尝试kariosDB(openTSDB的一个分支),或者你可以尝试elasticsearch(我认为可以处理openTSDB可以处理的所有内容)
答案 1 :(得分:0)
OpenTSDB是时间序列数据库,即存储特定时间点的值。
它允许每个时间戳(最小时间间隔:1秒)和每行键(metric name, timestamp, tag=val
)只放置一个值。
建议1 : 您可以将单位作为标记值放置/写入,即单位:
当您查询(api/query
端点)时,您将获得完整的数据:
<metric name> <time stamp> <the value> tag1=val1 tag2=val2
例如:
db.bytes_sent 1287333217 6604859181710 unit=kB host=db1
db.bytes_received 1287333232 327812421706 unit=Mb host=db1
db.bytes_sent 1287333232 6604901075387 unit=MB host=db1