Apache Spark - Building Spark with Maven(使用Maven构建Spark)
来源:互联网 发布:mcmc算法 编辑:程序博客网 时间:2024/04/28 16:13
使用Maven构建Spark
- Setting up Maven’s Memory Usage
- Specifying the Hadoop version
- Spark Tests in Maven
- Continuous Compilation
- Using With IntelliJ IDEA
- Building Spark Debian Packages
使用Maven构建Spark需要Maven 3 (构建过程在Maven 3.0.4中已测试) 和 Java 1.6 (以及更高版本).
设置Maven的内存使用
通过设置
MAVEN_OPTS 变量,
你可以设置Maven比平时使用更多的内存. 我们推荐如下设置:
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"
如果运行失败, 你可能看到如下错误信息:
[INFO] Compiling 203 Scala sources and 9 Java sources to /Users/me/Development/spark/core/target/scala-2.10/classes...[ERROR] PermGen space -> [Help 1][INFO] Compiling 203 Scala sources and 9 Java sources to /Users/me/Development/spark/core/target/scala-2.10/classes...[ERROR] Java heap space -> [Help 1]
你可以更改之前提到的 MAVEN_OPTS
变量.
指定Hadoop版本
由于 HDFS 在不同版本间并不是协议兼容的, 如果打算从HDFS读取数据, 你需要针对环境中不同版本的HDFS构建Spark. 通过指定 “hadoop.version” 属性可以完成这点. 如果没有设置, Spark 默认基于 Hadoop 1.0.4 构建.
对于 Apache Hadoop 1.x, Cloudera CDH MRv1, 以及其他的不支持 YARN的 Hadoop 版本, 使用:
# Apache Hadoop 1.2.1$ mvn -Dhadoop.version=1.2.1 -DskipTests clean package# Cloudera CDH 4.2.0 with MapReduce v1$ mvn -Dhadoop.version=2.0.0-mr1-cdh4.2.0 -DskipTests clean package
对于 Apache Hadoop 2.x, 0.23.x, Cloudera CDH MRv2, 以及其他的支持 YARN的 Hadoop 版本. 可以激活 “yarn-alpha” 或者 “yarn” 属性,并且设置 “hadoop.version”, “yarn.version” 属性:
# Apache Hadoop 2.0.5-alpha$ mvn -Pyarn-alpha -Dhadoop.version=2.0.5-alpha -Dyarn.version=2.0.5-alpha -DskipTests clean package# Cloudera CDH 4.2.0 with MapReduce v2$ mvn -Pyarn-alpha -Dhadoop.version=2.0.0-cdh4.2.0 -Dyarn.version=2.0.0-chd4.2.0 -DskipTests clean package# Apache Hadoop 2.2.X ( e.g. 2.2.0 as below ) and newer$ mvn -Pyarn -Dhadoop.version=2.2.0 -Dyarn.version=2.2.0 -DskipTests clean package
Maven测试Spark
测试默认使用 ScalaTest Maven plugin. 部分Spark功能需要打包运行,请首先运行 mvn package
带 -DskipTests
. 然后运行测试:
mvn -Dhadoop.version=... test
.
ScalaTest plugin 同时支持只运行一个特殊测试集, 如下:
$ mvn -Dhadoop.version=... -Dsuites=spark.repl.ReplSuite test
即时编译
使用 scala-maven-plugin 支持增量即时编译. E.g.
$ mvn scala:cc
可以启用即时编译 (i.e. 响应变化). 但是, 这个功能没有广泛的测试.
协同使用 IntelliJ IDEA
安装环境最好是 IntelliJ IDEA 11.1.4. 通过项目根目录下的 pom.xml 文件打开项目之后, 仅需在“Maven Properties”激活 hadoop1 或者 hadoop2 属性即可. 我们没有在 Eclipse/Scala IDE这样尝试过 .
构建 Spark Debian 包
Maven 构建支持构建包含组件 ‘fat-jar’, PySpark, 以及必须的scripts 的 configuration 文件的Debian包. 如下指定即可:
$ mvn -Pdeb -DskipTests clean package
Debian 包将会构建到 assembly/target. 我们对文件名加入一个短 hash码 以辨别不同 SNAPSHOT 版本的构建包.
- Apache Spark - Building Spark with Maven(使用Maven构建Spark)
- 用Maven构建Spark
- 走进Spark生态圈:使用Maven构建Spark开发环境
- org.apache.spark maven依赖
- spark学习笔记:使用maven编译spark
- 使用maven编译spark源码
- 使用Maven编译Spark源码
- 使用IDEA构建Spark开发环境(支持maven)
- 使用IDEA构建Spark Scala开发环境(支持maven)
- idea使用maven构建java和scala项目开发spark
- Intellij IDEA使用Maven构建spark开发环境
- Spark2.1.1<IDEA使用SBT或者Maven构建spark程序>
- eclipse构建maven+scala+spark工程
- eclipse中构建maven+scala+spark
- eclipse构建maven+scala+spark工程
- spark基础(三)------------------------使用maven构建一个基于scala的spark应用程序。
- Spark大师之路:使用maven编译Spark
- Spark大师之路:使用maven编译Spark
- C++ 11新特性在Cocos2dx 3.0应用
- 精灵的优化-使用纹理图集
- as3计时工具类
- 谈谈我对攻读计算机研究生的看法(转)
- 查看CentOS版本方法
- Apache Spark - Building Spark with Maven(使用Maven构建Spark)
- 探寻PhoneGap的真面目
- win7操作系统下使用IIS打开应用程序池报没找到WAS服务
- Ubuntu中如何清理系统垃圾
- Android使用Gson和SharedPreferences存储对象
- 今日食谱及作息
- Android通过tcpdump抓包
- 掌握风靡职场的十大面试题,秒杀一切面试官!
- 2A01-View-Grid