Spark编程实验一:Spark和Hadoop的安装使用

这篇具有很好参考价值的文章主要介绍了Spark编程实验一:Spark和Hadoop的安装使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、目的与要求

二、实验内容

三、实验步骤

1、安装Hadoop和Spark

2、HDFS常用操作

3、Spark读取文件系统的数据

四、结果分析与实验体会


一、目的与要求

1、掌握在Linux虚拟机中安装Hadoop和Spark的方法;
2、熟悉HDFS的基本使用方法;
3、掌握使用Spark访问本地文件和HDFS文件的方法。

二、实验内容

1、安装Hadoop和Spark

        进入Linux系统,完成Hadoop伪分布式模式的安装。完成Hadoop的安装以后,再安装Spark(Local模式)。

2、HDFS常用操作

        使用Hadoop提供的Shell命令完成如下操作:

(1)启动Hadoop,在HDFS中创建用户目录“/user/你的名字的拼音”。以张三同学为例,创建 /user/zhangsan ,下同;
(2)在Linux系统的本地文件系统的“/home/zhangsan”目录下新建一个文本文件test.txt,并在该文件中至少十行英文语句,然后上传到HDFS的“/user/zhangsan”目录下;
(3)把HDFS中“/user/zhangsan”目录下的test.txt文件,下载到Linux系统的本地文件系统中的“/tmp”目录下;
(4)将HDFS中“/user/zhangsan”目录下的test.txt文件的内容输出到终端中进行显示;
(5)在HDFS中的“/”目录下,创建子目录input,把HDFS中“/user/zhangsan”目录下的test.txt文件,复制到“/input”目录下;
(6)删除HDFS中“/user/zhangsan”目录下的test.txt文件;
(7)查找HDFS中所有的 .txt文件;
(8)使用hadoop-mapreduce-examples-3.1.3.jar程序对/input目录下的文件进行单词个数统计,写出运行命令,并验证运行结果。

3、Spark读取文件系统的数据

(1)在pyspark中读取Linux系统本地文件“/home/zhangsan/test.txt”,然后统计出文件的行数;
(2)在pyspark中读取HDFS系统文件“/user/zhangsan/test.txt”,然后统计出文件的行数;
(3)编写独立应用程序,读取HDFS系统文件“/user/zhangsan/test.txt”,然后统计出文件的行数;通过 spark-submit 提交到 Spark 中运行程序。

三、实验步骤

1、安装Hadoop和Spark

        进入Linux系统,完成Hadoop伪分布式模式的安装。完成Hadoop的安装以后,再安装Spark(Local模式)。具体安装步骤可以参照我前面写的博客:

大数据存储技术(1)—— Hadoop简介及安装配置-CSDN博客https://blog.csdn.net/Morse_Chen/article/details/134833801Spark环境搭建和使用方法-CSDN博客https://blog.csdn.net/Morse_Chen/article/details/134979681

2、HDFS常用操作

(1)启动Hadoop,在HDFS中创建用户目录“/user/你的名字的拼音”。以张三同学为例,创建 /user/zhangsan ,下同;

[root@bigdata zhc]# start-dfs.sh
[root@bigdata zhc]# jps

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

[root@bigdata zhc]# hdfs dfs -mkdir -p /user/zhc
[root@bigdata zhc]# hdfs dfs -ls /user

 spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(2)在Linux系统的本地文件系统的“/home/zhangsan”目录下新建一个文本文件test.txt,并在该文件中至少十行英文语句,然后上传到HDFS的“/user/zhangsan”目录下;

[root@bigdata zhc]# cd /home/zhc
[root@bigdata zhc]# vi test.txt
[root@bigdata zhc]# hdfs dfs -put /home/zhc/test.txt /user/zhc

test.txt 文件内容如下: 

welcome to linux
hello hadoop
spark is fast
hdfs is good
start pyspark
use python
scala and R
great success
I love spark
ten

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

这里可以看到上传成功了。 

(3)把HDFS中“/user/zhangsan”目录下的test.txt文件,下载到Linux系统的本地文件系统中的“/tmp”目录下;

[root@bigdata zhc]# hdfs dfs -get /user/zhc/test.txt /tmp/

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(4)将HDFS中“/user/zhangsan”目录下的test.txt文件的内容输出到终端中进行显示;

[root@bigdata zhc]# hdfs dfs -cat /user/zhc/test.txt

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(5)在HDFS中的“/”目录下,创建子目录input,把HDFS中“/user/zhangsan”目录下的test.txt文件,复制到“/input”目录下;

