原创

influxdb 开发使用中的时间问题

最近三锤被一个时间问题搞得疲累不堪,怎么回事呢,是这样的。

在三锤的开发项目中使用到了influxdb用作数据存储,这里主要是存监控企业的电表数据。

什么业务的数据不重要,重点是,存入和取出后的值不一样,这是怎么回事呢。

原来influxdb的数据时间戳存入时只能存UTC时间。

那么你如果使用System.currentTimeMillis(); 或者使用java.util.Date的毫秒值来存数时,就会出现以下问题:

存入与取出的时间相差8小时。

刚开始三锤还以为是时区问题什么的,在经过了两天昏天黑地的研究后发现,

tz('Aria/Shanghai')什么的 根本需要。

你只需要在存数时给时间戳+28800000即8小时(8*3600000)

在取数时就正常了

where 条件中可以使用 time >= "2019-03-19 00:00:00"此类的时间格式

而使用sum、mean 等聚合函数后的时间戳为开始时间,非常方便

正文到此结束
本文目录