InfluxDB数据库的简介
InfluxDB是一个用于存储和分析时间序列数据的开源数据库,是一个基于 golang 编写,用于记录 metrics、events,进行数据分析。
主要特性有:
- 内置HTTP接口,使用方便
- 数据可以打标记,查让查询可以很灵活
- 类SQL的查询语句
- 安装管理很简单,并且读写数据很高效
- 能够实时查询,数据在写入时被索引后就能够被立即查出
Influxdb启动命令
cd /etc/influxdb/ influxd -config influxdb.conf
与传统数据库中的名词对比
传统数据库中的概念 | influxdb中的名词 |
数据库 | databases |
数据库中的表 | measurement |
表中的一行数据 | points |
points就是表中一行的数据,由时间戳(time)、数据(fields)、标签(tags)组成 | |
传统数据库中的概念 | Points属性 |
每条数据的记录时间,是数据库中的主索引,自动生成 | time |
数据,记录值,没有索引属性 | fields |
标签 | tags |
增删改查
数据库操作
- 进入influxDB命令行
influx -precision rfc3339
- 显示数据库
show databases
- 新建数据库
create database jmeter
- 删除数据库
drop database jmeter
- 使用指定数据库
use jmeter
- 退出influxDB命令行
exit或quit或ctrl+d
表操作
在InfluxDB当中,并没有表(table)这个概念,取而代之的是MEASUREMENTS,MEASUREMENTS的功能与传统数据库中的表一致,因此我们也可以将MEASUREMENTS称为InfluxDB中的表。
- 显示所有表
show measurements
- 新建表(InfluxDB中没有显式的新建表的语句,只能通过insert数据的方式来建立新表)
insert user,hostname=server01 value=zhangsan
insert user,hostname=server02 value=lisi wangwu
其中 user 就是表名,hostname是索引(tag),value=xx是记录值(field),记录值可以有多个,系统自带追加时间戳
- 删除表
drop measurement user
- 查询数据
select * from user
- 查询表字段
查询tag:show tag keys from user 查询field:show field keys from user