Spark2.X环境准备、编译部署及运行
1.Spark概述
Spark 是一个用于大规模数据处理的快速和通用的计算引擎。
在速度方面, Spark 扩展了广泛使用的 MapReduce 计算模型,而且高效地支持更多计算模式,包括交互式查询和流处理。 在处理大规模数据集时,速度是非常重要的。速度快就意味着我们可以进行交互式的数据操作, 否则我们每次操作就需要等待数分钟甚至数小时。
Spark 的一个主要特点是基于内存进行计算,因而更快。不过即使是必须在磁盘上进行的复杂计算, Spark 依然比 MapReduce 更加高效。
2.Spark生态系统
3.Spark学网站
1)databricks 网站
2)spark 官网
3)github 网站
4.Spark2.x源码下载及编译生成版本(安装在节点2-可自选)
1)Spark2.2源码下载到bigdata-pro02.kfk.com节点的/opt/softwares/目录下。
解压
2)spark2.2编译所需要的环境:Maven3.3.9和Java8
3)Spark源码编译的方式:Maven编译(我们采用此方式)、SBT编译(暂无)和打包编译make-distribution.sh
a)下载Jdk8并安装(如果以前就是此版本则跳过相应步骤)
tar -zxf jdk8u60-linux-x64.tar.gz -C /opt/modules/
b)JAVA_HOME配置/etc/profile
编辑退出之后,使之生效
c)如果遇到不能加载当前版本的问题
d)下载并解压Maven
下载Maven
解压maven
配置MAVEN_HOME
编辑退出之后,使之生效
#查看maven版本
e)在/etc/resolv.conf文件中添加如下内容
注:这样做主要是为了一会儿能够正常从外网下载我们所需要的依赖。
f)编辑make-distribution.sh内容,可以让编译速度更快
4)通过make-distribution.sh源码编译spark(时间很长,一个小时以上,而且可能不会一次成功,请保持网络状况良好!)
编译成功,历时两个半小时~
#编译完成之后解压
#重命名
5.scala安装及环境变量设置
1)下载
2)解压
3)配置环境变量
4)编辑退出之后,使之生效
6.spark2.0本地模式运行测试
1)启动spark-shell测试
基本操作示例:
2)词频统计
a)创建一个本地文件test.txt
b)spark-shell 词频统计
#加载文件内容,形成RDD
#以空格为分割单位,形成若干元组
#形成(key, value)元组对
#根据key值进行统计合并
#可以交换原来的key和value的位置
#排序
#降序排序之后再将key、value顺序换回去
c)通过web页面查看spark服务情况
以上就是博主为大家介绍的这一板块的主要内容,这都是博主自己的学习过程,希望能给大家带来一定的指导作用,有用的还望大家点个支持,如果对你没用也望包涵,有错误烦请指出。如有期待可关注博主以第一时间获取更新哦,谢谢!同时也欢迎转载,但必须在博文明显位置标注原文地址,解释权归博主所有!