小白的沙箱体验之旅(1)——Spark环境搭建及使用实验

举报
周周的奇妙编程 发表于 2023/12/02 20:57:25 2023/12/02
【摘要】 分布式计算是大数据计算速度能够有所突破的根本,在大数据应用中,较为常见的分布式计算框架有MapReduce、Spark和Flink。Spark是目前大数据行业中最常用的分布式计算框架之一,Spark不仅支持离线的大数据分析计算,同样支持交互式分析、流式数据计算和机器学习。

分布式计算是大数据计算速度能够有所突破的根本,在大数据应用中,较为常见的分布式计算框架有MapReduce、Spark和Flink。Spark是目前大数据行业中最常用的分布式计算框架之一,Spark不仅支持离线的大数据分析计算,同样支持交互式分析、流式数据计算和机器学习。

实验目标与基本要求

  1. 操作完成Spark的安装部署
  2. 启动Spark自带的shell客户端
  3. 运行Spark示例程序

实验过程

点击进入到ECS服务列表

复制ECS弹性公网IP,如下所示:

在桌面上双击【Xfce终端】,登录弹性云服务器ECS。

ssh root@EIP

如果是首次登录,会看到信息提示,需要输入yes。

输入密码,无回显是正常现象。

至此,已经完成了使用ssh远程登录到ECS弹性云服务器。

切换至/opt/software目录。

cd /opt/software
ls

可以看到该目录下已经备好所需安装包

将Spark安装包解压至/usr/local/bigdata目录下

tar -xvzf spark-3.0.2-bin-hadoop3.2.tgz -C /usr/local/bigdata/

切换至/usr/local/bigdata目录下,查看当前路径下的文件

cd /usr/local/bigdata
ls

修改目录权限

chown -R zker:zker /usr/local/bigdata/spark-3.0.2-bin-hadoop3.2

为了便于记忆和设置创建Spark软连接

ln -s spark-3.0.2-bin-hadoop3.2/ spark

修改配置文件

vi /etc/profile

在文件末尾添加SPARK_HOME和PATH配置

export SPARK_HOME=/usr/local/bigdata/spark
export PATH=$SPARK_HOME/bin:$PATH

source使配置文件生效

source /etc/profile

切换为zker用户(最终以普通用户zker为操作用户)

su - zker

切换至Spark配置目录,修改Spark配置文件

cd /usr/local/bigdata/spark/conf/
ls

默认情况下Spark仅提供配置文件的template模板,需要复制一份再做修改

cp spark-env.sh.template spark-env.sh

打开Spark配置文件,配置环境变量

vi spark-env.sh

在文件末尾添加相关参数

export JAVA_HOME=/usr/local/jdk1.8.0_281
export SPARK_HOME=/usr/local/bigdata/spark
export SPARK_CONF_DIR=/usr/local/bigdata/spark/conf
export HADOOP_CONF_DIR=/usr/local/bigdata/hadoop/etc/hadoop

复制并修改log4j配置文件

cp log4j.properties.template log4j.properties
vi log4j.properties

在文件末尾添加日志级别配置

log4j.logger.org.apache.spark.repl.Main=ERROR

此外,Spark内嵌了对Hive的支持,可以在Spark中直接读取和操作Hive中的表,则需要将Hive的配置文件放置在Spark的配置目录中,可参考如下命令:cp /usr/local/bigdata/hive/conf/hive-site.xml ./

Spark支持对HDFS的读取,且可以基于Yarn进行资源管理,所以在使用Spark前需要先启动Hadoop相关组件

start-dfs.sh
start-yarn.sh
jps

正常启动,则结果如下图所示:

Spark安装完成后自带一个交互式编程环境spark-shell,每条语句运行后会有运行结果,这个特性特别适合实验及学习使用。通过以下命令启动spark-shell

spark-shell

Spark自带许多示例程序,包含Scala,Java,Python和R语言的多种示例,示例程序默认存储在examples/src/main目录内首先切换目录

首先切换目录

cd $SPARK_HOME/examples/src/main
ls

修改输出日志级别

cd $SPARK_HOME
echo 'log4j.rootCategory=ERROR, console' >> conf/log4j.properties

运行Scala或Java示例程序可以使用Spark提供的程序bin/run-example脚本,run-example脚本实际上也是使用spark-submit命令运行示例程序

bin/run-example SparkPi

至此,结束实验。

实验感悟

在利用华为云的沙箱完成Spark环境搭建及使用实验后,我深切感受到了大数据处理技术在当今信息时代的巨大价值和无限潜力。通过这次实验,我对Spark框架和大数据处理技术有了更深入的理解,并且对华为云的沙箱平台也有了更多的认识。

首先,在实验中我学会了如何在华为云的沙箱环境中搭建Spark集群。通过简单的几个步骤,我就能够轻松地配置、管理和监控Spark集群,而不需要过多的底层细节和配置。这种高度自动化的部署方式让我对大数据处理平台的搭建变得更加简单和高效,也让我更加专注于实际的数据处理和分析工作。

其次,我深入学习了Spark的基本概念和原理,并且在实验中应用了Spark进行数据处理和分析。通过编写Spark程序,我可以并行处理大规模数据集,并且借助Spark的弹性和高效性,能够更快速地完成数据处理任务。同时,Spark提供的丰富的API和功能也让我可以更加灵活地应对各种数据处理需求,例如数据清洗、转换、聚合等操作。

在实验中,我还体验了Spark对大规模数据的实时处理能力。通过结合Spark Streaming和华为云的沙箱环境,我成功实现了对实时数据流的处理和分析,这让我更加直观地感受到了大数据实时处理技术的重要性和应用前景。

最后,我认识到了沙箱环境为我们提供了一个安全、隔离的实验环境,让我们可以在其中进行各种实验和学习,而不必担心对真实生产环境造成影响。这种沙箱环境的设计,让我可以更加放心地进行Spark环境搭建及使用实验,也让我更加深入地理解了大数据处理平台的搭建和使用。

通过这次实验,我不仅仅学会了如何在华为云的沙箱环境中搭建Spark集群,更重要的是,我对大数据处理技术有了更加深入和全面的认识。我相信,在未来的学习和工作中,我可以充分运用所学到的知识和经验,为数据处理和分析工作提供更加高效、可靠的解决方案。华为云的沙箱平台为我提供了一个优秀的学习和实验环境,让我能够更好地掌握和应用大数据处理技术,也让我对未来的发展充满信心。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。