SparkStreaming使用之DStream
前言
概念:
实时数据处理 和 离线数据处理的区别:
在于数据处理延迟的长短:实时是毫秒级别,离线数据处理则是小时或者天
批量数据处理与流式处理方式的区别:
侧重点在于 :数据的处理方式,批量则是一批次处理,流式则是来一个处理一个
一、SparkStreaming是什么?
SparkStreaming 是Spark 中用于处理实时计算的模块。
类似SparkSql中封装的DataFrame 和 DataSet一样,SparkStreaming中也封装了RDD,叫DStreaming
SparkStreaming 属于准实时,微批次的实时处理框架
准实时(把数据RDD封装成DStream来处理,本质上还是需要离线计算,只是把离线计算的数据量小化,这样计算就快一些,秒级)
微批次(批量计算数据大,微批次上,时间按秒来算,数据量小)
二、DStream是什么?
DStream:Discretized Stream,离散化流,SparkStreming中基础抽象数据格式,封装的RDD
在Exector上的数据采集器,采集数据后,安装时间格式采集数据,封装成一个一个RDD,然后把RDD传给SparkStreamingContext后封装成DStream