首页 > 其他分享 >Spark安装部署与基础实践

Spark安装部署与基础实践

时间:2023-04-30 10:56:33浏览次数:32  
标签:map rdd1 val 10 部署 rdd Spark 安装 spark

安装 java

运行命令 sudo apt install openjdk-8-jdk-headless 进行安装
image

运行java -version测试安装是否成功,结果如下,安装成功
image

安装Spark

运行wget http://mirror.bit.edu.cn/apache/spark/spark-2.4.5/spark-2.4.5-bin-hadoop2.7.tgz 下载spark
运行tar -xzvf spark-2.4.5-bin-hadoop2.7.tgz解压缩
运行cd spark-2.3.0-bin-hadoop2.7进入解压出来的文件目录
运行./bin/run-example SparkPi 10测试安装是否成功。
结果如下,成功计算出了圆周率。
image

计算Top N

创建 1到100由空格分开的文本文件
echo {1..100} > /home/ehpc/number.txt
运行spark-shell
./bin/spark-shell
image


//读取计算 Top N 的文件
val textFile = sc.textFile("/home/ehpc/number.txt")
//按空格分割数值
val nums = textFile.flatMap(line => line.split(" "))
//将数值映射为key-val结构
val nums_map= nums.map(x => (x.toInt, null))
//对数值进行排序
val sorted_nums_map = nums_map.sortByKey(false)

image

//取出前10个数值
val top_10 = sorted_nums.take(10)
//打印最大的10个数值
top_10.foreach(println)

image

Word count

//读入统计单词数的文件
val textFile = sc.textFile("README.md")
//按空格分割单词
val words = textFile.flatMap(line => line.split(" "))
//将单词映射为key-val结构,单词是key,val是1
val ones = words.map(w => (w, 1))
//统计单词出现次数,就是把key相同的value加起来
val counts = ones.reduceByKey(_ + _)
//打印统计结果
counts.foreach(println)

image

RDD编程

//创建有3个分区的RDD,rdd的数据为1-5的整数,查看rdd中的数据
val rdd = sc.makeRDD(1 to 5, 3)
rdd.collect
//用map(func)函数把rdd中的每个数据乘2并查看结果
rdd.map(_ * 2).collect
//用flatMap(func)函数把rdd中的每个整数映射到一个从1开始到该整数的数组,最后把这些数组拼接在一起。显示rdd1的内容
val rdd1 = rdd.flatMap(x => (1 to x))
rdd1.collect
//用union(ortherDataset)函数把rdd和rdd1的内容合并并查看结果
rdd.union(rdd1).collect
//用intersection(otherDataset)函数求rdd和rdd1的交集并查看结果
rdd1.intersection(rdd).collect
//first:返回rdd中第1个元素
rdd.first
//count:统计rdd中元素个数
rdd.count
//用reduce函数分别对rdd中的数据进行累加和累乘
rdd.reduce( _ + _)
rdd.reduce(_ * _)
//用top(n)函数返回rdd中最大的三个数
rdd.top(3)

image

标签:map,rdd1,val,10,部署,rdd,Spark,安装,spark
From: https://www.cnblogs.com/zhuwlong/p/17365010.html

相关文章

  • 单机版hadoop在Linux环境下的安装和配置
    创建hadoop用户首先打开终端窗口,输入如下命令创建hadoop用户,这条命令创建可以登录的hadoop用户,并使用/bin/bash作为shell:$sudouseradd-mhadoop-s/bin/bash接着为hadoop设置登录密码,可简单设为123456,按提示输入两次:$sudopasswdhadoop为hadoop用户增加管理员权限,......
  • Android应用程序的安装位置(二)
    不应该安装在外部存储器上的应用程序当用户启用USB存储器来跟计算机共享文件时(或者是卸载或移除外部存储器),任何被安装在外部存储器上,并且当前正在运行的应用程序都会被杀死。在USB存储器被禁用和外部存储器被重新挂载到设备上之前,系统不会有效的感知到引用程序的存在。除了终止应......
  • Linux系统软件安装
    实战章节:在Linux上部署各类软件前言为什么学习各类软件在Linux上的部署在前面,我们学习了许多的Linux命令和高级技巧,这些知识点比较零散,同学们跟随着课程的内容进行练习虽然可以基础掌握这些命令和技巧的使用,但是并没有一些具体的实操能够串联起来这些知识点。所以,现在我们设计......
  • Office2003 每次启动时弹出安装界面
    Office2003每次启动时弹出安装界面安装路径:E:\ProgramFiles(x86)\MicrosoftOffice\OFFICE11\EXCEL.EXE启动后监视相关文件注册表等,找到msiexec.exe相关调用,最后最终到:MSO.DLLC:\ProgramFiles(x86)\CommonFiles\microsoftshared\OFFICE11\MSO.DLL跟踪函数确......
  • .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
    在前两篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)我们对.netcore部署到linux有了一个充分的了解,已经可以满足应用要求了,这篇文章我们继续深入带你了解使用Doker+jexus或Nginx来部署.netcore应用。......
  • .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
    在前两篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)我们对.netcore部署到linux有了一个充分的了解,已经可以满足应用要求了,这篇文章我们继续深入带你了解使用Doker+jexus或Nginx来部署.netcore应用。......
  • .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
    在前两篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)我们对.netcore部署到linux有了一个充分的了解,已经可以满足应用要求了,这篇文章我们继续深入带你了解使用Doker+jexus或Nginx来部署.netcore应用。......
  • .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
    在前两篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)我们对.netcore部署到linux有了一个充分的了解,已经可以满足应用要求了,这篇文章我们继续深入带你了解使用Doker+jexus或Nginx来部署.netcore应用。......
  • .NET Core部署到linux(CentOS)最全解决方案,高阶篇(Docker+Nginx 或 Jexus)
    在前两篇:.NETCore部署到linux(CentOS)最全解决方案,常规篇.NETCore部署到linux(CentOS)最全解决方案,进阶篇(Supervisor+Nginx)我们对.netcore部署到linux有了一个充分的了解,已经可以满足应用要求了,这篇文章我们继续深入带你了解使用Doker+jexus或Nginx来部署.netcore应用。......
  • ReSharper 2019.2.3安装教程
    摘抄:ReSharper2019破解版-ReSharperUltimatev2019.2.3完美破解版下载(附注册补丁)-艾薇下载站(aiweibk.com)安装准备文件:1、运行安装程序,JetBrains.ReSharper.2019.1.1.exe选择你需要的工具组件,并勾选接受协议,点next我这里就选了第一项组件,其他组件不知道什么意思 2......