[英]WSO2 CEP : Siddhi QL: Creating a unique stream with similar event records
對於WSO2 CEP Siddhi QL來說,我還很陌生,我需要分析流中發生的事件。
例如:我有數據輸入如下[id,value]:
InputStream=[1001,90]
InputStream=[1001,85]
InputStream=[1002,70]
InputStream=[1001,85]
InputStream=[1003,70]
InputStream=[1003,85]
InputStream=[1002,70]
InputStream=[1003,70]
InputStream=[1003,85]
InputStream=[1002,70]
InputStream=[1001,95]
InputStream=[1001,65]
在此,我想基於ID 1001、1002和1003記錄分隔每個記錄和組,並為每個ID的分組創建一個新的臨時流,並檢查其中的最大值並發出警報。 嘗試了不同的模式和聯接,但是無法將其歸零為確切的解決方案。
任何對解決方案的幫助/指導將不勝感激。 謝謝。
在Siddhi中,無法基於事件值創建新的流。 但是,由於您的要求是根據ID分配組並提醒每個組的最大值。 我們可以通過單個輸出流來實現。 我們需要做的是在一個持續時間內保持一個窗口(時間或長度窗口),然后按ID分組並選擇max(temp)並插入警報流。 請參考以下示例siddhi查詢。
from TempStream#window.time(2 min)
select max(temp) as highestTemperature
group by id
insert into alertStream;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.