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'