Hadoop中Spark怎么用

发布时间:2021-11-24 14:28:21 作者:小新
来源:亿速云 阅读:261

这篇文章给大家分享的是有关Hadoop中Spark怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

一、Spark 是什么

Spark是UC Berkeley AMP lab所开源的类Hadoop MapReduce的通用分布式并行计算框架。Spark拥有hadoop MapReduce所具有的优点,但和MapReduce 的最大不同之处在于Spark是基于内存的迭代式计算——Spark的Job处理的中间输出结果可以保存在内存中,从而不再需要读写HDFS,除此之外,一个MapReduce 在计算过程中只有map 和reduce 两个阶段,处理之后就结束了,而在Spark的计算模型中,可以分为n阶段,因为它内存迭代式的,我们在处理完一个阶段以后,可以继续往下处理很多个阶段,而不只是两个阶段。

因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。其不仅实现了MapReduce的算子map 函数和reduce函数及计算模型,还提供更为丰富的算子,如filter、join、groupByKey等。是一个用来实现快速而同用的集群计算的平台。

Spark是一个用来实现快速而通用的集群计算的平台。扩展了广泛使用的MapReduce计算模型,而且高效地支持更多的计算模式,包括交互式查询和流处理。在处理大规模数据集的时候,速度是非常重要的。Spark的一个重要特点就是能够在内存中计算,因而更快。即使在磁盘上进行的复杂计算,Spark依然比MapReduce更加高效。

二、Scala的安装(所有节点)

下载安装包

wget https://downloads.lightbend.com/scala/2.11.7/scala-2.11.7.tgz

解压安装包

tar xf scala-2.11.7.tgz 
mv scala-2.11.7 /usr/local/scala

配置scala环境变量/etc/profile.d/scala.sh

# Scala ENV
export SCALA_HOME=/usr/local/scala
export PATH=$PATH:$SCALA_HOME/bin

使scala环境变量生效

source /etc/profile.d/scala.sh

三、Spark 安装(所有节点)

1、下载安装

# 下载安装包
wget https://mirrors.aliyun.com/apache/spark/spark-2.3.1/spark-2.3.1-bin-hadoop2.7.tgz

# 解压安装包
tar xf spark-2.3.1-bin-hadoop2.7.tgz 
mv spark-2.3.1-bin-hadoop2.7 /usr/local/spark

2、配置 Spark 环境变量

编辑文件/etc/profile.d/spark.sh,修改为如下:

# Spark ENV
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin:

生效环境变量

source /etc/profile.d/spark.sh

四、Spark 配置(namenode01)

1、配置 spark-env.sh

编辑文件/usr/local/spark/conf/spark-env.sh,修改为如下内容:

export JAVA_HOME=/usr/java/default
export SCALA_HOME=/usr/local/scala
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_IP=namenode01
export SPARK_WORKER_MEMORY=4g
export SPARK_WORKER_CORES=2
export SPARK_WORKER_INSTANCES=1

2、配置 slaves

编辑文件/usr/local/spark/conf/slaves,修改为如下内容:

datanode01
datanode02
datanode03

3、配置文件同步到其他节点

scp /usr/local/spark/conf/* datanode01:/usr/local/spark/conf/
scp /usr/local/spark/conf/* datanode02:/usr/local/spark/conf/
scp /usr/local/spark/conf/* datanode03:/usr/local/spark/conf/

4、启动 Spark 集群

Spark服务只使用hadoop的hdfs集群。

/usr/local/spark/sbin/start-all.sh

五、检查

1、JPS

[root@namenode01 ~]# jps
14512 NameNode
23057 RunJar
14786 ResourceManager
30355 Jps
15894 HMaster
30234 Master

[root@datanode01 ~]# jps
3509 DataNode
3621 NodeManager
1097 QuorumPeerMain
9930 RunJar
15514 Worker
15581 Jps
3935 HRegionServer

[root@datanode02 ~]# jps
3747 HRegionServer
14153 Worker
3322 DataNode
3434 NodeManager
1101 QuorumPeerMain
14221 Jps

[root@datanode03 ~]# jps
3922 DataNode
4034 NodeManager
19186 Worker
19255 Jps
1102 QuorumPeerMain
4302 HRegionServer

2、Spark WEB 界面

访问 http://192.168.1.200:8080/

Hadoop中Spark怎么用

3、spark-shell

Hadoop中Spark怎么用

同时,因为shell在运行,我们也可以通过192.168.1.200:4040访问WebUI查看当前执行的任务。

Hadoop中Spark怎么用

感谢各位的阅读!关于“Hadoop中Spark怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. Spark:超越Hadoop MapReduce
  2. Spark和Hadoop大决战

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

hadoop spark

上一篇:Frida Java Hook示例分析

下一篇:浏览器上如何实现CNN可视化

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》