InfluxDB小总结
1、InfluxDB的安装与配置
2、InfluxDB基本操作
3、Springboot对接InfluxDB
4、InfluxDB小总结
5、telagraf+influxdb+grafana搭建监控系统
6、Grafana的基本使用
写在前面
在学习InfluxDB的过程中有许多需要注意的点,此篇文章用于记录这些点,在以后的使用过程中不断补充完善
总结列表
- Filed value是有类型的,包括float,int,string,boolean类型,其中string类型最大为64KB
- Serieskey最大长度不超过65535字节
- 单个TSM file的最大size为2GB
- 每一个Database对应一个Retention Policy(RP),每个RP设置一个duration,shard会根据duration的大小制定shard生成策略,默认保留策略是永久,所以shard会以最长的7天生成一个
duration大小 | shard策略 |
---|---|
<2hour | 1h生成一个 |
>=2hour and <=6month | 1d生成一个 |
>6month | 7d生成一个 |
- influxdb的排序order by只能使用时间作为排序条件
- 每个shard含有wal,cache,tsm file,Compactor四个部分
名称 | 作用 |
---|---|
wal | 用于备份恢复,数据首先写到wal文件里 ,其数据与cache |
cache | 数据从wal中加载到内存 |
tsm file | 持久化内存数据到tsm file |
Compactor | 每秒监控cache数据大小,达到阈值后持久化到tsm file,另外可以合并多个小的tsm file |
当内存中的数据量达到一定限制(默认25M)或时间达到限制(默认10分钟),内存中的数据将会flush到磁盘。
- 备份与恢复
InfluxDB提供数据库备份与恢复的功能
influxd backup -help #查看备份命令
influxd backup [options] PATH #备份命令的格式
influxd backup -host 127.0.0.1:8088 -database mydb -since 2015-12-24T08:12:23Z /influxdb/backup
命令 | 含义 |
---|---|
-host | 主机地址 ,注意这里端口是8088,是influxdb元数据的端口 |
-database | 指定数据库 |
-since | 从哪个时间点开始备份 |
-rp | 指定保留策略,不指定用默认default |
-shard | 指定shard id如果这项设置了-rp也需要设置 |
-start | 指定开始时间,与since功能一样 |
-end | 指定结束时间 |
-skip-errors | 跳过错误 |
backup在这里是指备份到的文件夹
influxd restore -help #查看备份命令
influxd restore -portable [options] PATH #基本命令格式
options | 含义 |
---|---|
-portable | 恢复模式 |
-host | 主机地址默认为127.0.0.1:8888 |
-db | 指定恢复的数据库名称 |
-newdb | 新数据库名称,不指定则用-db的值,新名称必须在目标系统中唯一 |
-rp | 保留策略 |
-newrp | 新的保留策略 |
-shard | shard id,此项指定-db和-rp必须填写 |
PATH | 包含备份文件的文件夹 |
- 时间戳转化
InfluxDB的时间戳默认使用19位的ns级的时间戳对人类显示并不友好
此处可用precision rfc3339 将时间进行格式化
但是这里显示采用的时区为UTC时区,与中国时区差了8个小时,因此执行命令
select * from cpu_load_short where time >='2020-07-01T10:00:00Z' tz('Asia/Shanghai')