[root@bigdata zhc]# hdfs dfs -cp /user/zhc/test.txt /input/

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(6)删除HDFS中“/user/zhangsan”目录下的test.txt文件;

[root@bigdata zhc]# hdfs dfs -rm -f /user/zhc/test.txt

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(7)查找HDFS中所有的 .txt文件;

[root@bigdata zhc]# hdfs dfs -ls -R / | grep -i '\.txt$'

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(8)使用hadoop-mapreduce-examples-3.1.3.jar程序对/input目录下的test.txt文件进行单词个数统计,写出运行命令,并验证运行结果。

注意:在做这一步之前,要先启动yarn进程;
           指定输出结果的路径/output,该路径不能已存在。

先切换到 /usr/local/servers/hadoop/share/hadoop/mapreduce 路径下,然后再开始统计单词个数。

[root@bigdata zhc]# cd /usr/local/servers/hadoop/share/hadoop/mapreduce
[root@bigdata mapreduce]# hadoop jar hadoop-mapreduce-examples-3.1.3.jar wordcount /input/test.txt /output

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

输入命令查看HDFS文件系统中/output目录下的结果。 

[root@bigdata mapreduce]# hdfs dfs -ls /output
[root@bigdata mapreduce]# hdfs dfs -cat /output/part-r-00000

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

3、Spark读取文件系统的数据

先在终端启动Spark。

[root@bigdata zhc]# pyspark

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

 (1)在pyspark中读取Linux系统本地文件“/home/zhangsan/test.txt”,然后统计出文件的行数;

>>> textFile=sc.textFile("file:///home/zhc/test.txt")
>>> linecount=textFile.count()
>>> print(linecount)

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(2)在pyspark中读取HDFS系统文件“/user/zhangsan/test.txt”(如果该文件不存在,请先创建),然后统计出文件的行数;

注意:由于在第2题的(6)问中,已经删除了HDFS中“/user/zhangsan”目录下的test.txt文件,所以这里要重新将test.txt文件从本地系统上传到HDFS中

[root@bigdata zhc]# hdfs dfs -put /home/zhc/test.txt /user/zhc
>>> textFile=sc.textFile("hdfs://localhost:9000/user/zhc/test.txt")
>>> linecount=textFile.count()
>>> print(linecount)

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

(3)编写独立应用程序,读取HDFS系统文件“/user/zhangsan/test.txt”,然后统计出文件的行数;通过 spark-submit 提交到 Spark 中运行程序。

[root@bigdata mycode]# vi CountLines_hdfs.py
[root@bigdata mycode]# spark-submit CountLines_hdfs.py 

CountLines_hdfs.py文件内容如下:

from pyspark import SparkContext
FilePath = "hdfs://localhost:9000/user/zhc/test.txt"
sc = SparkContext("local","Simple App")
data = sc.textFile(FilePath).cache( )
print("文件行数:",data.count())

spark安装 hadoop,Spark编程基础,spark,hadoop,大数据

四、结果分析与实验体会

        通过本次Spark实验,学会了如何安装、启动Hadoop和Spark,并掌握了HDFS的基本使用方法,使用Spark访问本地文件和HDFS文件的方法。在Linux系统的本地文件系统和在HDFS中分别进行各种文件操作,然后在Spark中读取文件系统的数据,并能统计文件的行数。
        在做第三题(2)时,在pyspark中读取HDFS系统文件“/user/zhangsan/test.txt”,要将第二题(6)中删除的test.txt文件重新上传到HDFS中,注意文件路径要写正确, file_path=“hdfs:///user/zhc/test.txt”。在第三题(3)中,可以修改如下路径中的文件 /usr/local/spark/conf/log4j.properties.template,将文件中内容 “log4j.rootCategory=INFO” 改为 “log4j.rootCategory=ERROR”,这样在输出结果时,就不会显示大量的INFO信息,使得结果更简化。文章来源地址https://www.toymoban.com/news/detail-850665.html

