Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WSO2 CEP窗口时间1天_Wso2_Complex Event Processing_Siddhi - Fatal编程技术网

WSO2 CEP窗口时间1天

WSO2 CEP窗口时间1天,wso2,complex-event-processing,siddhi,Wso2,Complex Event Processing,Siddhi,我正在评估ATM卡交易欺诈检测的不同可能解决方案,输入负载约为每秒50000,响应时间为几秒钟 WSO2 CEP看起来更适合整体解决方案,但由于我是WSO2 CEP的新手,所以一直存在内存和性能问题,因此请建议在CEP WSO2/CEP中是否有更好的方法 为了检测欺诈,我们必须捕获1天内的数据聚合,这会导致内存溢出或性能下降 1) 下面是CEP试图将所有记录保留在内存中一整天时导致内存不足的原因 from instream#window.time(1 day) select sum(amoun

我正在评估ATM卡交易欺诈检测的不同可能解决方案,输入负载约为每秒50000,响应时间为几秒钟

WSO2 CEP看起来更适合整体解决方案,但由于我是WSO2 CEP的新手,所以一直存在内存和性能问题,因此请建议在CEP WSO2/CEP中是否有更好的方法

为了检测欺诈,我们必须捕获1天内的数据聚合,这会导致内存溢出或性能下降

1) 下面是CEP试图将所有记录保留在内存中一整天时导致内存不足的原因

from instream#window.time(1 day) 
select sum(amount) as totalAmt;
2) 当它试图从表中加载所有记录以执行某些操作时,会导致性能下降

define table instream_table (....) from ( datasource,table,cache policy) ;

from instream#window.length(1) join instream_table
on instream.card_id==intable.card_id
select sum(instream_table.amount) as totalAmt;
最糟糕的是,我注意到CEP触发了
select*from-instream\u table
,而不是为card\u id添加where子句,我希望CEP足够智能,能够从card\u id=xxxxx的instream\u table触发
select sum(amount)

我已经查看了WSO2 CEP中窗口的文档,但找不到任何方法来优化它,因为WSO2 CEP似乎尝试删除内存中的所有内容


让我知道是否有任何解决办法或更好的解决方案来实现这一点。我看过其他的CEP引擎,如esper,但似乎每个人都在以同样的方式这样做

这似乎是事件表中的已知错误。。我在[1]中创建了一个jira来跟踪该问题,并为该问题添加了一个补丁。。将在下一版本中修复该问题

[1]


谢谢您的回复。。尝试查看分析补丁以了解CEP是如何工作的。从代码中,我可以看到我的查询将像从流内表中选择*一样被触发,其中卡id=xxxx,并且将对内存中加载的事件执行求和。正确吗?无法对“是”应用修补程序。。补丁需要申请