influxdb 基本概念
参考:https://docs.influxdata.com/influxdb/v1.4/concepts/key_concepts
基本概念图:
-
Database(绿色白框):数据库,可在这一层级做读写权限控制和数据保留时间(Retention policy)。
-
Measurement(紫色区域):表,包含tags,fields和time。
-
tag(蓝色区域):索引列,图中有n个tag。
-
sereis:由retention policy,Measurement、tag不同值的组合定位一个series。一个Series是多个时间序列的集合。
-
field(绿色区域):一个series会包含多个field,每一个field对应一个实际的时间序列。
-
point:红色的一行就是一个point,Series+time定位一个point。一个point是一个时间带多个field的名字和field的值。
mac安装influxdb
1 brew update 2 brew install influxdb 3 ln -sfv /usr/local/opt/influxdb/*.plist ~/Library/LaunchAgents
1 # 配置文件在/etc/influxdb/influxdb.conf ,如果没有就将/usr/local/etc/influxdb.conf 拷一个过去 2 配置缓存:cache-max-memory-size 3 4 #启动服务 5 launchctl load ~/Library/LaunchAgents/homebrew.mxcl.influxdb.plist 6 7 #停止服务 8 launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.influxdb.plist 9 10 #前台启动 11 influxd -config /usr/local/etc/influxdb.conf 12 13 查看influxdb运行配置 14 influxd config
启动客户端
1 influx -precision rfc3339
基本操作
参考:http://docs.influxdata.com/influxdb/v1.3/query_language/data_exploration/#the-group-by-clause
数据库操作
创建数据库 CREATE DATABASE mydb 删除数据库 drop database mydb 使用数据库 use mydb
数据插入
语法 <measurement>[,<tag-key>=<tag-value>...] <field-key>=<field-value>[,<field2-key>=<field2-value>...] [unix-nano-timestamp] 类似: 表,联合主键1,联合主键2 普通列1,普通列2 时间 第一次插入数据会确定数据类型,之后的插入不能换数据类型。 插入同一时间的数据会覆盖旧的,时间是主键。可以乱序插入。 示例 insert cpu,machine=unit42,type=assembly external=25,internal=37 1434067467000000000 插入字符串类型的数据用双引号表示 insert temperature,machine=unit42,type=1 external=25,internal1="37"
查询
where 中对字符串的过滤必须用单引号,tag默认为字符串类型
select * from temperature where type='assembly'