一、DStream转换操作
1、DStream无状态转换操作
每次统计,和之前批次无关,不会进行累计
-
map(func) :对源DStream的每个元素,采用func函数进行转换,得到一个新的Dstream
-
flatMap(func): 与map相似,但是每个输入项可用被映射为0个或者多个输出项
-
filter(func): 返回一个新的DStream,仅包含源DStream中满足函数func的项
-
repartition(numPartitions): 通过创建更多或者更少的分区改变DStream的并行程度
-
reduce(func):利用函数func聚集源DStream中每个RDD的元素,返回一个包含单元素RDDs的新DStream
-
count():统计源DStream中每个RDD的元素数量
-
union(otherStream): 返回一个新的DStream,包含源DStream和其他DStream的元素
-
countByValue():应用于元素类型为(K,V)的DStream上,返回一个(K,V)键值对类型的新DStream,每个键的值是在原DStream的每个RDD中的出现次数
-
reduceByKey(func, [numTasks]):当在一个由(K,V)键值对组成的DStream上执行该操作时,返回一个新的由(K,V)键值对组成的DStream,每一个key的值均由给定的recuce函数(func)聚集起来
-
join(otherStream, [numTasks]):当应用于两个DStream(一个包含(K,V)键值对,一个包含(K,W)键值对),返回一个包含(K, (V, W))键值对的新Dstream
-
cogroup(otherStream, [numTasks]):当应用于两个DStream(一个包含(K,V)键值对,一个包含(K,W)键值对),返回一个包含(K, Seq[V], Seq[W])的元组
-
transform(func):通过对源DStream的每个RDD应用RDD-to-RDD函数,创建一个新的DStream。支持在新的DStream中做任何RDD操作

本文详细介绍了Spark Streaming中的DStream转换操作,包括无状态转换如map、filter、reduceByKey等,以及有状态转换的滑动窗口操作,如window、reduceByWindow、updateStateByKey等。同时,文章还提到了DStream的输出操作,如何将处理后的数据输出到文本文件或MySQL数据库。
最低0.47元/天 解锁文章
1088

被折叠的 条评论
为什么被折叠?



