当前位置:   article > 正文

【大数据计算】(四) Spark的安装和基础编程_编写独立应用程序实现数据去重 对于两个输入文件a和b,编写spark独立应用程序,对两

编写独立应用程序实现数据去重 对于两个输入文件a和b,编写spark独立应用程序,对两

1. 使用Spark Sell编写代码

1.1启动Spark Shell

  • 启动spark先要先启动hdfs

在这里插入图片描述

  • 打开spark-shell
./bin/spark-shell
  • 1

在这里插入图片描述

1.2 读取文件

  • 读取本地文件
    在这里插入图片描述
  • 读取HDFS文件

在这里插入图片描述
在这里插入图片描述

1.3 编写词频统计程序

  • 读取文件
val textFile = sc.textFile("file:///usr/local/spark-2.4.8/README.md")
  • 1
  • 统计词频
val wordCount = textFile.flatMap(line => line.split(" ")).map(word=> (word, 1)).reduceByKey((a, b) => a + b)
  • 1
  • 输出结果
wordCount.collect()
  • 1

在这里插入图片描述

2. 编写Spark独立应用程序

2.1 用Scala语言编写Spark独立应用程序

  • 安装好sbt
    在这里插入图片描述

  • 检查目录结构
    在这里插入图片描述

  • 查看结果

在这里插入图片描述

如果遇到了java命令不存在的情况,但是自己系统变量里面又有的话。
像下面这种情况
请添加图片描述排除完版本的问题之后!就按照他这样所提示的,可以直接在系统安装一个java环境。多个java环境不影响。

  • 更新
sudo apt-get update
  • 1
  • 安装
sudo apt-get install openjdk-8-jdk
  • 1

2.2 用Java语言编写Spark独立应用程序

/usr/local/spark/bin/spark-submit --class "SimpleApp" ~/sparkapp2/target/simple-project-1.0.jar
  • 1

3. 编程题

3.1 第一题

对于两个输入文件A和B, 编写Spark独立应用程序(推荐使用Scala 语言),对两个文件进行合并,并剔除其中重复的内容,得到一个新的文件C。(文件A,B如下)

  • 代码

在这里插入图片描述

  • 打包
    在这里插入图片描述

  • 输出结果

在这里插入图片描述

3.2 第二题

编写独立应用程序实现求平均值问题,每个输入文件表示班级学生某个学科的成绩,每行内筒由两个字段组成,第一个是学生名字,第二个是学生的成绩;编写Spark独立应用程序(推荐使用Scale语言)求出所有学生的平均成绩,并输入到一个新文件中。

  • 新建三个文件并写入三个数据
    在这里插入图片描述
  • 在spark-shell编写完之后,转移到scala文件

在这里插入图片描述

  • 输出结果
    在这里插入图片描述
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/600429
推荐阅读
相关标签
  

闽ICP备14008679号