DStream 为批处理间隔生成多少个 RDD


无论

数据量有多大,一个批量的数据间隔是否在DStream中生成一个且只有一个RDD?

是的,每个批处理间隔只有一个RDD,在每个批处理间隔生成,与记录数无关(包含在RDD中 - 里面可能有零条记录)。

如果没有,并且RDD的创建取决于元素的数量,那么您就不会有同步(微批处理)流,而是一种异步处理形式。

回复这个线程已经很晚了。但是,仍然值得再补充几点。 RDD 的数量取决于您应用程序中有多少个接收器。这就是为什么"sparkContext.read"将有多个RDD。但是,如果您只有一个接收器或Kafka作为源(无接收器),在这种情况下,您将只有一个RDD。

在 Spark Streaming Programming Guide - Discretized Streams (DStreams) 中,有:

DStream 中的每个 RDD 都包含来自特定间隔的数据

最新更新