到了这里,关于Spark编程实验一:Spark和Hadoop的安装使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spark和Hadoop的安装

            进入Linux系统,完成Hadoop伪分布式模式的安装。完成Hadoop的安装以后,再安装Spark(Local模式)。         使用hadoop用户名登录进入Linux系统,启动Hadoop,参照相关Hadoop书籍或网络资料,或者也可以参考本教程官网的“实验指南”栏目的“HDFS操作常用Shell命令”,使

    2024年04月29日
    浏览(32)
  • 轻大21级软工大数据实验(手把手教你入门Hadoop、hbase、spark)

    写在最前面,如果你只是来找答案的,那么很遗憾,本文尽量避免给出最后结果,本文适合Linux0基础学生,给出详细的环境配置过程,实验本身其实很简单,供大家一起学习交流。 1 .编程实现以下指定功能,并利用 Hadoop 提供的 Shell 命令完成相同任务 : 向HDFS 中上传任意文

    2024年02月05日
    浏览(87)
  • Windows运行Spark所需的Hadoop安装

    解压文件  复制bin目录         找到winutils-master文件hadoop对应的bin目录版本         全部复制替换掉hadoop的bin目录文件  复制hadoop.dll文件         将bin目录下的hadoop.dll文件复制到System32目录下    配置环境变量  修改hadoop-env.cmd配置文件 注意jdk装在非C盘则完全没问题,

    2024年02月10日
    浏览(43)
  • 大数据:Hadoop基础常识hive,hbase,MapReduce,Spark

    Hadoop是根据Google三大论文为基础研发的,Google 三大论文分别是: MapReduce、 GFS和BigTable。 Hadoop的核心是两个部分: 一、分布式存储(HDFS,Hadoop Distributed File System)。 二、分布式计算(MapReduce)。 MapReduce MapReduce是“ 任务的分解与结果的汇总”。 Map把数据切分——分布式存放

    2024年04月25日
    浏览(55)
  • Hadoop、Spark与Flink的基础架构及其关系和优异

    Hadoop、Spark和Flink是目前重要的三大分布式计算系统。它们都可以用于大数据处理,但在处理方式和应用场景上有所不同。 Hadoop专为批处理而生,一次将大量数据集输入到输入中,进行处理并产生结果。它用于离线复杂的大数据处理。 Spark定义是一个批处理系统,但也支持流

    2024年02月11日
    浏览(48)
  • CENTOS上的网络安全工具(二十四)Windows下的Hadoop+Spark编程环境构建

            前面我们搭建了hadoop集群,spark集群,也利用容器构建了spark的编程环境。但是一般来说,就并行计算程序的开发,一刚开始一般是在单机上的,比如hadoop的single node。但是老师弄个容器或虚拟机用vscode远程访问式开发,终究还是有些不爽。还好,hadoop和spark都是支持

    2024年02月09日
    浏览(67)
  • Hadoop 之 Spark 配置与使用(五)

    环境 版本 Anolis Anolis OS release 8.6 Jdk java version “11.0.19” 2023-04-18 LTS Spark 3.4.1 Spark 下载 域名 地址 类别 nn 192.168.1.6 master nd1 192.168.1.7 slave nd2 192.168.1.8 slave 同单机配置,在 nd1 、nd2 部署 spark,并设置环境变量(也可利用 scp 命令将住节点下配置好的文件拷贝到从节点) workers 文

    2024年02月15日
    浏览(35)
  • ubuntu下Hadoop以及Spark的伪分布式安装:一

    1.1 安装前说明: 很多初学者在安装的时候会碰到各种各样的问题,尤其各种版本的搭配问题。所以特意做一个初步安装的引导,希望大家都能一次调试出来。 经过测试,jdk11 + scala2.13.13 + hadoop3.3.6+spark3.5.1,这是暂时来说scalsa2能支持的最完美的搭配。Hadoop能支持到的java最完

    2024年04月23日
    浏览(51)
  • 实验三 Spark SQL基础编程

    1. 掌握 Spark SQL 的基本编程方法; 2. 熟悉 RDD 到 DataFrame 的转化方法; 3. 熟悉利用 Spark SQL 管理来自不同数据源的数据。 1.Spark SQL 基本操作 将下列 JSON 格式数据复制到 Linux 系统中,并保存命名为 employee.json。 { \\\"id\\\":1, \\\"name\\\":\\\"Ella\\\", \\\"age\\\":36 } { \\\"id\\\":2, \\\"name\\\":\\\"Bob\\\", \\\"age\\\":29 } { \\\"id\\\":3, \\\"na

    2024年02月06日
    浏览(39)
  • hadoop(伪分布式)上的spark和Scala安装与配置详细版

    在搭建spark和Scala前提下,必需安装好hive和java,和 Hadoop的伪分布式 哦 1、安装与配置Scale        (1)去官网下载Scala         官网地址: The Scala Programming Language (scala-lang.org) https://www.scala-lang.org/ 这里我要的是scala-2.2.12.12.tgz 然后我们点击 all releases 点进去之后往下找 然后

    2024年04月28日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包