Influxdb 的更新,删除,怎么搞。

 对于你的业务中出现 Influxdb 的更新和删除 我只能说最好不要去搞!!! 

查看官网得知InfluxDB 虽然提供了和SQL 类似的数据库语句,但是对于更新数据和删除数据是不支持的。这里说的不支持是SQL 不支持。举个例子你就不嫌我啰嗦:

  如下数据:记录某个坐标点的温度值,现在我想修改36分那个时间点的温度值为22°。关系型数据库你会这么搞:update XX from XX where time ='36分'。

Time                       temperature    longitude latitude
2018-10-27T06:35:20.901Z       20.1         120.33   23.33
2018-10-27T06:36:20.901Z       21.2         120.33   23.33
2018-10-27T06:37:20.901Z       25.3         120.33   23.33
2018-10-27T06:38:20.901Z       21.3         120.33   23.33

那influxdb 没有这种语句咋整?在这里你只能重新插值:

insert xx_measurement名,longitude=120.33,latitude=23.33 temperature=22 154080088649461462

Influxdb 的更新,删除,怎么搞。_第1张图片

我们知道tags 和 time  是判断时序数据库点(point)的唯一性的标准。相当于关系型数据库的复合主键。所以当我们insert的time和tags  跟原有的数据重复时,就会覆盖掉原有数据的 field value 也就temperature。

既然官方都不提供 update delete 说明 这个数据库 比较适合的场景是insert select 。所以说最好不要把频繁更新的业务放到这里来做。对于删除,influxDb 提供了RP 即数据的保留策略。详看https://blog.csdn.net/m0_37163942/article/details/84522894

你可能感兴趣的:(数据库专题,Influxdb时序数据库)