spark 有三种编译方式:SBT、MAVEN、make-distribution.sh。SBT、MAVEN两种方式打出来的包比较大,不适合部署使用。因此我们通常使用第三种方式打包。

./make-distribution.sh --tgz --skip-java-test --with-tachyon -Dyarn.version=2.2. -Dhadoop.version=2.2. -Djava.version=1.7 -Dprotobuf.version=2.5. -Pyarn -Phive -Phive-thriftserver

这条命令可以简化为:

./make-distribution.sh --tgz --skip-java-test --with-tachyon -Dhadoop.version=2.2. -Djava.version=1.7 -Dprotobuf.version=2.5. -Pyarn -Phive -Phive-thriftserver

因为yarn的版本用的是hadoop版本变量,即hadoop是什么版本,yarn就是什么版本。

1.使用这种方式不用单独修改maven配置,因为脚本里面会在编译之前执行这条命令

2.--tgz 生成部署包;

3.--skip-java-test 滤过测试阶段;

4.--with-tachyon 感觉tachyon是趋势,所以加上tachyon的支持;

5.-Dhadoop.version 指定hadoop的版本,默认为1.0.4;

6.-Djava.version 指定java版本,默认是1.6;

7.-Dprotobuf.version 指定protobuf的版本,默认是2.4.1;这里指定是因为hadoop使用的2.5.0,不修改的话搭配的时候会出问题;

8.-Pyarn -Phive -Pthriftserver 分别加入yarn、hive的支持。

在根目录下面生成了一个binary包


解压部署包后或者直接在编译过的目录,通过配置conf下的文件,就可以使用spark了


关于编译的时候scala版本问题,我遇到过,它默认的是2.10.4,现在最新的2.11.x,如果不指定直接编译,外部编写scala程序的时候需要引用编译好的jar包,会产生scala版本冲突

但是如果编译的时候指定,就需要注意,如果指定过新的版本,比如

./make-distribution.sh --tgz --skip-java-test -Dyarn.version=2.2. -Dhadoop.version=2.2. -Pyarn -Phive -Phive-thriftserver -Dscala-2.11

编译的时候就会出现类似

我也去网上找了,assembly包最新更新到了scala2.10的版本,所以不会编译成功,除非自己再去编译assembly的jar包,比较麻烦

我采取的是降低自己的使用的scala版本,和spark保持一致,反正没什么区别


如果编译的时候指定了--with-tachyon,那么会在出现编译成功后任务不停止,继续下载tachyon的binary包,然后拆解加入即将生成的spark部署包中


spark1.2.0编译的更多相关文章

  1. Apache Spark1.1.0部署与开发环境搭建

    Spark是Apache公司推出的一种基于Hadoop Distributed File System(HDFS)的并行计算架构.与MapReduce不同,Spark并不局限于编写map和reduce ...

  2. CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14

    准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...

  3. centos 7.0 编译安装php 7.0.3

    php下载页面 http://cn2.php.net/downloads.php 7.0.3多地区下载页面 http://cn2.php.net/get/php-7.0.3.tar.gz/from/a ...

  4. Valgrind 3.11.0编译安装

    Valgrind 3.11.0编译安装 Valgrind是一款用于内存调试.内存泄漏检测以及性能分析的软件开发工具. Valgrind遵守GNU通用公共许可证条款,是一款自由软件. 到3.3.0版本为 ...

  5. 基于Spark1.3.0的Spark sql三个核心部分

    基于Spark1.3.0的Spark sql三个核心部分: 1.可以架子啊各种结构化数据源(JSON,Hive,and Parquet) 2.可以让你通过SQL,saprk内部程序或者外部攻击,通过标 ...

  6. android5.0 编译

    android5.0编译需要jdk1.7版本,将来本地可能需要同时维护两套jdk版本,请参考: 在线安装openjdk1.7 sudo apt-get install openjdk-7-jre op ...

  7. spark1.2.0版本SparkSQL使用parquet类型注意事项

    在Spark1.2.0版本中是用parquet存储类型时注意事项: sql语句: select * from order_created_dynamic_partition_parquet; 在spa ...

  8. spark1.2.0安装

    standalone 安装SCALA 下载.解压.加入环境变量 安装spark1.2.0 下载.解压.加入环境变量 tar zxvf spark--bin-.tgz export SPARK_HOME ...

  9. VC6.0编译boost

    今天学习了下VC6.0下boost的编译,只是对regex进行了编译,据说全部编译需要2个多小时,在此记录下学习过程中遇到的问题以便今后查看. 最开始直接从网上(www.boost.org)下载了当前 ...

随机推荐

  1. 文本读写vs二进制读写

    [文本读写vs二进制读写] 在学习C语言文件操作后,我们都会知道打开文件的函数是fopen,也知道它的第二个参数是 标志字符串.其中,如果字符串中出现'b',则表明是以打开二进制(binary)文件, ...

  2. 自然对数e

    上学时课本里提到过,有一种以无理数e=2.71828--为底数的对数,称为自然对数.当时老师并没有讲明白这是个啥东西.并且还有一个很奇怪的极限,也是靠记忆的,完全不理解. \[\lim_{n\to\i ...

  3. 原生JS修改标签样式为带阴影效果

    代码如下: JS部分 //点击时候,改变样式 function GetCategoryInfo(value) { var getInfo = value.toString().split(','); ...

  4. Tomcat 系统架构与设计模式,第 1 部分: 工作原理(转载)

    简介: 这个分为两个部分的系列文章将研究 Apache Tomcat 的系统架构以及其运用的很多经典设计模式.本文是第 1 部分,将主要从 Tomcat 如何分发请求.如何处理多用户同时请求,还有它的 ...

  5. spring与jpa整合 简化persistence.xml配置文件 使用属性文件 数据源dbcp访问数据库

    ===========appliction.xml配置文件======================= <?xml version="1.0" encoding=" ...

  6. 获取父进程ID

    本程序主要功能是:获取某程序的ParentProcessID 直接上代码: // parent.cpp (Windows NT/2000) // // This example will show t ...

  7. jquery获取表单的值

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. PPT美化大师

    PPT美化大师 http://docer.mysoeasy.com/ PPT文档美化大师是一款专门为Office文档优化锦上添花的工具,该软件时尚个性打造出最漂亮的模板,有了这款软件在操作起来也简单许 ...

  9. USB DATA Toggle

    For bulk and interrupt transfers, the data toggle resets <0> only on Set Configuration, Set In ...

  10. PostgreSQL的注释嵌套的例子

    pgsql=# -- Multiline comments pgsql=# SELECT 'Multi' /* This comment extends across pgsql*# * number ...