基情链接
模式说明
① 本地模式(Local Mode)
将 Spark
应用程序中任务 Task
运行在一个本地 JVM Process
进程中,通常开发测试使用
② 集群模式(Cluster Mode)
将 Spark
应用程序运行在集群上,比如 Hadoop YARN
集群,Spark 自身集群 Standalone
及 Apache Mesos
集群
模式分类 | 说明 | 场景 |
---|---|---|
Spark Standalone 集群模式 | Spark自带,典型的 Mater/Slaves 模式,使用 Zookeeper 搭建高可用 | 开发测试及生产环境使用 |
Hadoop YARN 集群模式 | 运行在 yarn 集群之上,由 yarn 负责资源管理,Spark 负责任务调度和计算 | 生产环境使用 |
Apache Mesos 集群模式 | 运行在 mesos 资源管理器框架之上,由 mesos 负责资源管理,Spark 负责任务调度和计算 | 国内使用较少 |
③ 云服务(Cloud)
云服务 Kubernetes 模式
注:本博客使用的是本地模式(Local Mode)
搭建准备
环境准备
云服务器一台
安装包下载
目前 Spark
最新稳定版本,企业中使用较多版本为 2.x
的版本系列
Spark 下载界面:Downloads | Apache Spark
Spark 2.4.5 版本下载:Index of /dist/spark/spark-2.4.5 (apache.org)
本博客安装的版本为:spark-2.4.5-bin-hadoop2.7.tgz
安装及配置
① 解压
# 解压软件包
tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz
# 创建软连接
ln -s /opt/server/spark-2.4.5-bin-hadoop2.7 /opt/server/spark
② 配置权限
# 设置用户的权限,当前是什么用户就将权限配置给该用户
chown -R root /opt/server/spark-2.4.5-bin-hadoop2.7
chgrp -R root /opt/server/spark-2.4.5-bin-hadoop2.7
启动及测试
① 启动
cd /opt/server/spark
# 启动
bin/spark-shell
② 测试:统计本地文件的行数
# 准备文件
cd /opt/server/
# 编辑文件
vim student.txt
# 增加以下内容
01 Jackson 1990-01-01 男
02 Harry 1990-12-21 男
03 Ben 1990-05-20 男
04 Jack 1990-08-06 男
# 读取本地文件
val textFile = sc.textFile("file:///opt/server/student.txt")
# 计算行数
textFile.count()
② 测试:统计 HDFS 文件的行数