Spark Streaming中的基本抽象DStream

DStream是Spark Streaming提供的基本抽象,它表示连续的数据流,可以是从源接收的输入数据流,也可以是通过转换输入流生成的已处理数据流。在内部,DStream由一系列连续的RDD表示,这是Spark对不可变分布式数据集的抽象,DStream中的每个RDD都包含来自特定时间间隔的数据,对DStream进行操作就是对RDD进行操作,如下图所示

举个例子来说明一下,就拿前面一直在用的经典案例wordcount吧,在Spark Streaming中进行wordcount操作时,是通过DStream进行的,每个一定时间产生一个小的批次,这个批次结束了之后DStream并不会结束,而是一直存在的,直到下一个批次产生,一直如此,一个DStream中对应的是一连串的RDD,例如在t1时间内切分压平,与1生成元组,聚合等DStream,都会产生一个RDD,这一连串的RDD,实际上就是一个小的DAG(有向无环图,小DAG是因为DAG中对应的数据少),小的DAG触发了Action,提交到集群上,t1,t2.....时间点内都是这样运作的,只是RDD中的数据不一样而已,所以一个DStream中就有了多个RDD,每隔一个时间就会生成一个RDD,DStream和DStream之间存在依赖关系,在一个时间点内,存在依赖关系的DStream对应的RDD之间也存在依赖关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值