Spark的編譯
由于Spark的運行環境的多樣性,如可以運行在hadoop的yarn上,這樣就必須要對Spark的源碼進行編譯。下面介紹一下Spark源碼編譯的詳細步驟:
1、Spark的編譯方式:編譯的方式可以參考官網: https://spark.apache.org/docs/latest/building-spark.html
Spark的源碼編譯有三種方式:
(1)SBT(簡單構建工具)方式 ;
(2)maven方式,這種編譯方式是根據源碼中的pom.xml文件來編譯的,編譯的方式是每個項目逐個編譯,最后并不會生成一個打包好的文件;
(3)打包編譯:make-distribution.sh ,這種方式實際上也是采用maven方式編譯,但是最后會生成一個打包好的文件。因此,我們采用的是打包方式編譯。
1、安裝之前必須要準備的軟件:
(1)JDK安裝
其版本要求是JDK1.7+,由于Spark后期的 版本不支持JDK1.6.因此需要安裝JDK1.7+。
(2)maven 安裝
其版本要求是3.0.5
(3)SCALA安裝
其版本的要求是2.10的版本
2、下載Spark的源碼。
進入官網下載: http://spark.apache.org/downloads.html
3、解壓縮源碼
tar -zxvf spark-1.3.1.tgz
4、編譯:
(1)采用maven的方式編譯:
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
mvn -Pyarn -Phadoop-2.4 -Dhadoop.version<span class="o">=2.4.0 -DskipTests <code class="language-bash" data-lang="bash">-Phive -Phive-thriftserver</code> clean package</span>
(2)采用打包的方式來編譯:make-distribution.sh
./make-distribution.sh --tgz-Pyarn -Phadoop-2.4 -Dhadoop.version=2.4.0 -Phive -Phive-thriftserver
針對cdh的版本應該是:
./make-distribution.sh --tgz-Pyarn -Phadoop-2.4 -Dhadoop.version=2.6.0-cdh5.4.0 -Phive -Phive-thriftserver
(3)編譯好之后會生成一個包:spark-1.3.0-bin-2.6.0-cdh5.4.0.tgz或者spark-1.3.0-bin-2.6.0.tgz