《Spark Streaming实时流式大数据处理实战》 ——1.2.2 Spark Streaming初识

举报
华章计算机 发表于 2020/02/22 13:28:39 2020/02/22
【摘要】 本节书摘来自华章计算机《Spark Streaming实时流式大数据处理实战》 —— 书中第1章,第1.2.2节,作者是肖力涛 。

1.2.2  Spark Streaming初识

  在Spark的核心基础上,Spark Streaming是一个高吞吐、高容错的实时流处理系统。Spark Streaming可以从Kafka、Flume、Kinesis或者TCP套接字获取数据,然后利用复杂的操作(如map、reduce、window等)对其进行处理,最终将处理后的数据输出到文件系统、数据库或者控制台等,输入与输出的过程如图1.6所示。

 image.png

图1.6  Spark Streaming输入和输出过程

  实际上,Spark Streaming在接收到实时的流数据时,会将其按照批数据(batch)来处理,之后再对批数据进行操作得到最终的结果数据流,如图1.7所示。

 image.png

图1.7  Spark批数据处理过程

  可以看出,Spark Streaming在内部采用了上述介绍流式处理框架时提到的微批处理的处理模式,而非直接对原始数据流进行处理。Spark Streaming对这种处理方式做了一个更高层的抽象,将原始的连续的数据流抽象后得到的多个批处理数据(batches)抽象为离散数据流(discretized stream),即DStream。DStream本身有两种产生方式:一是从Kafka、Flume或者Kinesis等输入数据流上直接创建;二是对其他DStream采用高阶API操作之后得到(如map、flatMap等)。在其内部,DStream本质是由RDD数据结构的序列来表示的,关于RDD我们会在后续3.6节中进一步说明。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。