0
WSO2 CEP自定義函數不能作爲聚合函數工作,而是對每行數據進行操作。WSO2 CEP自定義函數不起作用聚合函數
可以說我們在輸入流中有value1和value2。
- 主機:A,值1:1,值2:10
- 主機:A,值1:2,值2:20
- 主機:A,值1:3,值2:30
- 主機: A,值1:4,值2:40
- 主持人:A,值1:5,值2:50
現在我已經做了東道國的時間配料和分組。 並寫了一個自定義函數,它可以找到MEDIAN,並且還可以使用內置函數SUM。
但是它的作用是在分組後對所有5行應用SUM函數,但是自定義函數是逐行調用的。 自定義函數類中的進程方法逐行調用。 因此SUM返回15,但我的MEDIAN函數給出的輸出爲50,這只是最後一個值2。
執行計劃查詢
from inputStream#window.timeBatch(10 sec)
select value1 as value1, value2 as value2, sum(value1) as sumOfValue1, custom:median(value2) as medianOfValue2 group by host
insert into outputStream;
自定義功能的Java類片段
/**
* Method called when sending events to process
*
* @param obj
* @return
*/
@Override
protected Object process(Object obj) {
我們不能有一個自定義的聚合函數,或者自定義函數只應該被執行逐行依據?