Spark Streaming实时流处理项目实战(七)Spark Streaming入门

Spark Streaming入门

  • 概述
  • 应用场景
  • 集成Spark生态系统的使用
  • Spark Streaming发展史
  • 词频统计

概述

Spark Streaming是核心Spark API的扩展,可实现实时数据流的可伸缩,高吞吐量,容错流处理。数据可以从像卡夫卡,室壁运动,或TCP套接字许多来源摄入,并且可以使用与像高级别功能表达复杂的算法来处理map,reduce,join和window。最后,可以将处理后的数据推送到文件系统,数据库和实时仪表板。实际上,您可以在数据流上应用Spark的 机器学习和 图形处理算法。
Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第1张图片
在内部,它的工作方式如下。Spark Streaming接收实时输入数据流,并将数据分成批次,然后由Spark引擎处理,以成批生成最终结果流。
Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第2张图片
官方链接

Spark Streaming个人定义:将不同的数据源的数据经过Spark Streaming处理之后将结果集输出到外部文件系统

特点:

  • 低延时
  • 能从错我中高效的恢复:fault-tolerant
  • 能够运行在成百上千的节点
  • 能够将批处理、机器学习、图计算等子框架和Spark Streaming综合起来使用

架构:
Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第3张图片
从上图可以看出,只要安装了spark后,Spark Streaming不需要单独安装
验证了 One stack to rule them all:一栈式解决

应用场景

  • 交易过程中金融欺诈检测
  • 实时电子传感器
  • 电商产品推荐
  • web日志实时监控

Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第4张图片

集成Spark生态系统的使用

Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第5张图片

  • Spark Streaming 与 Spark Core 结合使用
    Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第6张图片
  • Spark Streaming 与 MLlib结合使用
    Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第7张图片
  • Spark Streaming 与 Spark SQL结合使用
    Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第8张图片

Spark Streaming发展史

Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第9张图片

  • 2011年伯克利大学提出
  • 2012年重写了spark core的大部分代码
  • 2014年发布稳定版本0.9版本(Spark Streaming正式毕业)

词频统计

  • 使用spark-submit执行
  • 使用spark-shell执行

spark源码地址:https://github.com/apache/spark/tree/master/examples/src/main
选择scala版本,resources下是测试数据
Spark Streaming实时流处理项目实战(七)Spark Streaming入门_第10张图片

你可能感兴趣的:(spark,spark)