![](/img/trans.png)
[英]Using JDBCInputFormat with variable tuple size (apache-flink)
[英]How can I create dynamic rule in apache-flink?
我将 flink 与 Java 一起使用,我成功地定义了一个 static 模式,如下所示:
Pattern<Event, ?> pattern = Pattern.<Event>
begin("first")
.where(
new SimpleCondition<Event>() {
@Override
public boolean filter(Event event) {
return event.getTemperature() > 50;
}
}).within(Time.seconds(10L));
apache-flink 有没有办法以动态方式创建模式? 我需要根据用户的输入来定义模式。
谢谢
您可能对“ 应用程序逻辑的动态更新”模式感兴趣。
将 BroadcastStream 用于您connect
到 stream 的规则。
通过文章中的示例,您甚至可以拥有动态聚合定义:
// Streams setup
DataStream<Transaction> transactions = [...]
DataStream<Rule> rulesUpdateStream = [...]
BroadcastStream<Rule> rulesStream = rulesUpdateStream.broadcast(RULES_STATE_DESCRIPTOR);
// Processing pipeline setup
DataStream<Alert> alerts =
transactions
.connect(rulesStream)
.process(new DynamicKeyFunction())
.keyBy((keyed) -> keyed.getKey())
.connect(rulesStream)
.process(new DynamicAlertFunction())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.