前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >InfluxDB和Grafana实现传感器数据的存储和可视化

InfluxDB和Grafana实现传感器数据的存储和可视化

原创
作者头像
MiaoGIS
修改2020-09-22 17:55:43
1.3K0
修改2020-09-22 17:55:43
举报
文章被收录于专栏:Python in AI-IOTPython in AI-IOT

InfluxDB介绍

InfluxDB是一个开源时序型数据库。它由Go写成,着力于高性能地查询与存储时序型数据。InfluxDB被广泛应用于存储系统的监控数据,IoT行业的实时数据等场景。

物联网应用

可以将物联网传感器数据保存在InfluxDB中,利用InfluxDB高性能地查询与存储时序型数据的优点,达到对传感器实时监控的目的。对于之前未使用InfluxDB的历史数据,转存到InfluxDB中。

下面例子历史数据按照日期存储在不同的pkl文件中,转存代码如下:

代码语言:python
复制
# -*- coding:utf-8 -*-

import pandas as pd
import os
from influxdb import  InfluxDBClient


def getPoint(x):
	result={'tags':{'DevID': x['DevID']}, 'fields':{'DevData': x['DevData'],  'voltage': x['voltage'] },'time': x['RecDateTime']}
	result['measurement']='monitor'
	return result

baseDir='E:/t'
pkls=os.listdir(baseDir)

client=InfluxDBClient()
client.switch_database('monitor')


for pkl in pkls[1:]:
    
    df=pd.read_pickle(os.path.join(baseDir,pkl))
    size=df.shape[0]
    index=0
    while(index< size):
        print(index,index+100)
        points=df[index:index+100].apply(getPoint,axis=1).to_list()
        client.write_points(points)
        print(points)
        index=index+100

使用Grafana来可视化InfluxDB中的时间序列数据。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • InfluxDB介绍
  • 物联网应用
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档