InfluxDB初体验

作者: Huang Jinqiang 分类: Database 发布时间: 2018-03-01 23:19

今天知数堂公开课学习InfluxDB,顺便上网查一下资源学习。

1. InfluxDB介绍
InfluxDB是一个由InfluxData公司开发的开源时序数据库,使用GO语言开发,InfluxDB是一个着力于高性能地查询和存储时序数据库,广泛用于存储系统的监控数据,物联网行业的实时数据等场景。
InfluxDB分为收费的闭源集群版和单机开源版

2. InfluxDB历史
Errplane公司于2013年下半年开始以开源项目的形式开始了InfluxDB的开发。目的是为了提供一个高性能的监控以及告警的解决方案。2014年11月获得A轮融资,2015年更名为InfluxData公司,2016年9月获得B轮融资

3. 什么是时序数据
时序数据(TimeSeries Data)是按照时间顺序记录系统、设备状态变化的数据

那时序数据需求的特点有哪些呢?
每秒大量数据写入,大集群环境成千上万的数据点
要求近实时的数据查询
多点采集,乱序入库
需要强大的数据聚合能力
数据一般不会更改,可能需要过期删除

4. InfluxDB关键特征
使用类SQL查询语法
模式自由
采用TSM引擎实现高速的数据存取和压缩
简单、高效的写入和查询HTTP API
标签支持序列索引以实现快速高效查询
支持数据保留策略,可高效自动清理过期失效数据
内置连续查询,自动计算聚合数据,使频繁查询更高效
存在显示的冷热数据

5. InfluxDB安装
[root@dbtest ~]# cd /usr/local/src/
[root@dbtest /usr/local/src]# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.4.3_linux_amd64.tar.gz
[root@dbtest /usr/local/src]# tar xf influxdb-1.4.3_linux_amd64.tar.gz
[root@dbtest /usr/local/src]# mv influxdb-1.4.3-1/usr/ /usr/local/influxdb-1.4.3
[root@dbtest /usr/local/src]# ln -s /usr/local/influxdb-1.4.3/ /usr/local/influxdb
[root@dbtest /usr/local/src]# echo 'export PATH=/usr/local/influxdb/bin:$PATH' > /etc/profile.d/influxdb.sh
[root@dbtest /usr/local/src]# source /etc/profile
[root@dbtest /usr/local/src]# mkdir /data/influxdb/{meta,data,wal} -p

6. InfluxDB配置
[root@dbtest /usr/local/src]# cp etc/influxdb/influxdb.conf /data/influxdb/
[root@dbtest /usr/local/src]# vim /data/influxdb/influxdb.conf
[meta]
dir = "/data/influxdb/meta"
[data]
dir = "/data/influxdb/data"
wal-dir = "/data/influxdb/wal"
[root@dbtest /usr/local/src]# chown keung.keung /data/influxdb/ -R

7. InfluxDB启动
[root@dbtest /usr/local/src]# su - keung
[keung@dbtest influxdb]$ /usr/local/influxdb/bin/influxd --config=/data/influxdb/influxdb.conf --pidfile=/data/influxdb/influxdb.pid 2>> /data/influxdb/influxdb.log &
[1] 10033
[keung@dbtest influxdb]$
8888888 .d888 888 8888888b. 888888b.
888 d88P" 888 888 "Y88b 888 "88b
888 888 888 888 888 888 .88P
888 88888b. 888888 888 888 888 888 888 888 888 8888888K.
888 888 "88b 888 888 888 888 Y8bd8P' 888 888 888 "Y88b
888 888 888 888 888 888 888 X88K 888 888 888 888
888 888 888 888 888 Y88b 888 .d8""8b. 888 .d88P 888 d88P
8888888 888 888 888 888 "Y88888 888 888 8888888P" 8888888P"

8. InfluxDB简单测试
[keung@dbtest influxdb]$ /usr/local/influxdb/bin/influx
Connected to http://localhost:8086 version 1.4.3
InfluxDB shell version: 1.4.3
> create database db1
> use db1;
Using database db1
> insert t_user_login,username=keung,platform=wangzherongyao Segment="倔强青铜3"
> select * from t_user_login;
name: t_user_login
time Segment platform username
---- ------- -------- --------
1519912568925898576 倔强青铜3 wangzherongyao keung

发表评论

电子邮件地址不会被公开。 必填项已用*标注