0

我要求允许“业务”用户创建和编辑从输入流中摄取的数据的规则。规则必须对业务友好,并且不能有任何开发周期。这是我在想的一个例子:

"if weatherStation.id == 100 and weatherStation.temp < 33 and detectedPctWipersOn = 90% 
then return true 
else return false"

由于气象站和连接的车辆流数据被摄取,我需要应用此规则,但如果规则更改为检测到的 PctWipersOn = 75%,则必须实时应用该规则,无需重新部署或重新启动。它需要数据驱动。

Siddhi CEP (WSO2 CEP)似乎只支持“部署”规则。是否有任何其他 CEP 产品可以满足我的需求,特别是如果它们与 KafkaStreams 配合得很好?

如果我必须自己动手,是否有针对此问题推荐的“流”设计模式?

4

1 回答 1

0

对于此要求,请尝试使用 CEP 产品,而不是使用 Siddhi 引擎。它带有一个查询模板工具,您可以在其中拥有一些预定义的模板,其中只有向用户公开的参数来配置。例如:气象站温度。一旦更改了参数,CEP 将在内部重新部署查询,并且更改将立即生效。

这对于像您的示例中的过滤器这样的无状态查询非常有效,但是如果您使用窗口、模式等,状态将会丢失。因此,您可能需要使用数据库支持的表/窗口来正确实现此类用例。

于 2016-10-29T03:00:51.547 回答