主页 > 新闻资讯 > Flink入门:Flink计算引擎基础入门

Flink入门:Flink计算引擎基础入门

作者:张老师 浏览次数: 2020-02-21 18:33
作为新一代大数据处理框架的代表,Flink受到的关注越来越多,一方面是面对实时大数据分析处理的需求进一步增长,另一方面则是Flink确实是真正意义的大数据流计算引擎。作为大数据技术人员,掌握Flink将成为加分项,下面我们就为大家分享一些Flink入门基础知识。

Flink的准确定义,其实是分布式流计算引擎,在此之前的大数据计算框架,包括Spark Streaming、Storm等,其实都不算真正意义上的流引擎。并且,Flink还将批处理定义为有界的“流”,从而实现了批处理和流计算的统一。

Flink入门

Flink的流计算,是数据流上的有状态的计算(Stateful Computations Over Streams)。

这其中涉及到两个关键点,一个是Streams流,Flink认为有界数据集是无界数据流的一种特例,所以说有界数据集也是一种数据流,事件流也是一种数据流。因此,Flink可以用来处理任何的数据,可以支持批处理、流处理、AI、MachineLearning等等。

另一个关键点,是有状态计算(Stateful),有状态计算是最近几年来越来越被用户需求的一个功能。举例说明状态的含义,比如说一个网站一天内访问UV数,那么这个UV数便为状态。Flink提供了内置的对状态的一致性的处理,即如果任务发生了Failover,其状态不会丢失、不会被多算少算,同时提供了非常高的性能。

Flink框架有四个重要的基石:Checkpoint、State、Time、Window。

Checkpoint机制,是Flink最重要的一个特性。Flink基于Chandy-Lamport算法实现了一个分布式的一致性的快照,从而提供了一致性的语义。

提供了一致性的语义之后,Flink为了让用户在编程时能够更轻松、更容易地去管理状态,还提供State API,包括里面的有ValueState、ListState、MapState、BroadcastState,使用State API能够自动享受到这种一致性的语义。

除此之外,Flink还实现了Watermark的机制,能够支持基于事件的时间的处理,或者说基于系统时间的处理,能够容忍数据的延时、容忍数据的迟到、容忍乱序的数据。

另外流计算中一般在对流数据进行操作之前都会先进行开窗,即基于一个什么样的窗口上做这个计算。Flink提供了开箱即用的各种窗口,比如滑动窗口、滚动窗口、会话窗口以及非常灵活的自定义的窗口。

以上就是今天的Flink入门基础知识分享了,随着Flink框架在实时大数据分析处理上的优势体现,越来越多的大数据平台将会引入Flink计算引擎,作为大数据技术研发,掌握Flink将成为未来的加分项。成都加米谷大数据,大数据前沿知识分享,大数据培训班课程2月招生中,联系客服可领免费学习资料哦!
热点排行
推荐文章
立即申请>>