Spark SQL大数据分析快速上手-完全分布模式安装

【图书介绍】《Spark SQL大数据分析快速上手》-CSDN博客

《Spark SQL大数据分析快速上手》【摘要 书评 试读】- 京东图书

大数据与数据分析_夏天又到了的博客-CSDN博客

Hadoop完全分布式环境搭建步骤-CSDN博客,前置环境安装参看此博文

完全分布模式也叫集群模式。将Spark目录文件分发到其他主机并配置workers节点,即可快速配置Spark集群(需要先安装好JDK并配置好从Master到Worker的SSH信任)。具体步骤 如下:

【免费送书活动】《Spark SQL大数据分析快速上手》-CSDN博客

步骤1: 配置计划表。

集群主机配置如表2-1所示。所有主机在相同目录下安装JDK,Spark安装到所有主机的相同目录下,如/app/。

步骤2: 准备3台Linux虚拟机搭建集群环境。

这里推荐直接使用下面链接讲解的、配置好的Hadoop完全分布式环境,稍微做些修改,即可快速搭建Spark完全分布模式环境。

Hadoop完全分布式环境搭建步骤_hadoop 开发环境搭建及hdfs初体验-CSDN博客

步骤3: 解压并配置Spark。

在server101上解压Spark:

$ tar -zxvf ~/spark-3.3.1-bin-hadoop3.tgz -C /app/

$ mv spark-3.3.1-bin-hadoop3 spark-3.3.1

修改spark-env.sh文件,在文件最开始添加JAVA_HOME环境变量:

$ vim /app/spark-3.3.1/sbin/spark-conf.sh

export JAVA_HOME=/usr/java/jdk1.8.0-361

修改worker文件,添加所有主机在worker节点上的名称:

$ vim /app/spark-3.3.1/conf/workers

server101

server102

server103

使用scp将Spark目录分发到所有主机相同的目录下:

$ scp -r /app/spark-3.3.1  server102:/app/

$ scp -r /app/spark-3.3.1  server103:/app/
步骤4: 启动Spark。

在主Spark上执行start-all.sh

$ /app/spark-3.3.1/sbin/start-all.sh

启动完成以后,查看master主机的8080端口,如图2-8所示。

步骤5: 测试。

由于已经配置了Hadoop集群,并且与Spark的worker节点在相同的主机上,因此在集群环境下,一般是访问HDFS上的文件:

$spark-shell --master spark://server101:7077

scala> val rdd1 = sc.textFile("hdfs://server101:8082/test/a.txt");

图2-8 master主机的8080端口

将结果保存到HDFS,最后查看HDFS上的计算结果即可:

scala> rdd1.flatMap(_.split("\\s+")).map((_,1)).reduceByKey(_+_). saveAsTextFile("hdfs://server101:8020/out004");
相关推荐
m0_748244834 分钟前
StarRocks 排查单副本表
大数据·数据库·python
NiNg_1_2346 分钟前
Hadoop中MapReduce过程中Shuffle过程实现自定义排序
大数据·hadoop·mapreduce
B站计算机毕业设计超人10 分钟前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
沛沛老爹21 分钟前
什么是 DevOps 自动化?
大数据·ci/cd·自动化·自动化运维·devops
s_yellowfish28 分钟前
Linux服务器pm2 运行chatgpt-on-wechat,搭建微信群ai机器人
linux·服务器·chatgpt
vvw&31 分钟前
如何在 Ubuntu 22.04 上安装 Ansible 教程
linux·运维·服务器·ubuntu·开源·ansible·devops
我一定会有钱32 分钟前
【linux】NFS实验
linux·服务器
王铁柱子哟-35 分钟前
解决 正在下载VS Code 服务器... 问题
运维·服务器
Ven%36 分钟前
如何在防火墙上指定ip访问服务器上任何端口呢
linux·服务器·网络·深度学习·tcp/ip
泰伦闲鱼36 分钟前
nestjs:GET REQUEST 缓存问题
服务器·前端·缓存·node.js·nestjs