我们知道Flink是一个非常实时的流媒体处理引擎,它可以在到达时处理记录,我们也知道火花流是微批处理流处理引擎。
但是我们也知道spark发布了结构化流媒体,怎么样呢?它是一个非常实时的流处理引擎,就像Flink一样,它可以在它到达而不是微批处理或仍然使用微批处理模式时立即处理记录吗?
答案 0 :(得分:5)
结构化流媒体实时流处理引擎吗?
TL; DR 否。或是。取决于“实时流处理引擎”的定义。
直到 2.3.0-SNAPSHOT (当前master),结构化流式传输使用微批次,似乎没有任何迹象表明它将会出现不同版本。< / p>
StreamExecution(流式查询的执行环境)starts a separate thread of execution,用于检查新记录是否可用。
启动后,java.lang.Thread
(常规Java curl_exec
对象)执行runBatches的starts execution every trigger interval。
通过代码揭示了确实批量处理每个触发器的流式查询的内部执行引擎。
我的理解是,就微批处理而言,没有任何改变。它就像Spark Streaming中的那样,也用于结构化流媒体。
无耻插件:您可能希望在阅读my gitbook about Structured Streaming的更多详细信息中探索该主题,我正在撰写这些内容是为了理解非常低级的细节。欢迎评论。
答案 1 :(得分:2)
在上一篇Spark Summit's intro(2017年6月的SF)中,他们讨论了“持续管道”和一个新的执行模型没有微博,并且检查了延迟&lt; 1ms(而不是今天可能的10-100ms),见幻灯片35和Spark-20928。
但目标版本是 的 2.3.0。强>