溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Hadoop中Spark怎么用

發(fā)布時(shí)間:2021-11-24 14:28:21 來(lái)源:億速云 閱讀:275 作者:小新 欄目:大數(shù)據(jù)

這篇文章給大家分享的是有關(guān)Hadoop中Spark怎么用的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

一、Spark 是什么

Spark是UC Berkeley AMP lab所開(kāi)源的類Hadoop MapReduce的通用分布式并行計(jì)算框架。Spark擁有hadoop MapReduce所具有的優(yōu)點(diǎn),但和MapReduce 的最大不同之處在于Spark是基于內(nèi)存的迭代式計(jì)算——Spark的Job處理的中間輸出結(jié)果可以保存在內(nèi)存中,從而不再需要讀寫HDFS,除此之外,一個(gè)MapReduce 在計(jì)算過(guò)程中只有map 和reduce 兩個(gè)階段,處理之后就結(jié)束了,而在Spark的計(jì)算模型中,可以分為n階段,因?yàn)樗鼉?nèi)存迭代式的,我們?cè)谔幚硗暌粋€(gè)階段以后,可以繼續(xù)往下處理很多個(gè)階段,而不只是兩個(gè)階段。

因此Spark能更好地適用于數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)等需要迭代的MapReduce的算法。其不僅實(shí)現(xiàn)了MapReduce的算子map 函數(shù)和reduce函數(shù)及計(jì)算模型,還提供更為豐富的算子,如filter、join、groupByKey等。是一個(gè)用來(lái)實(shí)現(xiàn)快速而同用的集群計(jì)算的平臺(tái)。

Spark是一個(gè)用來(lái)實(shí)現(xiàn)快速而通用的集群計(jì)算的平臺(tái)。擴(kuò)展了廣泛使用的MapReduce計(jì)算模型,而且高效地支持更多的計(jì)算模式,包括交互式查詢和流處理。在處理大規(guī)模數(shù)據(jù)集的時(shí)候,速度是非常重要的。Spark的一個(gè)重要特點(diǎn)就是能夠在內(nèi)存中計(jì)算,因而更快。即使在磁盤上進(jìn)行的復(fù)雜計(jì)算,Spark依然比MapReduce更加高效。

二、Scala的安裝(所有節(jié)點(diǎn))

下載安裝包

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環(huán)境變量/etc/profile.d/scala.sh

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

使scala環(huán)境變量生效

source /etc/profile.d/scala.sh

三、Spark 安裝(所有節(jié)點(diǎn))

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 環(huán)境變量

編輯文件/etc/profile.d/spark.sh,修改為如下:

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

生效環(huán)境變量

source /etc/profile.d/spark.sh

四、Spark 配置(namenode01)

1、配置 spark-env.sh

編輯文件/usr/local/spark/conf/spark-env.sh,修改為如下內(nèi)容:

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,修改為如下內(nèi)容:

datanode01
datanode02
datanode03

3、配置文件同步到其他節(jié)點(diǎn)

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、啟動(dòng) Spark 集群

Spark服務(wù)只使用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 界面

訪問(wèn) http://192.168.1.200:8080/

Hadoop中Spark怎么用

3、spark-shell

Hadoop中Spark怎么用

同時(shí),因?yàn)閟hell在運(yùn)行,我們也可以通過(guò)192.168.1.200:4040訪問(wèn)WebUI查看當(dāng)前執(zhí)行的任務(wù)。

Hadoop中Spark怎么用

感謝各位的閱讀!關(guān)于“Hadoop中Spark怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI