InfluxDB数据库是一款数据储存库,可以帮助用户储存开源的时间序列数据,可以帮助用户处理高写入和查询负载,时间序列是现在非常流行的数据库类别,可以帮助用户对数据库进行管理,提供基础设施和一些辅助功能,可以对应用进行监测,物联网分析等等。
软件介绍
InfluxDB是一个开源的时间序列数据存储,旨在处理高写入和查询负载,时间序列是目前增长最快的数据库类别,而InfluxDB的出现是为了确保企业能够跟上,InfluxDB提供基础设施和应用监测、物联网监测和分析等。
软件功能
用于拉动和发送指标的集成输入和输出插件
实时监测
自动化
开放和可扩展的架构
Chronograf(可视化工具,带有预制的仪表盘,具有网络监控的标准基线
Kapacitor(用于处理、监测和警报的规则引擎
安装部署
InfluxDB是一个时间序列数据存储,和一般的数据库不同,软件安装和部署方法也有一定的区别, 很多的用户不知道软件的安装方法,下面小编为大家带来介绍,让大家都可以顺利的安装软件。
#rpm -ivh influxdb-1.1.0.x86_64.rpm
#systemctl enable influxdb
#systemctl start influxdb
注:本示例是在centos7/rhel7中配置的服务,如果在rhel6下,可以使用service进行服务配置和启动。
2、命令行下创建及查询
通过influx命令进行管理,可以使用如下命令创建数据库:
> CREATE DATABASE "testDB"
> show databases //查询当前的所有数据库
> show databases
name: databases
---------------
name
_internal
testDB
> use testDB //使用某个数据库
建库的操作可以发现非常类似于mysql下的操作。而在influxdb下没有细分的表的概念,influxdb下的表在插入数据库的时候自动会创建。可以通过SHOW measurements命令查看所有的表,这个类似于mysql下的show tables; 。
> INSERT cpu,host=serverA,region=us_west value=0.64 //在cpu表中插入相关的数据
> SELECT * FROM cpu ORDER BY time DESC LIMIT 3 //查询最近的三条数据
> SELECT * FROM /.*/ LIMIT 1 //正则表达式查询
> delete from cpu where time=1480235366557373922 //删除某条数据
> DROP MEASUREMENT "measurementName" //删除表
update更新语句没有,不过有alter命令,在influxdb中,删除操作用和更新基本不用到 。在针对数据保存策略方面,有一个特殊的删除方式,这个后面再提。
关于用户的操作如下:
#显示用户
SHOW USERS
#创建用户
CREATE USER "username" WITH PASSWORD 'password'
#创建管理员权限的用户
CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES
#删除用户
DROP USER "username"
influxdb的权限设置比较简单,只有读、写、ALL几种。默认情况下,influxdb类似与mongodb,是不开启用户认证的,可以修改其 conf文件,配置http块内容如下:
[http]
enable = true
bind-address = ":8086"
auth-enabled = true # 开启认证
使用场景
时序数据是基于时间的一系列数据,每个数据都包含时间的坐标,用户可以将这些数据点连成线,然后找出数据的规律性、趋势性,还进行数据分析等等操作。所以时序数据的使用场景也和这些有关,下面小编为大家带来使用场景介绍。
所有有时序数据产生,并且需要展现其历史趋势、周期规律、异常性的,进一步对未来做出预测分析的,都是时序数据库适合的场景。
在工业物联网环境监控方向,百度天工的客户就遇到了这么一个难题,由于工业上面的要求,需要将工况数据存储起来。客户每个厂区具有20000个监测点,500毫秒一个采集周期,一共20个厂区。这样算起来一年将产生惊人的26万亿个数据点。假设每个点50Byte,数据总量将达1P(如果每台服务器10T的硬盘,那么总共需要100多台服务器)。这些数据不只是要实时生成,写入存储;还要支持快速查询,做可视化的展示,帮助管理者分析决策;并且也能够用来做大数据分析,发现深层次的问题,帮助企业节能减排,增加效益。最终客户采用了百度天工的时序数据库方案,帮助他解决了难题。
在互联网场景中,也有大量的时序数据产生。百度内部有大量服务使用天工物联网平台的时序数据库。举个例子,百度内部服务为了保障用户的使用体验,将用户的每次网络卡顿、网络延迟都会记录到百度天工的时序数据库。由时序数据库直接生成报表以供技术产品做分析,尽早的发现、解决问题,保证用户的使用体验。
查询语句
influxdb 数据交互基于 http请求
influxdb 对大小写不敏感,对单双引号敏感
missing fields dropped=0
原因是字符串中含有换行符\n, 导致写入失败
使用说明
通过软件可以对时序数据进行操作, 很多的用户不知道软件的使用方法,下面小编为大家带来对应的方法介绍,快来看看吧。
增
向数据库中插入数据。
通过命令行
这样,数据库插入数据成功。
Line Protocol格式:写入数据库的Point的固定格式。
在上面的两种插入数据的方法中都有这样的一部分:
test,host=127.0.0.1,monitor_name=test count=1
其中:
test:表名;
host=127.0.0.1,monitor_name=test:tag;
count=1:field
查
查询数据库中的数据。
通过命令行
数据保存策略(Retention Policies)
influxDB是没有提供直接删除数据记录的方法,但是提供数据保存策略,主要用于指定数据保留时间,超过指定时间,就删除这部分数据。
查看当前数据库Retention Policies
创建新的Retention Policies
create retention policy "rp_name" on "db_name" duration 3w replication 1 default
rp_name:策略名
db_name:具体的数据库名
3w:保存3周,3周之前的数据将被删除,influxdb具有各种事件参数,比如:h(小时),d(天),w(星期)
replication 1:副本个数,一般为1就可以了
default:设置为默认策略
修改Retention Policies
alter retention policy "rp_name" on "db_name" duration 30d default
删除Retention Policies
drop retention policy "rp_name"
精品推荐
-
Qlik Sense
详情 -
Power BI Desktop
详情 -
MongoDB Compass软件
详情 -
Navicat Premium 15
详情 -
微软Access2019免产品密钥激活破解版
详情 -
Power Designer
详情 -
mysql数据库批量实体CS类导出工具
详情 -
Navicat全系列注册码生成器
详情 -
Access数据库引擎
详情 -
SQL2005开发版
详情 -
FileMaker Pro Advanced
详情 -
Navicat Premium 16永久激活版
详情 -
Stellar Repair for SQLite(SQLite数据库恢复)破解版
详情 -
Microsoft Office Access database Engine免安装版
详情 -
IBM SPSS Statistics22
详情 -
ApexSQL Log
详情
-
1 DBC2000
装机必备软件
网友评论