時間序列資料庫簡稱時序資料庫(time series database),用於處理帶時間標籤(按照時間的順序變化,即時間序列化)的資料,帶時間標籤的資料也稱為時間序列資料。
時序資料的幾個特點
1. 基本上都是插入,沒有更新的需求。
2. 資料基本上都有時間屬性,隨著時間的推移不斷產生新的資料。
3. 資料量大,每秒鐘需要寫入千萬、上億條資料
業務方常見需求
1. 獲取最新狀態,查詢最近的資料(例如感測器最新的狀態)
2. 展示區間統計,指定時間範圍,查詢統計資訊,例如平均值,最大值,最小值,計數等。。。
3. 獲取異常資料,根據指定條件,篩選異常資料
常見業務場景
監控軟體系統: 虛擬機器、容器、服務、應用
資產跟蹤應用: 汽車、卡車、物理容器、運貨托盤
金融交易系統: 傳統**、新興的加密數字貨幣
事件應用程式: 跟蹤使用者、客戶的互動資料
商業智慧型工具: 跟蹤關鍵指標和業務的總體健康情況
在網際網路行業中,也有著非常多的時序資料,例如使用者訪問**的行為軌跡,應用程式產生的日誌資料等等。
一些基本概念(不同的時序資料庫稱呼略有不同)
metric: 度量,相當於關係型資料庫中的 table。
data point: 資料點,相當於關係型資料庫中的 row。
timestamp:時間戳,代表資料點產生的時間。
field: 度量下的不同字段。比如位置這個度量具有經度和緯度兩個 field。一般情況下存放的是隨時間戳而變化的資料。
tag: 標籤。一般存放的是不隨時間戳變化的資訊。timestamp 加上所有的 tags 可以視為 table 的 primary key。
例如採集有關風的資料,度量為 wind,每條資料都有時間戳timestamp,兩個字段 field:direction(風向)、speed(風速),兩個tag:sensor(感測器編號)、city(城市)。第一行和第三行,存放的都是 sensor 編號為86f-2rt8的裝置,城市是深圳。隨著時間的變化,風向和風速發生了改變,風向從56.4變為45.6,風速從2.9變為3.6。
需要解決的幾個問題
時序資料的寫入:如何支援每秒鐘成千上億條資料的寫入。
時序資料的讀取:如何支援在秒級對上億條資料的分組聚合運算。
成本敏感:海量資料儲存帶來的成本問題。如何以更低成本儲存資料,將成為時序資料庫需要解決的重中之重。
常見時序資料庫
時序資料庫出現的時間較晚,目前較成熟的時序資料庫都僅有2、3年的歷史。
資料庫技術之Redis簡介及應用場景
redis是一款記憶體快取記憶體資料庫。redis全稱為 remote dictionary server 遠端資料服務 使用c語言編寫,redis是乙個key value儲存系統 鍵值儲存系統 支援豐富的資料型別,如 string list set zset hash。redis是一種支援key ...
基於 mysql時序 時序資料庫簡介
時間序列資料庫簡稱時序資料庫 time series database 用於處理帶時間標籤 按照時間的順序變化,即時間序列化 的資料,帶時間標籤的資料也稱為時間序列資料。時序資料的幾個特點 1.基本上都是插入,沒有更新的需求。2.資料基本上都有時間屬性,隨著時間的推移不斷產生新的資料。3.資料量大,...
時序資料庫
看到這類資料處理基本是要對乙個時間範圍的資料,根據時間段,維度進行歸類,做一些聚合運算。時序資料庫要解決的問題就是如何能在海量資料中,快速響應使用者的此類查詢。序資料庫的一些基本概念 不同的時序資料庫稱呼略有不同 metric 度量,相當於關係型資料庫中的table。data point 資料點,相...