
Apache Spark在2016年的时候启动了Structured Streaming项目,一个基于Spark SQL的全新流计算引擎Structured Streaming,让用户像编写批处理程序一样简单地编写高性能的流处理程序。
Structured Streaming并不是对Spark Streaming的简单改进,而是吸取了在开发Spark SQL和Spark Streaming过程中的经验教训,以及Spark社区和Databricks众多客户的反馈,重新开发的全新流式引擎,致力于为批处理和流处理提供统一的高性能API。同时,在这个新的引擎中,也很容易实现之前在Spark Streaming中很难实现的一些功能,比如Event Time(事件时间)的支持,Stream-Stream Join(2.3.0 新增的功能),毫秒级延迟(2.3.0 即将加入的 Continuous Processing)。
Structured Streaming
Spark Streaming是Apache Spark早期基于RDD开发的流式系统,用户使用DStream API来编写代码,支持高吞吐和良好的容错。其背后的主要模型是Micro Batch(微批处理),也就是将数据流切成等时间间隔(BatchInterval)的小批量任务来执行。
Structured Streaming则是在Spark 2.0加入的,经过
Apache Spark的Structured Streaming是一个基于Spark SQL引擎的流处理框架,它提供了与批处理相同的API,支持Event Time处理,并解决了Spark Streaming的不足。Structured Streaming将流数据视为无限动态表格,允许用户以SQL或DataFrame/Dataset API进行实时查询。它支持端到端的应用程序,具有exactly-once语义,并复用了Spark SQL的执行引擎以实现高性能。
订阅专栏 解锁全文
511

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



