计算利器Spark——Spark概述

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dongdong9223/article/details/84761985

转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/84761985
本文出自【我是干勾鱼的博客

Ingredients:

1 环境准备

1.1 Java下载及安装

参考安装Java,并做好相应配置。Java安装在目录:

/opt/java/jdk1.8.0_162

1.2 Scala下载及安装

参考安装Scala,并做好相应配置。Scala安装在目录:

/opt/scala/scala-2.12.7

1.3 Spark下载

下载spark-2.4.0.tgz,将其解压缩到:

/opt/spark/

目录下,解压缩之后路径为:

/opt/spark/spark-2.4.0-bin-hadoop2.7

2 Spark概览

Spark Overview这里面给出了一个Running the Examples and Shell,里面给出了使用Scala, Java, Python and R如何运行Spark的小例子。这些例子都在Standalone环境下执行,即解压缩Spark之后就可以运行,不需要Hadoop环境的支持。

2.1 示例

./bin/run-example SparkPi 10

这里输出内容较多,也可以:

./bin/run-example SparkPi 2>&1 | grep “Pi is”

输出结果:

Pi is roughly 3.136235681178406

2.2 shell脚本

这里有一个使用Scala运行的方式:

./bin/spark-shell.sh --master local

这里:

–master

的意义可以参考master URL for a distributed cluster

然后会进入Scala终端环境,在Scala环境中,输入:

scala> sc.textFile(“README.md”).filter(line => line.contains(“Spark”)).count
res0: Long = 20

这里面是在统计README.md文件中包含字符串“Spark”的行数,能够看出有20行包含这个字符串

3 集群架构

3.1 概述

Spark官网在Launching on a Cluster中给出了Cluster Mode Overview,也就是给出了一个简短的概览,来说明在Spark中是如何在集群环境中运行的,如图所示:

在这里插入图片描述

3.2 组件

能够看出Spark的运行逻辑还是挺明显的,这里面包括以下几个组件:

  • SparkContext: SparkContext是Spark的入口点,可以理解为应用程序的main函数。虽然在一个JVM进程中可以创建多个SparkContext,但是只能有一个是active状态。如果想创建一个新的SparkContext实例,必须先调用stop方法来停掉当前active类型的SparkContext实例。从上图也容易看出,SparkContext处于Driver Program的核心位置,所有与Cluster Manager、Worker Node有关的交互操作都需要SparkContext来完成。

  • Worker Node: Worker Node是执行计算等任务处理的节点,是实际计算工作的执行者,它是集群中任何可以运行Application代码的节点,类似于YARN中的NodeManager节点。在Standalone模式中指的就是通过Slave文件配置的Worker节点,在Spark on Yarn模式中指的就是NodeManager节点。

  • Cluster Manager: Cluster Manager集群管理器,应用程序申请的资源进行管理

3.3 Cluster Manager的种类

目前Spark的Cluster Manager有以下几种:

4 参考

阿里云ECS上搭建Hadoop集群环境——使用两台ECS服务器搭建“Cluster mode”的Hadoop集群环境

Spark Overview

Cluster Mode Overview

Spark Standalone Mode

Spark2.1.0入门:Spark的安装和使用

Spark运行模式(一)-----Spark独立模式

Spark Standalone Mode

Spark入门实战系列–4.Spark运行架构

看了之后不再迷糊-Spark多种运行模式

猜你喜欢

转载自blog.csdn.net/dongdong9223/article/details/84761985