時序資料庫InfluxDB
在系統服務部署過後,線上執行服務的穩定性是系統好壞的重要體現,監控系統狀態至關重要,經過調研瞭解,時序資料庫influxDB在此方面表現優異。
influxDB介紹
時間序列資料是以時間欄位為每行資料的標示,比如股票市場的價格,環境中的溫度,主機的CPU使用率等。但是又有什麼資料是不包含timestamp的呢?幾乎所有的資料都可以打上一個timestamp欄位。時間序列資料更重要的一個屬性是如何去查詢它。在查詢的時候,對於時間序列我們總是會帶上一個時間範圍去過濾資料。同時查詢的結果裡也總是會包含timestamp欄位。
InfluxDB 是一個開源分散式時序、事件和指標資料庫。使用 Go 語言編寫,無需外部依賴。其設計目標是實現分散式和水平伸縮擴充套件。
它有三大特性:
Time Series (時間序列):你可以使用與時間有關的相關函式(如最大,最小,求和等)
Metrics(度量):你可以實時對大量資料進行計算
Eevents(事件):它支援任意的事件資料
特點:
schemaless(無結構),可以是任意數量的列
min, max, sum, count, mean, median 一系列函式,方便統計
Native HTTP API, 內建http支援,使用http讀寫
Powerful Query Language 類似
sql
操作介紹
遠端連線
1 |
influx -host xx.xx.xx.xx -port xxxx(預設8086) -username xx -password xx -database xx |
建立及使用資料庫
1 |
create database "test"; --建立資料庫 |
增刪改查
1 |
SHOW MEASUREMENTS --查詢當前資料庫中含有的表 |
6、資料保留命令
檢視保留期 SHOW RETENTION POLICIES ON mydb
修改保留期 ALTER RETENTION POLICY default ON online DEFAULT
刪除保留期 DROP RETENTION POLICY <retentionpolicy> ON <database>
建立保留期 REATE RETENTION POLICY "rp_name" ON "db_name" DURATION 30d REPLICATION 1 DEFAULT
rp_name
:策略名
db_name
:具體的資料庫名
30d
:儲存30天,30天之前的資料將被刪除
它具有各種時間引數,比如:h(小時),w(星期)m minutes h hours d days w weeks INF infinite
REPLICATION 1
:副本個數,這裡填1就可以了
DEFAULT
設為預設的策略
目前,我們已經influxdb
+grafana
應用到資料庫監控、Kafka資料流監控、服務頁面資料統計監控等,炫酷的頁面給你不一樣的體驗,試試吧!
推薦閱讀:
一個學統計的程式設計師
喜歡Coding
喜歡硬體
喜歡樹莓派
喜歡深度學習
喜歡你