時序數據庫sql
2017年2月Facebook開源了beringei時序數據庫;到了4月基於PostgreSQL打造的時序數據庫TimeScaleDB也開源了,而早在2016年7月,百度雲在其天工物聯網平臺上發佈了國內首個多租戶的分佈式時序數據庫產品TSDB,成爲支持其發展製造,交通,能源,智慧城市等產業領域的核心產品,同時也成爲百度戰略發展產業物聯網的標誌性事件。時序數據庫做爲物聯網方向一個很是重要的服務,業界的頻頻發聲,正說明各家企業已經火燒眉毛的擁抱物聯網時代的到來。數據庫
時序數據是基於時間的一系列的數據。在有時間的座標中將這些數據點連成線,往過去看能夠作成多緯度報表,揭示其趨勢性、規律性、異常性;往將來看能夠作大數據分析,機器學習,實現預測和預警。less
時序數據庫就是存放時序數據的數據庫,而且須要支持時序數據的快速寫入、持久化、多緯度的聚合查詢等基本功能。 對比傳統數據庫僅僅記錄了數據的當前值,時序數據庫則記錄了全部的歷史數據。同時時序數據的查詢也老是會帶上時間做爲過濾條件。機器學習
時序數據庫的一些基本概念(不一樣的時序數據庫稱呼略有不一樣)。分佈式
metric: 度量,至關於關係型數據庫中的table。函數
data point: 數據點,至關於關係型數據庫中的row。工具
timestamp:時間戳,表明數據點產生的時間。學習
field: 度量下的不一樣字段。好比位置這個度量具備經度和緯度兩個field。通常狀況下存放的是會隨着時間戳的變化而變化的數據。大數據
tag: 標籤,或者附加信息。通常存放的是並不隨着時間戳變化的屬性信息。timestamp加上全部的tags能夠認爲是table的primary key。ui
Influxdb
Influxdb是一個開源的分佈式時序、時間和指標數據庫,使用go語言編寫,無需外部依賴。
它有三大特性:
- 時序性(Time Series):與時間相關的函數的靈活使用(諸如最大、最小、求和等);
- 度量(Metrics):對實時大量數據進行計算;
- 事件(Event):支持任意的事件數據,換句話說,任意事件的數據咱們均可以作操做。
- schemaless(無結構),能夠是任意數量的列;
- min, max, sum, count, mean, median 一系列函數,方便統計;
- Native HTTP API, 內置http支持,使用http讀寫;
- Powerful Query Language 相似sql;
- Built-in Explorer 自帶管理工具。