离散流(DStreams)
离散流或者称为DStreams是Spark流编程提供的基本抽象。它代表了持续的数据流,从一个数据源接收到的数据流或者是在一个输入流上应用转变操作处理后的数据流。
在内部实现上,DStream代表了一系列连续的RDDs.RDDs是Spark对不可变的,分布式数据集的抽象。DStream中的每个RDD包含了一定间隔内的数据,正如下图所示:
任何应用在DStream上的操作都会被转换成应用在底层RDD上的操作。比如,在前面介绍的转换一个行流到单词流的的例子里,flatMap操作作用在lines DStream上的每个RDDs上,然后产生了words DStream的RDDs。正如下图所示: