本文由簡體中文內容自動轉碼而成。阿里雲不保證此自動轉碼的準確性、完整性及時效性。本文内容請以簡體中文版本為準。

時序SPL

更新時間:2025-03-21 19:02

在Logstore中存在很多時序資料,Log Service支援通過時序SPL指令和SPL函數處理Logstore中的時序資料。

什麼是Series

Series是由時間維度序列和指標維度序列組成的二維資料結構,適用於表達隨時間變化的觀測值集合。和Series相對應的是Table資料。

與Table模型的對比

對比維度

Table模型

Series模型

對比維度

Table模型

Series模型

資料群組織方式

離散時間點記錄(行式儲存)

連續時間序列(列式儲存)

查詢模式

基於離散點的彙總計算

支援滑動視窗等時序運算

儲存效率

適合低頻離散事件

最佳化高頻連續指標儲存

樣本

以Nginx訪問日誌分析為例,計算URI維度分鐘級平均回應時間。

Table模型

* 
| extend ts =  to_unixtime(date_trunc('hour',date_parse(time_local, '%d/%b/%Y:%H:%i:%s')))
| stats avg_latency = avg(cast(upstream_response_time as double)) by ts,request_uri

離散時間點彙總結果樣本:

image.png

Series模型實現

* 
| stats avg_latency=avg(cast(upstream_response_time as double)) by time_local, request_uri
| make-series avg_latency default = 'last'
    on time_local 
    from 'sls_begin_time' to 'sls_end_time' 
    step '1m' 
    by request_uri

連續時間序列可視化樣本:

image

SPL指令

SPL指令用於將Table資料轉換為Series資料。

指令名稱

說明

指令名稱

說明

stats

用於計算資料集的統計資訊,支援按分組欄位彙總。

make-series

將Table資料構建成Series資料。

render

將SPL查詢結果渲染為圖表以實現可視化。

SPL函數

通過make-series處理資料得到serie後,可調用SPL函數進行可視化。

函數名稱

說明

函數名稱

說明

second_to_nano函數

時間轉換函式:將秒級時間戳記轉為納秒級,適用於高精度情境。

series_forecast函數

時間序列預測函數:基於歷史資料預測未來趨勢,適用於監控、分析和規劃。

series_pattern_anomalies函數

異常檢測函數:基於機器學習演算法,識別時間序列中的異常點或異常模式,適用於監控、警示和資料分析等情境。

series_decompose_anomalies函數

時間序列分解與異常檢測函數:基於時間序列分解演算法,將未經處理資料拆分為趨勢性、季節性和殘差分量,並通過統計方法分析殘差分量以識別異常點,適用於即時監控、根因分析及資料品質檢測等情境。

  • 本頁導讀 (1, M)
  • 什麼是Series
  • 與Table模型的對比
  • 樣本
  • SPL指令
  • SPL函數
文檔反饋
phone Contact Us