influxdb 时序数据库新建/删除连续查询、数据插入

influxdb 时序数据库新建/删除连续查询

Dbs:{
      host: "192.168.0.1",
      port: 8086,
      database: "mydb",
      username: "root",
      password: "root"
    }
1、新建连续查询
const Influx = require('influx');
const influx = new Influx.InfluxDB(Dbs)
await influx.createContinuousQuery(<连续查询名称>, <sql>, <时序数据库名>, <执行间隔>)
//连续查询名称 ——> dataanalysis
//sql ——> select count(FYJYL) as nsywzerototal INTO dataanalysis.autogen.dataanalysis FROM mydb.autogen.processdata  where FYJYL = 0 group by time(1d),SBXLH fill(0)
//时序数据库名 ——> mydb
//执行间隔 ——> RESAMPLE EVERY 4h
2、删除连续查询
 const influx = new Influx.InfluxDB(Dbs)
 await influx.dropContinuousQuery(<连续查询名称>, <时序数据库名>)
3、查询
const influx = new Influx.InfluxDB(Dbs)
await influx.query(`select ...`).then(result=>{})
4、连续查询注意事项

(1)查询的内容字段不能一条连续查询插入到表中时,可以建多个连续查询,但不能含重复的字段,否则重复字段内容会被覆盖;
(2)插入表中的数据若时间与key字段相同时,其内容将被最新数据覆盖,即相同时间的相同key只有一条数据。

5、SQL直接执行

官网传送门:https://docs.influxdata.com/influxdb/v1.7/query_language/continuous_queries/
涉及到INTO知识点

SELECT_clause INTO <插入的表> FROM_clause [WHERE_clause] [GROUP_BY_clause]
#select count(FYJYL) as nsywzerototal INTO dataanalysis.autogen.dataanalysis FROM mydb.autogen.processdata  where FYJYL = 0 group by time(1d),SBXLH fill(0)

新建连续查询

CREATE CONTINUOUS QUERY <连续查询名称> ON <库名>
RESAMPLE EVERY <执行时间间隔> FOR 执行时间范围
BEGIN
  <cq_query>
END

RESAMPLE EVERY 30m FOR 60m ==> 即每隔30分钟计算一次60分钟内的数据

6、可视化新建连续查询

在这里插入图片描述
在这里插入图片描述

7、连续查询执行顺序问题

连续查询创建顺序即连续查询执行顺序,先创建的连续查询先执行;时序数据库持续插入数据,因此统计数据可能与实际存在误差(使用连续查询不可避免)。

8、数据插入

插入表没有将自动创建

influx.writePoints([{
	 measurement: 'table_name',//表名
	 tags:{code:4401},
	 fields: { time:'2022-12-01 14:00:00', value:100.02 } //字段
}])
await influx.query(`select ...`).then(result=>{
	console.log(result) // [{time:'2022-12-01 14:00:00',value:100.02,code:4401}]
})

参考:https://node-influx.github.io/class/src/index.js~InfluxDB.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值