【scau大数据技术与原理1】综合性实验Spark集群的安装和使用——先导篇

Scala简介

  1. Scala是一门现代的多范式编程语言,运行于Java平台(JVM),并兼容现有的Java程序
  2. Scala是Spark的原生编程语言,但Spark还支持Java、Python、R作为编程语言
  3. Scala的优势是提供了REPL(Read-Eval-Print Loop,交互式解释器),提高程序开发效率
  4. Scala的特性: Scala具备强大的并发性,支持函数式编程,可以更好地支持分布式系统, Scala语法简洁,能提供优雅的API, Scala兼容Java,运行速度快,能融合到Hadoop生态圈中

相对于Hadoop的优势

  1. Spark的计算模式也属于MapReduce,但不局限于Map和Reduce操作,还提供了多种数据集操作类型,编程模型比Hadoop MapReduce更灵活
  2. Spark提供了内存计算,可将中间结果放到内存中,对于迭代运算效率更高

Spark生态系统 Ecosystem

spark同时支持批处理、交互式查询和流数据处理

Spark运行架构:

  1.  集群资源管理器(Cluster Manager)
  2.  运行作业任务的工作节点WorkerNode
  3.  每个应用的任务控制节点Driver
  4.  工作节点上负责具体任务的执行进程(Executor)

一个Application由一个Driver和若干Job构成,一个Job由多个Stage构成,一个Stage由多个没有Shuffle关系的Task组成

Drivers--->Jobs---Stages--->Tasks

应用被分解成多个Job,每个Job包含多个Stage,每个Stage又完成多个任务。

当执行一个Application时,Driver会向集群管理器申请资源,并在节点上启动Executor,同时向Executor发送应用程序代码和文件,然后在Executor上执行Task。运行结束后,执行结果会返回给Driver,或者写到HDFS或者其他数据库中。

RDD运行惰性调用机制

RDD执行过程实例

RDD的处理过程被称为一个Lineage(血缘关系),即DAG拓扑排序的结果;优点:惰性调用、管道化、避免同步等待、不需要保存中间结果、每次操作变得简单。

RDD完整运行过程

安装Spark之前需要安装Java环境和Hadoop环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值