01
時序數據及其特點
時序數據(Time Series Data)是基于相對穩(wěn)定頻率持續(xù)產生的一系列指標監(jiān)測數據,比如一年內的道瓊斯指數、一天內不同時間點的測量氣溫等。時序數據有以下幾個特點:
●歷史數據的不變性
● 數據的有效性
● 數據的時效性
● 結構化的數據
● 數據的大量性
02
時序數據庫基本架構
針對時序數據的特點,時序數據庫一般具有以下特性:
● 高速的數據入庫
● 數據的生命周期管理
● 數據的流處理
● 高效的數據查詢
● 定制的數據壓縮
03
流計算介紹
流計算主要是指針對實時獲取來自不同數據源的海量數據,經過實時分析處理,從而獲得有價值的信息。常見的業(yè)務場景包括實時事件的快速反應,市場變化的實時告警,實時數據的交互分析等。流計算一般包括如下幾方面的功能:
1)過濾和轉換 (filter & map)
2)聚合以及窗口函數 (reduce,aggregation/window)
3)多數據流合并以及模式匹配 (joining & pattern detection)
4)從流到塊處理
04
時序數據庫對流計算的支持
案例一:使用定制化的流計算 API,如下面例子所示:
?
from(bucket: "mydb") |> range(start: -1h) |> filter(fn: (r) => r["_measurement"] == "mymeasurement") |> map(fn: (r) => ({ r with value: r.value * 2 })) |> filter(fn: (r) => r.value > 100) |> aggregateWindow(every: 1m, fn: sum, createEmpty: false) |> group(columns: ["location"]) |>join(tables:{stream1:{bucket:"mydb",measurement:"stream1",start:-1h},stream2:{bucket:"mydb",measurement:"stream2",start:-1h}},on:["location"]) |>alert(name:"value_above_threshold",message:"Valueisabovethreshold",crit:(r)=>r.value>100) |>to(bucket:"mydb",measurement:"output",tagColumns:["location"])
案例二:使用類 SQL 指令,創(chuàng)建流計算以及定義流計算規(guī)則,如下:
CREATE STREAM current_stream TRIGGER AT_ONCE INTO current_stream_output_stb AS SELECT _wstartasstart, _wendasend, max(current)asmax_current FROMmeters WHERE voltage <= 220 ?INTEVAL (5S) SLIDING (1s);
審核編輯:劉清
-
SQL
+關注
關注
1文章
751瀏覽量
43913 -
數據庫
+關注
關注
7文章
3716瀏覽量
64046 -
API接口
+關注
關注
1文章
81瀏覽量
10402
原文標題:時序數據庫的流計算支持
文章出處:【微信號:OSC開源社區(qū),微信公眾號:OSC開源社區(qū)】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論