我正在尝试将Flink的CEP用于日志文件(作为批处理作业),但不用于流(作为实时)。那可能吗 ?如果是,您是否知道Scala代码的示例?
答案 0 :(得分:0)
Flink的DataStream API和相关库(包括CEP库)可用于有界,历史(批量)数据集或无限制的实时流 - 它没有任何区别。只需setup a file (or directory) as the data source并正常使用CEP。为了获得正确,可重复的结果,您应该在event time中工作(假设时间在您的处理中起作用)。这很重要,因为CEP希望根据事件时间对输入流进行排序 - 之前的和之后的的概念应该与发生事件的时间相关,而不是当它们被处理时。
一些谷歌搜索将引导您进行一些CEP示例。 Flink training(github)中有一个简单的示例(在Java和Scala中)。