Scala IDE for Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)
? 不多說,直接上干貨!
?
?
這篇博客是,?
是在Scala IDEA for Eclipse里maven創(chuàng)建scala和java代碼編寫環(huán)境。
Scala IDEA for Eclipse里用maven來創(chuàng)建scala和java項(xiàng)目代碼環(huán)境(圖文詳解)
?
?
?
?
?
?
本博文包括:
? Scala IDE for Eclipse的下載
?Scala IDE for Eclipse的安裝
? 本地模式或集群模式
?
?
?
我們知道,對(duì)于開發(fā)而言,IDE是有很多個(gè)選擇的版本。如我們大部分人經(jīng)常用的是如下。
Eclipse?*版本
Eclipse?*下載
? 而我們知道,對(duì)于spark的scala開發(fā)啊,有為其專門設(shè)計(jì)的eclipse,Scala IDE for Eclipse。
?
?
?
?
1、Scala IDE for Eclipse的下載
?
?http://scala-ide.org/? ?
?
?
?
?
?2、Scala IDE for Eclipse的安裝
進(jìn)行解壓
?
?
?
?
?
??3、Scala IDE for Eclipse的WordCount的初步使用
?在這之前,先在本地里安裝好java和scala
?
?
因?yàn)?#xff0c;我這篇博客,是面向基礎(chǔ)的博友而分享的。所以,在此,是在Scala IDE for Eclipse里,手動(dòng)新建scala項(xiàng)目。
?
注意:推薦使用IDEA , 當(dāng)然有人肯定還依依不舍Scala IDE for Eclipse。
則,如下是我寫的另一篇博客
Scala IDEA for Eclipse里用maven來創(chuàng)建scala和java項(xiàng)目代碼環(huán)境(圖文詳解)
?
?
?
?
?
?
?
?
?
?
?
默認(rèn)竟然變成了scala 2.11.8去了
這一定要換!
???????? Scala2.11.8(默認(rèn)的版本) ? --------> ? ? ?scala2.10.4(我們的版本)
?
?
?
?
?
第一步:修改依賴的scala版本,從scala2.11.*,至scala2.10.*。
?
?
?
這里是兼容版本,沒問題。Scala2.10.6和我們的scala2.10.4沒關(guān)系!!!
?
?
?
?
?
第二步:加入spark的jar文件依賴
http://spark.apache.org/downloads.html
我這里,以spark-1.5.2-bin-hadoop2.6.tgz為例,其他版本都是類似的,很簡(jiǎn)單!
?
?
http://www.apache.org/dyn/closer.lua/spark/spark-1.5.2/spark-1.5.2-bin-hadoop2.6.tgz
?
?
?
?
?
?
第三步:找到spark依賴的jar文件,并導(dǎo)入到Scala IDE for Eclipse的jar依賴中
?
添加Spark的jar依賴spark-1.5.2-bin-hadoop2.6.tgz里的lib目錄下的spark-assembly-1.5.2-hadoop2.6.0.jar
?
?
?
?
?
第四步:在src下,建立spark工程包
?
?
?
?
?
?
第五步:創(chuàng)建scala入口類
?
?
定義main方法
?
?
?
?
?
第六步:把class變成object,并編寫main入口方法。
?
?
本地模式
第1步
?
第2步
?
第3步
?
?
?
?第4步
?
?第5步
?
第6步
?
?
?
?
?
集群模式
這里,學(xué)會(huì)巧,復(fù)制粘貼,WordCount.scala 為?WordCount_Clutser.scala。
?
?
?
?
?
?
現(xiàn)在呢,來從Linux里,拷貝文件到hadoop集群里
即,將
? ? ?/usr/local/spark/spark-1.5.2-bin-hadoop2.6/README.md ? 到 ?/ 或 ?hdfs://SparkSingleNode:9000
spark@SparkSingleNode:/usr/local/hadoop/hadoop-2.6.0$ pwd
/usr/local/hadoop/hadoop-2.6.0
spark@SparkSingleNode:/usr/local/hadoop/hadoop-2.6.0$ bin/hadoop fs -copyFromLocal /usr/local/spark/spark-1.5.2-bin-hadoop2.6/README.md ?hdfs://SparkSingleNode:9000/
spark@SparkSingleNode:/usr/local/hadoop/hadoop-2.6.0$ bin/hadoop fs -ls /
Found 2 items
-rw-r--r-- 1 spark supergroup 3593 2016-09-18 10:15 /README.md
drwx-wx-wx - spark supergroup 0 2016-09-09 16:28 /tmp
spark@SparkSingleNode:/usr/local/hadoop/hadoop-2.6.0$
?
// val lines:RDD[String] = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是文件路徑,minPartitions指的是最小并行度
// val lines = sc.textFile("D://SoftWare//spark-1.6.2-bin-hadoop2.6//README.md", 1)//path指的是文件路徑,minPartitions指的是最小并行度
// val lines = sc.textFile("hdfs://SparkSingleNode:9000/README.md", 1)//沒必要會(huì)感知上下文
// val lines = sc.textFile("/README.md", 1)//path指的是文件路徑,minPartitions指的是最小并行度
val lines = sc.textFile("/README.md")//為什么,這里不寫并行度了呢?因?yàn)?hdfs會(huì)有一個(gè)默認(rèn)的
?
?
如,我們的這里/里,有188個(gè)文件,每個(gè)文件小于128M。
所以,會(huì)有128個(gè)小集合。
當(dāng)然,若是大于的話,我們可以人為干預(yù),如3等
?
做好程序修改之后,
我這里啊,遇到如上的錯(cuò)誤。
http://blog.csdn.net/weipanp/article/details/42713121?
(3)Exception?in?thread?"main"?java.lang.UnsatisfiedLinkError:?org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)V
at?org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(Native?Method)
修復(fù)方法:在hadoop2.6源碼里找到NativeCrc32.java,創(chuàng)建與源碼一樣的包名,拷貝NativeCrc32.java到該包工程目錄下。
?
hadoop-2.6.0-src/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/NativeCrc32.java
?
?
以及,缺少hadoop.dll,注意是64位的。放到hadoop-2.6.0下的bin目錄下
?
?
?玩玩spark-1.5.2-bin-hadoop2.6.tgz
?繼續(xù),,,出現(xiàn)了一些問題!
?
?
其實(shí)啊,在集群里,模板就是如下
val file = spark.textFile("hdfs://...”)
val counts = file.flatMap("line => line.spilt(" "))
.map(word => (word,1))
.reduceByKey(_+_)
counts.saveAsTextFile("hdfs://...”)
?
?
?
?
?
?
?
?
?
?
?
歡迎大家,加入我的微信公眾號(hào):大數(shù)據(jù)躺過的坑 ? ? 免費(fèi)給分享 ?同時(shí),大家可以關(guān)注我的個(gè)人博客:
???http://www.cnblogs.com/zlslch/?? 和 ?http://www.cnblogs.com/lchzls/?
?
人生苦短,我愿分享。本公眾號(hào)將秉持活到老學(xué)到老學(xué)習(xí)無休止的交流分享開源精神,匯聚于互聯(lián)網(wǎng)和個(gè)人學(xué)習(xí)工作的精華干貨知識(shí),一切來于互聯(lián)網(wǎng),反饋回互聯(lián)網(wǎng)。
目前研究領(lǐng)域:大數(shù)據(jù)、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、人工智能、數(shù)據(jù)挖掘、數(shù)據(jù)分析。 語言涉及:Java、Scala、Python、Shell、Linux等 。同時(shí)還涉及平常所使用的手機(jī)、電腦和互聯(lián)網(wǎng)上的使用技巧、問題和實(shí)用軟件。 只要你一直關(guān)注和呆在群里,每天必須有收獲
?
? ? ? ?以及對(duì)應(yīng)本平臺(tái)的QQ群:161156071(大數(shù)據(jù)躺過的坑)
?
?
?
?
?
?
?
?
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/zlslch/p/5880006.html
總結(jié)
以上是生活随笔為你收集整理的Scala IDE for Eclipse的下载、安装和WordCount的初步使用(本地模式和集群模式)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端-html实现省份、地市、区县三级联
- 下一篇: 【CodeVS】1023 GPA计算