WSO2SP:处理不同计算的正确方法是什么?



想象一下许多不同的传感器发送值。有一个后端,可以在其中输入基于传感器 ID 和值的不同计算。这些计算将转换为 siddhi 应用程序,并部署在 siddhi 主机上。

为每个计算创建自己的应用程序的方法是否正确?

from a=SpeedStream[a.id == "s1"], b=SpeedStream[b.id == "s1"]
select b.speed-a.speed as acceleration
insert into AccelerationStream

相同的计算可能会多次部署,其中只有 a.idb.id 不同。

这种方法正确吗?

用例划分到多个 siddhi 应用程序将有助于提高可维护性。 它有时会导致多次部署相同的查询,这很好。

尽管我建议在管道开始时使用过滤器,以便仅过滤掉需要处理的事件,以提高效率。

from SpeedStream[id == "s1"] 
select *
insert into FilteredSpeedStream;
现在,FilteredSpeedStream

可以在以后的查询中使用,如果没有筛选器,FilteredSpeedStream 将只有一种传感器类型的事件,从而使管道高效。

相关内容

最新更新