Timescaledb 时序数据查询解决时间断档的插值方法 #9
jamiesun
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
案例
在对网络设备的ping检测中, 由于网络不可达或者服务器宕机导致一段时间数据库里没有数据, 在前端查询数据展示曲线图时, 对于空白时间图表不能正确的展现, 对于空白时间会产生一个自动曲线, 而这不是期望的结果。
因此需要解决一个问题, 要对空白时间段在查询时自动插入一个值, 这个值需要根据实际情况, 比如上面的 ping 检测需求, 对于延时我们可以插0值,但是对于丢包值,插入100更合适, 这样我们可以看到空白时间段会以明显的丢包来展示, 我们可以一眼看出这个时间段的异常数据情况
SQL 范例
这里我们使用 time_bucket_gapfill 代替time_bucket, 默认会自动为空白时间赋值null, 我们通过 coalesce 来将 null值替换为我们想要的插值。
扩展用法
timescaledb 还提供了自动计算插值的方法, 具体可以参考 TimescaleDB 插值
Beta Was this translation helpful? Give feedback.
All reactions