我是靠谱客的博主 魁梧大地,最近开发中收集的这篇文章主要介绍1、Spark 2.1 源码编译支持CDH,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述


目前CDH支持的spark版本都是1.x, 如果想要使用spark 2x的版本, 只能编译spark源码生成支持CDH的版本。

一、准备工作


找一台Linux主机, 由于spark源码编译会下载很多的第三方类库包, 因此需要主机能够联网。

1、安装Java, 配置环境变量, 版本为JDK1.7或者以上

下载地址: http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
export JAVA_HOME=/usr/java/default
export JRE_HOME=/usr/java/default/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

2、安装Maven, 版本为3.3.9或者以上

下载地址: https://mirrors.tuna.tsinghua.edu.cn/apache//maven/maven-3/3.3.9/binaries/
export MAVEN_HOME=/usr/local/apache-maven-3.3.9
export PATH=$MAVEN_HOME/bin:$PATH

二、编译Spark的源码包

1、下载spark 2.1.0的源码包


1110497-20170813185129835-1629223649.png
 

2、增加cdh的repository

解压spark的源码包, 编辑pom.xml文件, 在repositories节点 加入如下配置:

<repository>
<id>cloudera</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
1110497-20170813185130101-56082760.png
 
 

3、开始编译

./dev/make-distribution.sh --name 2.6.0-cdh5.7.0 --tgz
-Pyarn -Phadoop-2.6 -Phive -Phive-thriftserver -Dhadoop.version=2.6.0-cdh5.7.0

在编译过程中, 可能会出现各种莫名其妙的原因导致中断, 只需要重新执行上面的编译命令即可, 第一编译可能需要几个小时,第一次编译成功后, 后面再编译就很快了。

编译成功后, 可以看到如下:
1110497-20170813185130335-453615098.png
 

编译成功后, 可以看到生成了tar包:
1110497-20170813185130507-2105055354.png
 

三、测试


1、提交到yarn上面

1110497-20170813185130695-272703856.png
 
需要配置HADOOP_CONF_DIR或者YARN_CONF_DIR环境变量:
# export HADOOP_CONF_DIR=/etc/hadoop/conf
1110497-20170813185130913-1841905676.png
 
val file=spark.sparkContext.textFile("/tmp/appveyor.yml")
val wc = file.flatMap(line => line.split(",")).map(word=>(word,1)).reduceByKey(_ + _)
1110497-20170813185131273-1668857419.png
 

2、访问hive的表

需要将hive的hive-site.xml复制到spark的conf目录下面。
scala> spark.sql("select * from iot.tp").collect().foreach(println)
1110497-20170813185131679-1460519289.png
 

















转载于:https://www.cnblogs.com/xiaohe001/p/7354323.html

最后

以上就是魁梧大地为你收集整理的1、Spark 2.1 源码编译支持CDH的全部内容,希望文章能够帮你解决1、Spark 2.1 源码编译支持CDH所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(52)

评论列表共有 0 条评论

立即
投稿
返回
顶部