一、流处理的江湖
尽管Storm,Kafka Streams和Samza对于更简单的用例很有用,但具有最新功能的重量级产品之间的真正竞争显而易见:Spark vs Flink,并且两者是相互借鉴。
二、Flink Vs Spark
Spark Streaming
Spark Streaming 是上一代 Spark 的流引擎。 Spark Streaming 不再更新,它是一个遗留项目

Spark Streaming 是将流式计算分解成一系列短小的批处理作业。
Spark Streaming 首先把输入数据按照批段大小(如 1 秒)分成一段一段的数据(DStream),并把每一段数据都转换成 Spark 中的 RDD,然后将 Spark Streaming 中对 DStream 的 Transformation 操作变为 Spark 中对 RDD 的 Transformation 操作,并将操作的中间结果保存在内存中。
整个流式计算根据业务的需求可以对中间的结果进行叠加,或者存储到外部设备
Structured Streaming
Spark Structured Streaming 是当前一代 Spark 的流引擎,功能更丰富,更易于使用,扩展性更强
Spark Structured Streaming 构建在 Spark SQL 引擎之上,采用了无界表的概念,流数据相当于往一个表上不断追加行,使您能够像在静态数据上表达批处理计算一样表达流计算

本文探讨了流处理领域的两大主要框架Flink和Spark Streaming的对比,包括Spark Streaming的DStream处理方式和Structured Streaming的无界表概念,以及两者的趋势和适用场景。Flink以其实时处理能力受到推荐,而Spark Streaming则作为遗留项目,逐步被Structured Streaming取代。
最低0.47元/天 解锁文章
2916

被折叠的 条评论
为什么被折叠?



