InfluxDB

分类下相关文章

哪些数据不适合存储到 InfluxDB

例如,硬件设备会同时上报传感器的数值,以及硬件操作历史记录。 目前传感器的数值都存储在 InfluxDB 2.0 中,但是操作历史记录想了想还是更适合存储在 MySQL 中。 操作历史为何要存 MySQL 而不是 InfluxDB 数据为字符串,而非数值,不适合 InfluxDB 存储 数据不能删除,没有过期这一说 数据不需要聚合 同一秒内可能有大量操作,后面操作如果存储会覆盖掉前面存储的,这个不合逻辑 ...

阅读全文...

InfluxDB 2.0 查询一个 tag 的所有 values

例如,我想查询 InfluxDB 中一个 bucket 中, 指定 measurement 里,所有的设备 Id (tag)。 flux 查询 import "influxdata/influxdb/schema" schema.measurementTagValues( bucket: "sunzhongwei.com", tag: "deviceId", measurement: "sunzhongwei.com" ) golang 查询 但是如何在 golang 中执行这个查询呢? 感觉 qu ...

阅读全文...

InfluxDB 2.0 数据备份恢复,导出/导入

第一次物联网项目中使用 InfluxDB 2.0,心里最没底的就是数据安全性问题。 而且在 WSL Ubuntu 中有重启之后,永远无法启动的问题,除非清空数据。 所以,必须在线上生产服务器上反复测试数据备份流程。 InfluxDB 数据备份 influx backup 命令格式: influx backup <backup-path> -t <root-token> root token 在哪里获取? 官方文档的说明是: The root authorization token (the token created for the first user in th ...

阅读全文...

InfluxDB 2.0 查询结果,pivot 使一个 table 包含多个 field

我的需求 在 Antd Pro 后台 table 列表,每行数据对应 InfluxDB 一个 measurement tag 一个时间点所有 field 数据。 例如: 一行数据为,一个网站指定网页在某一分钟的 UV,PV。下一行数据为下一分钟的相应数据。 InfluxDB 2.0 默认的返回 table 是怎样的 先写入测试数据,假设 org 为 sunzhongwei.com,bucket 也是 sunzhongwei.com。 里面的: measurement 分为两个 sunzhongwei.com 和 google.com。 tag:page 有两个值 home 和 tool,代表 ...

阅读全文...

InfluxDB 2.0 的数据查询语法

目标 查询最近的50条数据。可以分页,符合 Antd Pro Table 的显示规范。 查询指定时间段内的数据。 在时间跨度大的情况下,可以聚合数据,避免取出的数据过多。 指定 field key 查询数据,单 field,多 field golang sdk 相关的查询方法使用 Flux Flux 是 InfluxDB 2.0 引入的一门查询语言,号称借鉴了 Js 的语法。 相关英文单词 influx: n. 流入;汇集;河流的汇集处 flux: n. 流量;变迁;不稳定;流出; vt. 使熔融;用焊剂处理; vi. 熔化;流出 mean: 平均值 aggregate: 聚合 down ...

阅读全文...

InfluxDB 2.0 在 WSL 1 Ubuntu 中 cannot allocate memory

在 Windows 10 WSL 1 Ubuntu 中启动 InfluxDB 2.0,报错: 2021-06-11T08:09:00.609157Z error Failed to open engine {"log_id": "0UfXiZaG000", "error": "cannot allocate memory"} Error: cannot allocate memory 在 Github Issue 中找到了一个类似的问题: https://github.com/influxdata ...

阅读全文...

Golang 写入数据到 InfluxDB 2.0

Golang SDK https://github.com/influxdata/influxdb-client-go 生成 Token 在 InfluxDB UI 后台,可以手动生成 Token。而且里面有 Golang 的示例代码。 http://localhost:8086/ 安装依赖 go get github.com/influxdata/influxdb-client-go/v2 阻塞与非阻塞 WriteAPIBlocking: 阻塞 WriteAPI: 非阻塞。即异步写 异步写的机制,数据首先被异步写入到一个 buffer,满足一定条件时才会写入数据库。 条件为: 要么缓 ...

阅读全文...

InfluxDB 2.0 写入数据及查询

目标 了解 InfluxDB 2.0 写入数据格式 Line protocol Influx 命令行写入 如何查看写入的数据 TODO: Golang SDK 写入 写入数据格式 Line protocol https://docs.influxdata.com/influxdb/v2.0/reference/syntax/line-protocol/ 格式: <measurement>[,<tag_key>=<tag_value>[,<tag_key>=<tag_value>]] <field_key>=<fi ...

阅读全文...

InfluxDB 2.0 中 bucket 与 measurement 的区别

官方论坛的一个讨论: https://community.influxdata.com/t/whats-the-logical-connection-between-buckets-measurements-retention-policies-in-influxdb-2-0/15900 官方的一篇博客文章: https://www.influxdata.com/blog/data-layout-and-schema-design-best-practices-for-influxdb/ Separate data into buckets when you need to assign d ...

阅读全文...

Ubuntu 上安装 InfluxDB 2.0

环境 Ubuntu 20.04 WSL 开发环境 下载并安装 InfluxDB 到官方下载页: https://portal.influxdata.com/downloads/ 选择版本,及平台类型。例如,我这里选的就是 Ubuntu & Debian: wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.7-amd64.deb sudo dpkg -i influxdb2-2.0.7-amd64.deb 输出信息中,可以看到自动创建了 systemd 的配置: Created symlink /etc/sys ...

阅读全文...