文章目录

  • 前言
  • 一、spark简介
  • 二、Spark2.2编译
  • 1.下载maven
  • 2.配置maven环境遍量
  • 3.配置resolv.com
  • 4.下载spark2.2.0并编译
  • 5.进入界面
  • 总结


前言

本来是不想写这篇博客的,但是我找了好久都是直接使用spark的,没有编译spark的,所以还是觉得写一篇如何编译spark的文章以供参考,本次采用的spark2.2.0版本的,需要jdk1.8,详细安装看我前面文章。

一、spark简介

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。
尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。通过名为 Mesos 的第三方集群框架可以支持此行为。
详细简介,点击

二、Spark2.2编译

1.下载maven

http://maven.apache.org/

2.配置maven环境遍量

sudo vi /etc/profile
#MAVEN_HOME
export MAVEN_HOME=/opt/modules/maven-3.3.9
export PATH=${PATH}:${MAVEN_HOME}/bin
export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=1024M -XX:ReservedCodeCacheSize=1024m"

注意自己maven的路径

souce /etc/profile        生效
mvn -version             查看

大数据Spark数据库在哪 spark大数据平台搭建_Hadoop

3.配置resolv.com

sudo vi /etc/resolv.com

添加如下:

nameserver 8.8.8.8
nameserver 8.8.4.4

普通用户要使用Google DNS非常简单,因为Google为他们的DNS服务器选择了两个非常简单易记的IP地址:“8.8.8.8”和“8.8.4.4”。用户只要在系统的网络设置中选择这两个地址为DNS服务器即可

4.下载spark2.2.0并编译

http://spark.apache.org/

解压好进入目录

./dev/make-distribution.sh --name custom-spark  --tgz  -Phadoop-2.5 -Phive -Phive-thriftserver  -Pyarn

需要虚拟机联网,而且编译会要一个多小时才能完成,千万不要因为时间长以为自己搞错了。最终编译成功后会生成一个 spark-2.2.0-bin-custom-spark压缩包,解压后就是真正的可以用的spark了

5.进入界面

bin/spark-shell

大数据Spark数据库在哪 spark大数据平台搭建_大数据Spark数据库在哪_02


上面默认端口号4040

web界面如下

大数据Spark数据库在哪 spark大数据平台搭建_maven_03

总结

关于spark编译就到这里,后面还有spark与其他的集成,正在探索中。写作不易,还请关注,谢谢咯。