学习大数据有几年了,一直没有涉及到Flink部分,正好最近时间充裕,便学习整理一份个人学习笔记,仅供参考,学习资源来自于B站尚硅谷及其他网友。
实时处理框架值接触过sparkStreaming和flink所有只针对这两个所学框架先做些对比:
flink 相比较spark Streaming这种微批准实时处理,完全是两种不同的实现方式。flink 是一种完全无间断的流处理,而sparkStreaming 是无限的微小批次组成的“流”,是同一批次数据积累完再去做处理,而Flink是来一条处理一条数据。
flink框架整体设计思想、里面的语法实现要比spark更抽象、语法也更晦涩难懂。更多功能都是在底层去实现。两者都支持java和scala以及python去实现业务,我却更多倾向flink + java + sql 和spark + scala + sql 这种组合去开发。flink基于难度,更多的去用sql 和java去实现(自己熟悉、擅长的),而spark底层是scala 实现的,所以首选scala,但是scala语法标准比较多,所以做到统一性和团队开发还是比较困难,尤其是后期维护,所以配合sql使用会更佳。