【发布时间】:2018-03-08 09:25:43
【问题描述】:
输入流由 JSON 对象数组格式的数据组成。 每个对象都有一个名为 state 的字段/键,我们需要通过它来分隔输入流,请参见下面的示例
对象1 -> “状态”:“活动”
Object2 -> “状态”:“空闲”
Object3 -> "State":"Blocked"
Object4 -> “状态”:“活动”
我们必须在收到特定状态后立即开始处理/线程,如果新状态与前一个状态相似,则继续获取数据,让前一个线程处理它,否则为新状态启动一个新线程。此外,需要在有限时间内运行每个线程,并且所有线程应该并行运行。
请建议我如何在 Apache Flink 中做到这一点。伪代码和链接会很有帮助。
【问题讨论】:
-
您的处理逻辑是否因州而异? 'State' 的值是否仅限于上述 4 种之一,还是可以动态存在多个状态?
-
@narush 处理逻辑相同,目前状态有限,但未来可能会增加。
标签: java apache-flink stream-processing