原创转载请注明出处:http://agilestyle.iteye.com/blog/2337293
Prerequisite
硬件环境:Ubuntu16.04(8G内存)
软件环境:jdk1.7.0_80+scala-2.11.8+apache-maven-3.3.9
配置Linux下的环境变量(hadoop、hbase、hive以及zookeeper可以忽略)
vi .bashrc
# setup Java & Hadoop environment export JAVA_HOME=/home/spark/app/jdk1.7.0_80 export SCALA_HOME=/home/spark/app/scala-2.11.8 export MVN_HOME=/home/spark/app/apache-maven-3.3.9 export HADOOP_HOME=/home/spark/app/hadoop-2.6.0-cdh5.9.0 export HBASE_HOME=/home/spark/app/hbase-1.2.0-cdh5.9.0 export HIVE_HOME=/home/spark/app/hive-1.1.0-cdh5.9.0 export ZOOKEEPER_HOME=/home/spark/app/zookeeper-3.4.9 export PATH=$PATH:${JAVA_HOME}/bin:${MVN_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${HBASE_HOME}/bin:${HIVE_HOME}/bin:${ZOOKEEPER_HOME}/bin:${SCALA_HOME}/bin
配置Maven的镜像,这里推荐使用阿里云,这样在build的时候下载相关的dependency会快很多
<mirror> <id>nexus-aliyun</id> <mirrorOf>central</mirrorOf> <name>Nexus aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </mirror>
配置Maven的一个Repository(不加的话,Spark Project External MQTT会build不过)
<repository> <id>mqtt-repo</id> <name>MQTT Repository</name> <url>https://repo.eclipse.org/content/repositories/paho-releases</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository>
Build
Ubuntu需要安装R语言的相关依赖,否则build的时候会报这个错
“Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.4.0:exec (sparkr-pkg)”
sudo apt-get install r-base
Spark 1.x的版本是基于Scala 2.10的,自定义build改为Scala 2.11
./change-scala-version.sh 2.11
配置make-distribution.sh,注释掉130-142,添加143-146
#VERSION=$("$MVN" help:evaluate -Dexpression=project.version $@ 2>/dev/null | grep -v "INFO" | tail -n 1) #SCALA_VERSION=$("$MVN" help:evaluate -Dexpression=scala.binary.version $@ 2>/dev/null\ # | grep -v "INFO"\ # | tail -n 1) #SPARK_HADOOP_VERSION=$("$MVN" help:evaluate -Dexpression=hadoop.version $@ 2>/dev/null\ # | grep -v "INFO"\ # | tail -n 1) #SPARK_HIVE=$("$MVN" help:evaluate -Dexpression=project.activeProfiles -pl sql/hive $@ 2>/dev/null\ # | grep -v "INFO"\ # | fgrep --count "<id>hive</id>";\ # # Reset exit status to 0, otherwise the script stops here if the last grep finds nothing\ # # because we use "set -o pipefail" # echo -n) VERSION=1.6.3 SCALA_VERSION=2.11.8 SPARK_HADOOP_VERSION=2.6.5 SPARK_HIVE=1
执行make-distribution.sh
./make-distribution.sh --name hadoop2.6.5 --tgz -Psparkr -Phadoop-2.6 -Dhadoop.version=2.6.5 -Dscala-2.11 -Phive -Phive-thriftserver -Pyarn
等大约半个小时吧(取决于各自的网速,我是在公司的内网上build的,没有墙,应该会快点)
成功之后会在Spark source package目录下生成一个tgz的文件
比如:spark-1.6.3-bin-hadoop2.6.5.tgz
相关推荐
在这个“spark-job-server Build程序包”中,我们看到的是通过 sbt(Scala Build Tool)构建的 Spark JobServer 的特定版本,即 V0.7,它基于 Scala 2.10 版本。 Sbt 是 Scala 社区广泛使用的构建工具,它允许...
步骤一:docker build -t registry/spark:3.1.2 -f kubernetes/dockerfiles/spark/Dockerfile . 步骤二:docker images查看镜像 步骤三:导出镜像 docker save -o spark3.1.2.tar registry/spark:3.1.2
您可以在找到它们安装适用于 Windows 的 Spark Core USB 驱动程序安装 Node.js 安装 Spark-CLI 创建一个 Spark Build 帐户领取您的 Spark Core 配置 Spark Core 的 WiFi 确定您的 Spark 核心将代码部署到 Spark ...
### 构建Spark 1.4.1/1.4.0在Linux系统上的知识点解析 #### 一、概述 本篇文章将详细解读构建Apache Spark 1.4.1/1.4.0版本在Linux操作系统上的过程以及遇到的具体错误,并提供相应的解决方案。 #### 二、构建...
1.Spark及其生态圈简介.pdf 2.Spark编译与部署(上)--基础环境搭建.pdf 2.Spark编译与部署(下)--Spark编译安装.pdf 2.Spark编译与部署(中)--Hadoop编译安装.pdf 3.Spark编程模型(上)--概念及SparkShell实战....
2. **配置用户自定义库**:在项目上右键选择 `Properties` -> `Java Build Path` -> `Libraries` -> `Add Library` -> `User Library`,创建一个新的库(如 `sparkJars`)并将 Spark 的 JAR 文件(除了 examples 包...
7. `build/`:构建脚本和配置文件,如`build.gradle`,用于编译Spark源码。 8. `README.md`:项目简介和指南,帮助用户快速了解Spark和如何使用源码。 9. `LICENSE`:Spark的开源许可证,遵循Apache 2.0协议。 10. `...
在 Scala 代码中,你需要先引入相应的依赖,例如在 `build.sbt` 或 `pom.xml` 文件中添加: ```scala libraryDependencies += "com.hortonworks" %% "shc-core" % "1.1.1-2.1-s_2.11" // 对于 Scala 2.11 和 Spark ...
- 修改`build.sbt`或`pom.xml`配置文件,排除Hive相关的依赖。 - 使用Maven或SBT进行编译,生成不含Hive的Spark二进制包。 3. **环境配置**:在配置Hadoop和Hive环境时,需将Spark设置为Hive的执行引擎。在Hive的...
这通常通过Maven或Gradle的pom.xml或build.gradle文件完成。 2. **配置SparkContext**:在Spring应用中,我们可以创建一个Bean来初始化和管理SparkContext。这样,Spring会负责SparkContext的生命周期管理,确保其...
- `build/`:构建脚本和配置文件,用于编译和打包Spark。 编译源码通常需要Java、Scala和Maven环境,通过执行`build/sbt package`命令可以生成可执行的JAR包。同时,源码还包含了丰富的测试用例,可以帮助理解各个...
例如,在sbt的build.sbt文件中,你可以将此jar作为外部库依赖添加。 此外,由于此jar是预先编译并集成了所有依赖的"fat jar",因此它消除了可能的版本冲突问题,使得在多版本Hadoop环境中的部署变得更加简单。但...
"build"目录通常包含了构建Spark所需的配置文件和脚本。在这里,用户可以找到sbt(Scala Build Tool)的项目定义,这是Spark使用的主要构建工具。通过这些文件,用户可以编译源代码,生成可执行的JAR文件,或者设置...
3. **配置编译**:在解压后的Spark目录中,找到`build.sbt`和`project/`目录下的其他配置文件,根据需要修改相关参数,如`scalaVersion`、`assemblyMergeStrategy`等。 4. **执行编译**:在命令行中进入Spark目录,...
- 添加构建文件:在Ant视图中选择`Add Buildfiles`,展开`spark` -> `build`文件夹,选择`build.xml`文件。 - 构建项目:右键点击Ant视图中的`spark`,选择`Build`,等待构建成功提示。 - 配置运行:右键项目 -> ...
The book "Spark for Python Developers" by Amit Nandi aims to provide a concise guide for Python developers looking to implement Spark big data analytics and build real-time, insightful trend trackers...
2. 引入Spark库:在`build.sbt`或`pom.xml`文件中添加Spark依赖。对于Scala项目,通常使用`libraryDependencies += "org.apache.spark" %% "spark-core" % "x.x.x"`,其中`x.x.x`是Spark的版本号。 **三、编写...