(八)算法工程师遇上大数据-Spark

系列文章目录

(一)算法工程师遇上大数据-Scala
(二)算法工程师遇上大数据-Hadoop
(三)算法工程师遇上大数据-Hive
(四)算法工程师遇上大数据-Zookeepr
(五)算法工程师遇上大数据-Flume
(六)算法工程师遇上大数据-Strom
(七)算法工程师遇上大数据-Kafka
(八)算法工程师遇上大数据-Spark
(九)算法工程师遇上大数据-Flink



在这里插入图片描述

前言

本文介绍一下微批次处理框架Spark。

一、介绍

       Spark,其实就是数据处理框架,就是基于内存计算的通用大规模数据处理框架。Spark的出现是因为要弥补Hadoop的不足,那Hadoop又有什么不足呢?        Hadoop中的MapReduce的表达能力弱:不是所有的数据分析模型都可以表达成map和reduce两阶段的。Hadoop中的MapReduce短板问题:必须等待所有的Map都执行完才能执行reduce。写入磁盘耗时:Hadoop中间处理的时候需要写入磁盘,虽然每次写入时间很短,可能也就几秒,但是扛不住数量多啊,数量非常大的时候,写入时间问题就被放大啦~        基于以上问题,Spark横空出世!!!表达能力强:提供Java、Scala、Python和R几种语言的API,支持SQL、机器学习和图计算,覆盖了绝大多数大数据计算的场景。不存在短板问题:因为没有MapReduce,采用函数式编程方法。写入内存省时:中间计算过程写入内存,不要反复读取磁盘。

二、快速入门

1.主要应用

在这里插入图片描述

      Spark powers a stack of libraries including SQL and DataFrames, MLlib for machine learning, GraphX, and Spark Streaming. You can combine these libraries seamlessly in the same application.
      Write applications quickly in Java, Scala, Python, R, and SQL.

2.Spark Streaming

(1)计算框架
在这里插入图片描述
在这里插入图片描述

      Spark Streaming是核心Spark API的扩展,可实现实时数据流的可伸缩,高吞吐量,容错流处理。数据可以从像卡夫卡,室壁运动,或TCP套接字许多来源摄入,并且可以使用与像高级别功能表达复杂的算法来处理map,reduce,join和window。最后,可以将处理后的数据推送到文件系统,数据库和实时仪表板。可以在数据流上应用Spark的 机器学习和 图形处理算法。

(2)例子
在这里插入图片描述
在这里插入图片描述

3.RDD/Accumulators/Broadcasts Vars

编程API

4.部署

在这里插入图片描述


三、总结

      Apache Spark是用于大规模数据处理的统一分析引擎。它提供Java,Scala,Python和R中的高级API,以及支持常规执行图的优化引擎。它还支持一组丰富的更高级别的工具,包括SparkSQL用于SQL和结构化数据的处理,MLlib机器学习,GraphX用于图形处理,以及结构化流的增量计算和流处理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值