走进Spark Streaming
离散流DStream
DStream是Spark Streaming中的一个最基本的抽象,代表了一系列连续的数据流,本质上就是一系列的RDD。StreamingContext会根据设置的批处理的时间间隔将产生的RDD归为一批,这一批RDD就是一个DStream,该DStream里面产生都是相同业务逻辑的RDD,只不过是RDD里面读取的数据不相同。
DStream每隔一段时间生成一个RDD,我们对DStream进行操作,本质上就是对里面的对应时间的RDD进行操作。
DStream与DStream之间存在依赖关系,在一个固定时间点,两个存在依赖关系的DStream对应的RDD也存在依赖关系,每个固定的时间,其实产生了一个小的DAG,周期性的将生成的小的DAG提交到集群中运行。
批数据(**batch data**):这是化整为零的第一步,将实时流数据以时间片为单位进行分批,将流处理转化为时间片数据的批处理。随着持续时间的推移,这些处理结果就形成了对应的结果数据流了。
时间片或批处理时间间隔( batch interval**)**:这是人为地对流数据进行定量的标准,以时间片作为我们拆分流数据的依据。一个时间片的数据对应一个RDD实例。
窗口长度(**window length**):一个窗口覆盖的流数据的时间长度,必须是批处理时间间隔的倍数。
Input DStream : input DStream是一个特殊的DStream,将Spark Streaming连接到一个外部数据源来读取数据。
还没有评论,来说两句吧...