Spark学习(一) -- Spark安装及简介
標(biāo)簽(空格分隔): Spark
學(xué)習(xí)中的知識(shí)點(diǎn):函數(shù)式編程、泛型編程、面向?qū)ο?、并行編程?/p>
任何工具的產(chǎn)生都會(huì)涉及這幾個(gè)問(wèn)題:
思考: 數(shù)據(jù)規(guī)模達(dá)到一臺(tái)機(jī)器無(wú)法處理的時(shí)候,如何在有限的時(shí)間內(nèi)對(duì)整個(gè)數(shù)據(jù)集進(jìn)行遍歷及分析?
Google針對(duì)大數(shù)據(jù)問(wèn)題提出的一些解決方案:
- MapReduce: 計(jì)算框架;
- GFS:數(shù)據(jù)存儲(chǔ)
- BigTable:NoSQL始祖。
Hadoop是根據(jù)MapReduce和GFS兩大論文所做的開(kāi)源實(shí)現(xiàn),因此,它主要解決2大問(wèn)題:數(shù)據(jù)存儲(chǔ),分布式計(jì)算框架。
YARN是Hadoop2和Hadoop1的最大區(qū)別,將集群管理本身獨(dú)立出來(lái)。而計(jì)算模型則更加專(zhuān)注于問(wèn)題本身。
Spark簡(jiǎn)介
Spark是由UC Berkeley的AMPLab出品的,主要?jiǎng)?chuàng)作者是Matei Zaharia. Spark與MapReduce位于Hadoop生態(tài)圈的同一層,主要解決分布式計(jì)算框架的問(wèn)題。
Spark與Hadoop有以下關(guān)系:
Mac Scala安裝
使用brew安裝:
brew install scala
下載包安裝
tar zxvf ~/Download/scala-2.12.1.tgz #解壓
mv ~/Download/scala-2.12.1 ~/Download/scala #重命名
mv ~/Download/scala /usr/local/share/ #將文件夾放到合適的位置
修改環(huán)境變量,如果不是管理員可使用 sudo 進(jìn)入管理員權(quán)限,修改配置文件profile,在文件的末尾加入:
export PATH="$PATH:/usr/local/share/scala/bin"
驗(yàn)證
$ scala
顯示:Welcome to Scala version 2.11.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_40).
Type in expressions to have them evaluated.
Type :help for more information.
Mac Spark安裝
使用brew安裝
$ brew install apache-spark
- cd /usr/local/Cellar/apache-spark/1.3.0/bin/
- 輸入:./spark-shell啟動(dòng)spark
WordCount in spark-shell
在spark-shell中完成單詞統(tǒng)計(jì):
val file = sc.textFile("/usr/local/Cellar/apache-spark/1.3.0/README.md") // 以空格為拆分標(biāo)志,將文件中的每一行分割為多個(gè)單詞 val words = file.flatMap(line => line.split(" ")) // 對(duì)每一個(gè)單詞進(jìn)行計(jì)數(shù) val wordNumber = words.map(w => (w, 1)) // 將單詞進(jìn)行分類(lèi)合并,計(jì)算每個(gè)單詞總的出現(xiàn)次數(shù) val wordCounts = wordNumber.reduceByKey(_+_) //將所有單詞及其出現(xiàn)次數(shù)打印出來(lái) wordsCounts.foreach(println)上述工作的簡(jiǎn)單表述形式:
sc.textFile("/usr/local/Cellar/apache-spark/1.3.0/README.md") .flatMap(line => line.split(" ")) .map(w => (w, 1)) .reduceByKey(_+_) .foreach(println)轉(zhuǎn)載于:https://www.cnblogs.com/little-YTMM/p/6238847.html
總結(jié)
以上是生活随笔為你收集整理的Spark学习(一) -- Spark安装及简介的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 从零开始学编程——编程语言
- 下一篇: 代码比较工具DiffMerge的下载和使