Apache Flink 是一个开源的分布式流处理框架,也可以用于批处理。它的核心设计目标是低延迟、高吞吐、精确一次(Exactly-Once)的状态一致性。
下面从几个角度简单说明:
Flink 是一个大数据计算引擎,主要用于:
特点:
典型场景包括:
DataStream / DataSet
Operator(算子)
Window(窗口)
State(状态)
Checkpoint(检查点)
Time(时间)
| 框架 | 特点 |
|---|---|
| Spark | 批处理强,流是微批 |
| Storm | 早期流处理,准确性较弱 |
| Flink | 真流处理,低延迟,状态强 |
StreamExecutionEnvironment env =
StreamExecutionEnvironment.getExecutionEnvironment();
env.socketTextStream("localhost", 9999)
.flatMap((line, out) -> {
for (String word : line.split(" ")) {
out.collect(word);
}
})
.keyBy(word -> word)
.window(TumblingProcessingTimeWindows.of(Time.seconds(5)))
.sum(1)
.print();
env.execute();
如果你愿意,我可以进一步讲:
你想从哪一块深入了解?
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。