结构化流媒体是实时流处理引擎吗?

YuF*_*hen 3 apache-spark spark-streaming apache-flink

我们知道Flink是一个非常实时的流处理引擎,可以在它们到达时处理记录,我们也知道spark spark是一个微批流处理引擎.

不过我们也知道spark发布了结构化流媒体,怎么样呢?它是一个非常实时的流处理引擎,就像Flink一样,它可以在它到达而不是微批处理或仍然使用微批处理模式时立即处理记录?

Jac*_*ski 5

结构化流媒体是实时流处理引擎吗?

TL; DR No.或是.取决于"实时流处理引擎"的定义.

最高2.3.0-SNAPSHOT(当前主站),结构化流媒体使用微批次,似乎没有任何迹象表明它将在未来的版本中有所不同.

深入研究结构化流媒体的流式查询引擎

StreamExecution  (流式查询的执行环境)启动一个单独的执行线程,检查新记录是否可用.

一旦启动,microBatchThread(常规Java的java.lang.Thread对象)执行runBatches,每个触发间隔开始执行.

通过代码揭示了用于流式查询的内部执行引擎,它可以批量处理每个触发器.

我的理解是,就微批处理而言,没有任何改变.它就像Spark Streaming中的那样,也用于结构化流媒体.


无耻的插件:你可能想要更详细地探索这个主题,阅读我关于结构化流媒体的gitbook,我正在写这篇文章是为了理解非常低级的细节.欢迎评论.