Flink与Kylin深度实践
上QQ阅读APP看书,第一时间看更新

1.1 Flink介绍

Flink起源于一个名为Stratosphere的研究项目,其目的是建立下一代大数据分析平台,于2014年4月16日成为Apache孵化器项目。

Apache Flink是一个面向数据流式处理和批量数据处理的可分布式开源计算框架,它基于同一个Flink流式执行模型(Streaming Execution Model),能够支持流式处理和批量处理两种应用类型。由于流式处理和批量处理所提供的SLA(服务等级协议)完全不同(流式处理一般需要支持低延迟、exactly-once,而批量处理需要支持高吞吐、高效处理),所以在实现的时候通常给出两套方案,或者通过一个独立的开源框架来实现每一种处理方案。比较典型的有实现批量处理的开源方案MapReduce、Spark和实现流式处理的开源方案Storm,Spark的Streaming本质上也是微批量处理。

Flink在实现流式处理和批量处理时,与传统方案完全不同,它从另一个视角看待流式处理和批量处理,将二者统一起来:Flink完全支持流式处理,也就是说被看作流式处理时输入数据流是无界的;而批量处理被作为一种特殊的流式处理,只是它的输入数据流被定义为有界。