Spark 简介与原理

1 Spark 简介与原理


在这里插入图片描述

Spark 是一个大规模数据处理的统一分析引擎。

具有迅速、通用、易用、支持多种资源管理器的特点。

Spark生态系统:

  1. Spark SQL是一种结构化的数据处理模块。它提供了一个称为Data Frame的编程抽象,也可以作为分布式SQL查询引擎。

  2. Spark Streaming是一个Sprak API核心的一个存在可达到超高通量的扩展,并可处理实时数据流并容错。

    数据可以从许多来源Kafka,Flume,Twitter,ZeroMQ, Kinesis,TCP sockets并且可以使用复杂的算法和高级功能表示处理Map,Reduce,Join和Window。 最后,处理后的数据可以被推送到文件系统,数据库。

  3. MLlib(machine learning library)是Spark提供的可扩展的机器学习库。MLlib中已经包含了一些通用的学习算法和工具,如:分类、回归、聚类、协同过滤、降维以及底层的优化原语等算法和工具。MLlib提供的API主要分为以下两类:

    •spark.mllib包中提供的主要API。

    •spark.ml包中提供的构建机器学习工作流的高层次的API。

  4. GraphX在Graphs和Graph-parallel并行计算中是一个新的部分,GraphX是Spark上的分布式图形处理架构,可用于图表计算。

1.1 Spark与Hadoop的区别

两者解决问题的方式不一样。
Hadoop是分布式数据设施;由普通计算机组成的Spark则是一个专门的工具,但它并不会进行分布式数据的存储。

两者可合可分等。
Hadoop可用自身的MapReduce来代替Spark,Spark也可不依赖Hadoop,而选择其他基于云的数据系统平台。

1.2 Spark的应用场景

  • 保险行业:通过使用Spark的机器学习功能来处理和分析所有索赔,优化索赔报销流程。
  • 医疗保健:使用Spark Core,Streaming和SQL构建病人护理系统。
  • 零售业:使用Spark分析销售点数据和优惠券使用情况。
  • 互联网:使用Spark的ML功能来识别虚假的配置文件,并增强他们向客户展示的产品匹配。
  • 银行业:使用机器学习模型来预测某些金融产品的零售银行客户的资料。
  • 科学研究:通过时间,深度,地理分析地震事件来预测未来的事件。
  • Twitter情绪分析:分析大量的推文,以确定特定组织和产品的积极,消极或中立的情绪。
  • 地理空间分析:按时间和地理分析Uber旅行,以预测未来的需求和定价。

1.3 Spark的作业运行流程

  1. 启动SparkContext
  2. 注册申请资源
  3. 分配资源,之后启动Executor
  4. Executor向SparkContext注册
  5. 分配提交任务
  6. 注销释放资源


在这里插入图片描述

1.4 Spark 2.X与Spark 1.X的区别

  • Spark2.x 引入了很多优秀特性,性能上有较大提升,API 更易用。
  • 在“编程统一”方面非常惊艳,实现了离线计算和流计算 API 的统一,实现了 Spark sql 和 Hive Sql 操作 API 的统一。
  • Spark 2.x 基本上是基于 Spark 1.x 进行了更多的功能和模块的扩展,及性能的提升。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值