Spark 环境安装与案例演示

Spark 环境安装

一、准备工作

1、hadoop成功安装

2、防火墙关闭

二、解压安装

1、上传 spark 安装包到/tools 目录,进入 tools 下,执行如下命令:
bash 复制代码
tar -zxvf spark-2.1.0-bin-hadoop2.7.tgz -C /training/

由于 Spark 的脚本命令和 Hadoop 有冲突,只需在.bash_profile 中设置一个即可(不能同时设置),所以有hadoop的就不设置spark的这个文件。

2、进入training,进入spark安装路径,配置文件spark-env.sh

1,

bash 复制代码
cd /training/spark-2.1.0-binhadoop2.7/conf/

可以看到并没有spark-env.sh

复制备份一份

bash 复制代码
cp spark-env.sh.template spark-env.sh

3.配置文件spark-env.sh

bash 复制代码
vi spark-env.sh

在底部输入配置(根据自己配置的路径、版本、主机名调整配置)

export JAVA_HOME=/training/jdk1.8.0_241

export SPARK_MASTER_HOST=niit

export SPARK_MASTER_PORT=7077

4。配置文件slaves

首先复制一遍slaves.template

bash 复制代码
cp slaves.template slaves

配置slaves,将localhost改自己的主机名

bash 复制代码
vi slaves
bash 复制代码
niit

三、启动spark

1、启动hadoop
bash 复制代码
start-all.sh
2.启动spark
bash 复制代码
cd /training/spark-2.1.0-binhadoop2.7/sbin/
bash 复制代码
start-all.sh

查看spark网址

http://niit(主机名):8080

Spark 案例演示

一、查询pi的值

1.进入spark安装目录,进入bin,使用spark-submit函数

2.查看spark example的路径,找到之后使用pwd将路径存在记事本中

3.查看spark pi的路径


输入执行总代码:

bash 复制代码
./spark-submit --master spark://niit:7077 --class org.apache.spark.examples.SparkPi /training/spark-2.1.0-bin-hadoop2.7/examples/jars/spark-examples_2.11-2.1.0.jar 100

二、实现wordcount程序

1.进入spark安装目录,进入bin,使用spark-shell函数

  • spark-shell是 Spark 自带的交互式 Shell 程序,方便用户进行交互式编程,用户可以在该命令行下用 scala 编写 spark 程序。

2.进入shell

bash 复制代码
spark-shell

也可以使用以下参数:

参数说明:
--master spark://niit110:7077 指定 Master 的地址
--executor-memory 2g 指定每个 worker 可用内存为 2G
--total-executor-cores 2 指定整个集群使用的 cup 核数为 2 个

例如:

bash 复制代码
spark-shell --master spark://niit:7077

如果启动 spark shell 时没有指定 master 地址,但是也可以正常启动 spark shell 和执行sparkshell 中的程序,其实是启动了spark 的 local 模式,该模式仅在本机启动一个进程,没有与集群建立联系。请注意 local 模式和集群模式的日志区别:

local:

集群:

3.在 Spark Shell 中编写 WordCount 程序

首先将文件传输到hdfs中路径自己传输时设置,可以通过50070端口查看

将此代码写入shell中,ip地址以及文件、输入输出路径、文件名自行更换

bash 复制代码
sc.textFile("hdfs://192.168.163.128:9000/aaa/data.txt").flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("hdfs://192.168.163.128:9000/output/spark/wc")
相关推荐
2501_933329552 小时前
企业舆情处置技术实践:基于AI的智能监测与申诉系统架构解析
人工智能·分布式·架构·系统架构
AI先驱体验官3 小时前
智能体变现:从技术实现到产品化的实践路径
大数据·人工智能·深度学习·重构·aigc
TDengine (老段)5 小时前
TDengine IDMP 工业数据建模 —— 属性
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
得物技术5 小时前
Redis 自动化运维最佳实践|得物技术
大数据·redis
爱丽_6 小时前
Redis 分布式锁:SET NX、过期时间、续租、可重入、Redlock 与坑
数据库·redis·分布式
Elastic 中国社区官方博客6 小时前
Elasticsearch:如何在 Elastic AI Builder 里使用 DSL 来查询 Elasticsearch
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
tian_jiangnan7 小时前
flink大数据15天速成教程
大数据·flink
一休哥※7 小时前
ClawTeam 完整使用教程:用 AI 多智能体团队自动完成复杂任务
大数据·人工智能·elasticsearch
yitian_hm7 小时前
HBase 原理深度剖析:从数据模型到存储机制
大数据·数据库·hbase
鹧鸪云光伏8 小时前
微电网设计系统及经济收益计算
大数据·人工智能·光伏·储能设计方案