阿里新一代流式计算引擎 Flink学习宝典奉上

Flink是一个分布式流处理的开源框架,提供准确的结果,即使在无序或迟到数据的情况下也是如此,具有状态和容错能力,可以在保持一次性应用程序状态的同时无缝地从故障中恢复,大规模执行,在数千个节点上运行,具有非常好的吞吐量和延迟特性。

此前,我们讨论了将数据集的类型(有界还是无界)与执行模型的类型(批量与流媒体)进行对齐。下面列出的许多Flink功能 - 状态管理,无序数据的处理,灵活的窗口 - 对于在无界数据集上计算精确的结果非常重要,并且由Flink的流式执行模型来实现。

阿里新一代流式计算引擎 Flink学习宝典奉上

Flink保证有状态计算的exactly-once。"有状态的"意味着应用程序可以维护一段时间内已经处理的数据的汇总或汇总,并且Flink的检查点设置机制确保在发生故障时应用程序的状态exactly-once。

Flink支持流处理和窗口事件时间semantics。事件时间可以轻松计算事件到达顺序不正确,事件可能延迟到达的流的精确结果。

除了数据驱动的窗口,Flink还支持基于时间,计数或会话的灵活窗口。Windows可以通过灵活的触发条件进行定制,以支持复杂的流模式。Flink的窗口可以模拟数据创建环境的实际情况。

Flink的容错功能是轻量级的,可以让系统保持高吞吐率,同时提供一次性一致性保证。Flink从零数据丢失的故障恢复,而可靠性和延迟之间的折衷可以忽略不计。

阿里新一代流式计算引擎 Flink学习宝典奉上

Flink能够提供高吞吐量和低延迟(快速处理大量数据)。下面的图表显示了Apache Flink和Apache Storm的性能,完成了需要流式数据混洗的分布式项目计数任务。

Flink的保存点提供了一个状态版本管理机制,可以更新应用程序或重新处理历史数据,而且不会丢失状态,停机时间很短。

Flink设计用于在数千个节点的大型集群上运行,除了独立集群模式之外,Flink还提供对YARN和Mesos的支持。

阿里新一代流式计算引擎 Flink学习宝典奉上

以上就是对 Flink学习的分享了,有更多的技术学习欢迎持续关注……

相关推荐