我们使用稳定版本1.7.8。
开源的时间序列数据库。什么是时间序列数据库,最简单的定义就是数据格式里包含Timestamp字段的数据,比如某一时间磁盘使用率、网络流量、CPU的使用率等。
InfluxDB是一个开源的时间序列数据库,一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及执行分析。
1、内置HTTP API,所以不用再写服务端代码来启动和运行。 2、数据可以被标记,允许非常灵活的查询。 3、类似SQL的查询语言 4、安装和管理简单,数据输入和输出速度快 5、它旨在实时响应查询。这意味着point数据写入即被索引并立即可供响应时间应小于100ms的查询使用。
/usr/bin
:
进入/usr/bin目录下,启动命令
./influxd --config ../../etc/influxdb/influxdb.conf &
//是否上报InfluxDB的配置信息到官网,true不上报 reporting-disabled = true //RPC服务对应的地址,用于备份数据通信等,默认监听8088 bind-address = "127.0.0.1:8088 //meta节点的配置信息 [meta] dir="/root/.influxdb/meta" #meta数据和Raft数据库的存储目录 retention-autocreate=true #是否在创建数据库时创建默认保留策略autogen,默认为true logging-enabled = true #是否打开META日志
//data节点配置
//coordinator节点配置
//retention节点配置
//分片预创建配置
//monitor配置
//subscriber配置信息
//http配置
//logging配置
//graphite配置
//collectD配置
//openTSDB配置
//UDP协议配置
//连续查询配置
//TLS配置
influxDB支持通过InfluxDB API和influx命令来操作,InfluxDB API是一种基于HTTP协议的REST API,推荐生产环境使用。influx命令行是一种类似于MySQL命令行的工具,推荐日常数据库管理中使用。为了方便演示,我们使用influx命令执行基础写入、查询操作。
首先启动命令行,连接到本地服务器,在安装目录的usr/bin目录下执行
./influx
命令
通过show databases
命令查看数据库
新安装的InfluxDB
没有数据记录,所以输出结果中只看到_internal
create database "数据库名字", 比如create database my
use 数据库名字
通过insert命令向表my中插入一条有关cpu负载的时序数据记录。注意,逗号前后不能有空格。
insert cpu_usage,host=server01,region=ch value=2
//指定时间戳,不指定的话,系统将写入时间作为时间戳
insert cpu_usage,host=server01,region=ch value=2 1592906727717942736
//cpu_usage是表明,host、region是tag,value、name是值,最后是时间戳
insert cpu_usage,host=server01,region=ch value=2,name=zhongguo 1592906727717942736
show measurements,查看数据库my中当前所有的表信息,与mysql不通的是,influxDB不需要提前创建表,当写入时序数据时,influxDB会自动创建新表。
drop measurement cpu_usage
drop database my 删除数据库my
select * from cpu_usage
show tag keys
show field keys
influxDB简单入门先介绍到这里,下一篇我们进一步学习。