Flink 和动态模板识别

Posted

技术标签:

【中文标题】Flink 和动态模板识别【英文标题】:Flink and Dynamic templates recognition 【发布时间】:2016-10-13 10:14:42 【问题描述】:

我们计划使用 Flink CEP 根据一些动态模板来处理大量事件。系统必须识别事件链(有时是具有条件和分组的复杂链)。模板将由用户创建。换句话说,我们必须在不接触代码的情况下创建复杂的模板。是否可以使用 Apache Flink 来解决这个问题? Filnk 是否支持动态模板?

【问题讨论】:

【参考方案1】:

目前 Flink 的 CEP 库不支持这种动态规则适配。但是,没有根本原因导致无法实施。

事实上,这些变化应该是相当直接的。目前工作流程如下: 用户指定事件模式。该模式被转换为代表该模式的 NFA(这发生在客户端)。然后将 NFA 提供给 CEP 操作员,CEP 操作员将其序列化并发送到集群。在集群上,CEP 算子和 NFA 被反序列化,然后开始处理事件。

可以添加一个平面地图运算符,它在一个输入通道上接收事件,在另一个输入通道上接收模式。对于每个新收到的模式,要么更新现有的 NFA(缺少此功能),要么编译一个新的。在后一种情况下,可以将传入事件应用于所有存储的 NFA。

这样,我们可以实现一个模式可以动态更新的 CEP 算子。

【讨论】:

3.5 年过去了。社区,蒂尔,你知道这种方式有什么改变吗?如果它不在核心 Flink 中,也许有人分叉 Flink 来创建这样的功能? 很遗憾,社区尚未添加此功能。据我所知,这里草拟的解决方案仍然是解决这个问题的最佳方法。但是你必须自己实现它。

以上是关于Flink 和动态模板识别的主要内容,如果未能解决你的问题,请参考以下文章

语音识别DTW的0-9数字语音识别matlab源码

语音识别基于DTW的0-9数字语音识别matlab源码含 GUI

识别 Apache-Flink 中哪个对象不可序列化

国科大人工智能学院《计算机视觉》课 —运动视觉—运动表达和行为识别

国科大人工智能学院《计算机视觉》课 —运动视觉—运动表达和行为识别

国科大人工智能学院《计算机视觉》课 —运动视觉—运动表达和行为识别