Spark1.3.0安装
之前在用Hadoop寫ML算法的時(shí)候就隱約感覺Hadoop實(shí)在是不適合ML這些比較復(fù)雜的算法。記得當(dāng)時(shí)寫完kmeans后,發(fā)現(xiàn)每個(gè)job完成后都需要將結(jié)果放在HDFS中,然后下次迭代的時(shí)候再從文件中讀取,對(duì)于kmeans這種高迭代的算法,感覺Hadoop的瓶頸會(huì)出現(xiàn)在IO上,后來又寫了個(gè)Naive?bayes,這種非常簡單的算法,用Hadoop寫,由于只有一種mapreduce范式,完全感覺到力不從心,為了處理這些簡單的格式,總共用了4個(gè)mapreduce才完成,哭了。后面的logistics?Regress等等只會(huì)讓Hadoop更加難堪。
之前一直聽spark如何虐Hadoop,但是舍友說spark只是因?yàn)樵趦?nèi)存上跑,必然玩爆Hadoop,所以當(dāng)時(shí)潛意識(shí)認(rèn)為spark是內(nèi)存版的Hadoop,昨天無意中看到關(guān)于spark的RDD的論文,感覺spark很適合寫ML,并且性能比Hadoop好也并不全是因?yàn)樵趦?nèi)存上跑,他所解決的問題剛好也是我在寫Hadoop時(shí)候不想遇到的問題。同時(shí)spark最近這段時(shí)間這么火爆,沒有理由不嘗試下。
總的來說安裝spark是比較簡單的,可能是因?yàn)橹耙呀?jīng)裝了Hadoop。
由于我已經(jīng)裝了Hadoop2.4了,所以下了spark-1.3.0-bin-hadoop2.4。安裝spark還需要有jdk,python,scala。因?yàn)檠bHadoop的時(shí)候已經(jīng)裝了jdk和python了,所以只介紹下安裝scala和spark
1?安裝scala
下載scala-2.10.5
將其放置你的某個(gè)目錄下,我這里是/home/Scala
接著解壓縮?
tar?-xvzf?scala-2.10.5.tgz
接著就是添加路徑名
vi?/etc/profile
增加兩行
export?SCALA_HOME=/home/Scala/scala-2.10.5
export?PATH=$PATH:$SCALA_HOME/bin
接著便是立即生效
source?/etc/profile
驗(yàn)證方式和java很像
scala?-version
如果正確安裝了,就會(huì)出現(xiàn)
Scala?code?runner?version?2.10.5?--Copyright?2002-2013等信息
接著就可以將scala拷貝到另外幾個(gè)節(jié)點(diǎn)上,我這里是兩個(gè)節(jié)點(diǎn),并且記得修改對(duì)應(yīng)節(jié)點(diǎn)的profile文件
安裝spark
同理,下載spark-1.3.0-bin-hadoop2.4。這里的Hadoop是根據(jù)你機(jī)子上的Hadoop版本來的,目前最新的spark版本是1.4,相比1.3最明顯的就是增加了對(duì)R語言的支持,由于目前還用不到R,加之實(shí)驗(yàn)室機(jī)房不讓用外網(wǎng),安裝R語言又比較麻煩,所以下載1.3.0了。
將spark-1.3.0-bin-hadoop2.4放置到你的某個(gè)目錄下。例如我這里是/home/Spark/
解壓縮
tar?-xvzf?spark-1.3.0-bin-hadoop2.4.tgz
接著是增加路徑
vi?/etc/profile
export?SPARK_HOME=/home/Spark/spark-1.3.0-bin-hadoop2.4
export?PATH=$PATH:$SPARK_HOME/bin
然后令其生效
source?/etc/profile
接著是修改配置文件
1?添加從節(jié)點(diǎn)IP
vi?slaves
我這里添加了兩個(gè)節(jié)點(diǎn)
10.107.8.110
10.107.8.120
2
修改spark的環(huán)境,主要是jdk,scala以及Hadoop的路徑,master的IP
添加:
export?JAVA_HOME=(你自己的jdk路徑,如果不清楚可以在shell中打$JAVA_HOME)
export?SCALA_HOME=(你的scala路徑)
export?SPARK_MASTER_IP=(master的hostname)
export?SPARK_WORKER_MEMORY=4g(這個(gè)具體看你節(jié)點(diǎn)的配置了)
export?HADOOP_CONF_DIR=(如果不清楚可以在shell打$HADOOP_CONF_DIR)
接著就是將spark復(fù)制到另外的節(jié)點(diǎn)上就好了。
如果一切順利,spark就算是安裝完了。
簡要驗(yàn)證
1?在瀏覽器上輸入masterIP:8080例如我這里是http://10.107.8.110:8080/
會(huì)出現(xiàn)各個(gè)worker的節(jié)點(diǎn)狀況
?
輸入http://10.107.8.110:4040則會(huì)出現(xiàn)spark的jobs
?
2?進(jìn)入到spark下的bin目錄運(yùn)行spark-shell
運(yùn)行論文上的例子
我們先把一段文件放到HDFS中
hadoop?fs?-copyFromLocal?/home/sunrye/words.txt?hdfs://10.107.8.110:9000/spark_test/
接著運(yùn)行?
var?lines=sv.textFile(“hdfs://10.107.8.110:9000/sprak_test/words.txt”)
?
此時(shí)相當(dāng)于生成了一個(gè)RDD,接著就可以在RDD上實(shí)現(xiàn)各自action了,例如我們統(tǒng)計(jì)他的字?jǐn)?shù)就可以
lines.count()
?
當(dāng)然可也可查詢某個(gè)關(guān)鍵字的字?jǐn)?shù),例如
lines.filter(_.contains(“the”)).count()
?
轉(zhuǎn)載于:https://www.cnblogs.com/sunrye/p/4586283.html
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的Spark1.3.0安装的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js方法的声明与调用
- 下一篇: js定时器、高亮修改单元格背景色