Python环境下influxdb数据的导入与导出

influxdb数据导入(csv文件)

1.先去掉csv表头信息

test.to_csv('test.csv', header=None, index=False)

2.csv文件转化为influx接受的txt文件

import time
import os
import csv
t = time.time()
with open('test.txt', 'w') as f1:
    f1.write('# DDL\n')
    f1.write('CREATE DATABASE testx_v1\n')
    f1.write('\n# DML')
    f1.write('\n# CONTEXT-DATABASE: testx_v1')
    for i in range(1,2):
        s = str(i)
        with open('test.csv') as csvfile:
            readcsv = csv.reader(csvfile)
            for row in readcsv:
                f1.write('\ntestx_v1')
                f1.write(' 103=' + row[1])
                f1.write(',104=' + row[2])
                f1.write(',refrigerantLowTemp=' + row[33])
                f1.write(',steam_pressure_target=' + row[34])
                f1.write(' ' + row[0])
    f1.write('\n')
f1.close()

注意:

  •  DDL与DML之间需要至少空一行
  • f1.write('\ntestx_v1')表示写入的measure,实际不会在数据库中看到
  • f1.write(' 103=' + row[1])前面的字段需要空一格,表示开始field字段的写入
  • f1.write(' ' + row[0])前面的字段也需要空一格,表示开始时间字段的写入,此处时间使用纳秒ns

3.将生成的txt文件复制到influxdb所在的linux环境

4.使用dos2unix转化txt文件

dos2unix test.txt

注意:

  • 若linux环境没有此命令,需要安装dos2unix软件

5.使用influx命令存储test.txt中的数据

influx -import -path=test.txt -precision=ns &> influx.log

 注意:

  • 将运行日志保存在influx.log中

6.查验存储是否成功

 

influxdb数据导出

注意:

  • 导出的csv文件,每隔10000行会打印一次表头信息,后续做数据分析时,需要删除此些行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

o0xgw0o

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值