重新编译spark 增加spark-sql适配CDH

参考资料

让cloudera manager装的spark支持hql
Apache Spark学习:将Spark部署到Hadoop 2.2.0上

CDH内嵌spark版本不支持spark-sql,可能是因为cloudera在推自己的impala;如果上线spark却不能使用sql这种结构化语言,对于大部分分析人员其实是有一定的门槛的

准备环境

maven等相关环境安装
scala安装
下载spark源码
cdh5.5.0中使用的spark-1.5.0,下载对应源码
http://archive.apache.org/dist/spark/spark-1.5.0/spark-1.5.0.tgz
解压文件到/pwl/code/spark-1.5.0

编译获取assembly的jar包

修改maven的内存配置,防止内存溢出,在$mavn_home/bin下的mvn增加下面这一行

MAVEN_OPTS="$MAVEN_OPTS -Xms256m -Xmx1024m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=128m"

mvn内存配置
对spark进行编译,进入spark解压目录 /pwl/code/spark-1.5.0 运行以下命令,指定yarn、thrift、cdh,注意hadoop.version和scala版本

mvn -Pyarn -Dhadoop.version=2.6.0-cdh5.5.0   -Dscala-2.10.3 -Phive -Phive-thriftserver   -DskipTests clean package

这是我编译过程中遇到错误调整过后根目录下的pom.xml文件,存放在百度网盘中供参考:spark源码中的pom.xml
编译时间比较长,结果如下
编译结果
目标是需要一个新的加入了hive相关的jar包spark-assembly.jar,编译结果的路径为
/pwl/code/spark-1.5.0/assembly/target/scala-2.10 ,如下图,其中/pwl/code/spark-1.5.0为源码的解压路径
结果jar包
编译后,有200M大小…如果下载到win下修改后缀名为rar或者zip打开进入org/apache目录有hive和thrift相关的目录,下图为编译前后org/apache下目录结果对比

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值