星火流和星火结构化流是否使用相同的微批调度引擎?星火结构流比星火流有更低的延迟吗?
发布于 2019-02-02 20:54:32
星火流和星火结构化流使用相同的微批调度引擎吗?
哪儿有的事儿。当然不是。它们在内部是不同的,但是共享相同的高级别流和记录的概念。
在Spark结构化流中,您可以使用DataStreamWriter.foreach
或DataStreamWriter.foreachBatch
方法了解火花流中的情况。
主要的区别在于如何描述流流水线。在Spark结构化流中,您使用Spark的Dataset API,而Spark流则使用Spark的RDD API。两者都是基于RDD的计算,但是Spark使用更高级别的抽象(例如Dataset
API)。
他们都使用“微批调度引擎”吗?是的,但是Spark结构化流试图利用一些可以连续查询的数据源(而不是微批处理)。
星火结构流比星火流有更低的延迟吗?
很难回答。星火流的创建者们决定发展Spark结构化流,并希望在查询性能和表现力方面取得更好的效果。不再推荐火花流。
发布于 2019-02-01 04:41:26
结构化流主要是一个更高级别的抽象,允许您定义流逻辑,然后使用Spark引擎在同一个微批处理引擎上执行。
默认情况下,结构化流使用微批处理引擎,但是,如果您使用的是火花2.3+,那么您可以使用连续模式,从而降低到1 millisecond
延迟时间。
https://stackoverflow.com/questions/54472481
复制相似问题