zoukankan      html  css  js  c++  java
  • Spark源码编译

    为什么需要编译?

            因为不同版本的HDFS在协议上是不兼容的,所以如果你想用你的Spark从HDFS上读取数据,那么你就的选择相应版本的HDFS来编译Spark,这个可以在编译的时候通过设置hadoop.version来选择,默认情况下,Spark默认为编译成Hadoop 1.0.4版本。现在可以使用的方法有Maven编译,sbt编译(时间较长),Spark自带脚本编译(实际还是调用Maven)。

            当然也可以去官网直接下载编译好的Spark,不过需要官方提供版本支持,我的hadoop版本为2.2,所以必须要自己编译。

     


    采用spark自带脚本编译

            因为该脚本其实是调用了Maven进行编译的,所以必须先安装Maven。

    1. 安装Maven

    从官网下载Maven包,解压到/usr/local/maven:

    tar -zxf apache-maven-3.2.3-bin.tar.gz

    sudo mv apache-maven-3.2.3 /usr/local/maven

    配置安装目录:

    sudo gedit /etc/profile  

    在末尾加上:

    MAVEN_HOME=/usr/local/mvn

    export MAVEN_HOME

    export PATH=${PATH}:${MAVEN_HOME}/bin

    验证:

    mvn –v

    2. 编译spark

            在下载下来的Spark源码中的同一级目录下有个make-distribution.sh脚本,这个脚本可以打包Spark的发行包,可以通过下面的命令运行(编译成hadoop2.2版本,并打包):

    ./make-distribution.sh --tgz -Phadoop-2.2 -Pyarn -DskipTests -Dhadoop.version=2.2.0

     

    编译完成:

     

    可以在spark目录下找到该包:


  • 相关阅读:
    C#中的索引器
    ASP.NET中解决乱码问题
    System.Web.HttpContext.Current.Session为NULL值的问题?
    C# winForm 自定义鼠标样式的两种方法
    SQL中的排名函数
    VS2005打包项目(带卸载功能)
    HttpModule与HttpHandler
    怎样为你的SQLServer表选择索引 zt
    如何使用SQLDiag工具来追踪死锁错误 ZT
    几个性能调优相关的文章
  • 原文地址:https://www.cnblogs.com/xiaomaohai/p/6158085.html
Copyright © 2011-2022 走看看