Spark 之 SparkStreaming


前言

本文介绍了有关SparkStreaming的相关知识,包括SparkStreaming架构、SparkStreaming实现WordCount案例、窗口函数等。


Spark 知识系列文章

   此处罗列了有关Spark相关知识的其他文章,有需要的可以进行点击查阅。

   Spark 之 Spark框架及部署

   Spark 之Spark三大数据结构

   Spark 之 RDD转换算子

   Spark 之 RDD行动算子

   Spark 之 SparkSQL

一、Spark Streaming

   Spark Streaming用于流式数据的处理。Spark Streaming使用离散化流(discretized stream)作为抽象表示,叫作DStream。DStream 是随时间推移而收到的数据的序列。在内部,每个时间区间收到的数据都作为 RDD 存在,而DStream是由这些RDD所组成的序列(因此得名“离散化”)。

1.1 Spark Streaming 架构

在这里插入图片描述

1.2 DStream 入门案例(Wordcount)

在这里插入图片描述
将接收器和driver绑定到一起,接收器不停止driver就不停止;
在这里插入图片描述

1.3 Dstream转换

   无状态转化操作就是把简单的RDD转化操作应用到每个批次上,也就是转化DStream中的每一个RDD。也就是说无状态转化(红框reduceByKey)只会统计设定的时间周期内部的数据,对于历史数据不会统计;有状态转化(蓝框)则可以记录历史数据(updateStateByKey),统计过往的所有数据信息。

在这里插入图片描述

   updateStateByKey操作使得我们可以在用新信息进行更新时保持任意的状态。为使用这个功能,你需要做下面两步:
   1. 定义状态,状态可以是一个任意的数据类型。
   2. 定义状态更新函数,用此函数阐明如何使用之前的状态和来自输入流的新值对状态进行更新。
   使用updateStateByKey需要对检查点目录进行配置(黑框),会使用检查点来保存状态。

二、窗口函数

注意:设置窗口的大小时,应该是采集周期的整数倍并且滑动步长也应该是采集周期的整数倍;在这里插入图片描述


总结

本文介绍了有关SparkStreaming的相关知识,包括SparkStreaming架构、SparkStreaming实现WordCount案例、窗口函数等。如果有不足之处或者表述不当的地方欢迎大家指正。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值