https://www.influxdata.com/time-series-platform/influxdb/html
https://www.xusheng.org/blog/2016/07/30/performance-test-of-influxdb/sql
https://xusheng.org/blog/2016/08/12/influxdb-relay-performance-bottle-neck-analysing/數據庫
influxd/influx
分佈式
InfluxDB用Go語言編寫的一個開源分佈式時序、事件和指標數據庫,和傳統是數據庫相比有很多不一樣的地方。相似的數據庫有Elasticsearch、Graphite等。函數
1.提供了Http接口的API來操做數據orm
2.提供了相似sql的數據庫語句htm
3.基於時間序列,支持與時間有關的相關函數(如最大,最小,求和等)blog
4.可度量性:你能夠實時對大量數據進行計算索引
5.基於事件:它支持任意的事件數據接口
6.無結構(無模式):能夠是任意數量的列
7.可拓展的支持min, max, sum, count, mean, median 等一系列函數,方便統計
8.原生的HTTP支持,內置HTTP API
9.強大的類SQL語法
10.自帶管理界面,方便使用
庫、表等比較:
influxDB |
傳統數據庫中的概念 |
database |
數據庫 |
measurement |
數據庫中的表 |
points |
表裏面的一行數據 |
influxdb數據的構成:
Point由時間戳(time)、數據(field)、標籤(tags)組成。
Point屬性 |
傳統數據庫中的概念 |
time |
每一個數據記錄時間,是數據庫中的主索引(會自動生成) |
fields |
各類記錄值(沒有索引的屬性)也就是記錄的值:溫度, 溼度 |
tags |
各類有索引的屬性:地區,海拔 |
這裏不得不提另外一個名詞:series:
全部在數據庫中的數據,都須要經過圖表來展現,而這個series表示這個表裏面的數據,能夠在圖表上畫成幾條線:經過tags排列組合算出來。具體能夠經過SHOW SERIES FROM "表名" 進行查詢。