Spark-RDD使用IDEA-Scala编程练习题:对于两个输入文件A和B,编写spark独立应用程序,对两个文件进行合并,并剔除其中重复的内容,得到一个新文件c。
一、例题
对于两个输入文件A和B,编写spark独立应用程序,对两个文件进行合并,并剔除其中重复的内容,得到一个新文件c。下面是输入文件和输出文件的一个样例,供参考。
输入文件A的样例如下:
20170101 x
20170102 y
20170103 x
20170104 y
20170105 z
20170106 z
输入文件B的样例如下:
20170101 y
20170102 y
20170103 x
20170104 z
20170105 y
根据输入的文件A和B合并得到的输出文件c的样例如下:
20170101 x
20170101 y
20170102 y
20170103 x
20170104 y
20170104 z
20170105 y
20170105 z
20170106 z
二、代码
import org.apache.spark.{SparkConf, SparkContext}object distinctTwoFile {def main(args: Array[String]): Unit = {//1、创建SparkConf对象,该对象初始化一些数据,如该scala代码程序的名字,连接到主节点master的url地址val sparkConf = new SparkConf().setMaster("local").setAppName("WordCount")//2、创建SparkContext对象,该对象时应用程序提交到spark进行计算运行的唯一入口val sc = new SparkContext(sparkConf)//通过textFile函数获取数据,同时把数据分割为一行一行,每个数据节点存储一定行数的数据,lines-RDD就是代表这些行的的名字val A = sc.textFile("D://scala-spark-rdd/data/A.txt")val B = sc.textFile("D://scala-spark-rdd/data/B.txt")//使用算子union()可以合并两个相同形式的文件数据//distinct()函数是去除RDD里面重复的数据//sortBY()函数是根据第一个参数来排序,第二个参数true代表升序val C = A.union(B).distinct().sortBy(x => x,true)C.foreach(println)sc.stop()}
}
三、实验结果
Spark-RDD使用IDEA-Scala编程练习题:对于两个输入文件A和B,编写spark独立应用程序,对两个文件进行合并,并剔除其中重复的内容,得到一个新文件c。相关推荐
- 有两个磁盘文件 A 和 B, 各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件 C 中
fp = open('test1.txt', encoding='utf8') a = fp.read() fp.close()fp = open('test2.txt', encoding='utf ...
- python现有两个磁盘文件a和b_有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中Python实例...
有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并(按字母顺序排列), 输出到一个新文件C中Python实例 题目:有两个磁盘文件A和B,各存放一行字母,要求把这两个文件中的信息合并( ...
- 假设Linux系统中不存在文件newfile,现要创建一个新文件newfile,以下哪个命令无法实现该功能。...
要创建一个新文件newfile,可以使用Linux系统中的touch命令.例如: touchnewfile 这样就可以在Linux系统中创建一个名为newfile的空文件了. 如果使用的是cp命令,那 ...
- 用python创建一个新文件_Python创建文件和追加文件内容实例
一.用Python创建一个新文件,内容是从0到9的整数, 每个数字占一行: 代码如下: #python >>>f=open('f.txt','w') # r只读,w可写,a追加 &g ...
- 将类的定义放在头文件中,把成员函数的实现代码放在一个cpp文件中
将类的定义放在头文件中,把成员函数的实现代码放在一个cpp文件中 写这种.h和.cpp文件分开的大程序,虽然对很多人来说很简单,对自己来说算是第一次吧,好好学C++,加油~ 题目:定义Point类,由 ...
- 将文件中所有数读到一个数组中_「数据结构与算法」将5个文件中的一千万年龄合并到一个新文件中...
现在有5个文件,文件里面分别存储着1千万个用户年龄,并且每个文件中的年龄都是有序的(从小到大),现在需要将这5个文件整合到一个文件中,新文件的内容依然要保持有序(从小到大). 初始化数据 1.数据生成 ...
- 3.1.5 spark体系之分布式计算-scala编程-scala中的集合(数组array、list、set、map、元组)
目录 1.数组 Array 1.1 创建数组 1.2 concat 方法 1.3 遍历和其他方法 1.4 定义可变数组:ArrayBuffer,第一个是后加,第二个是头加,第三个是追加多个 2.lis ...
- 服务器所属文件变成nobody,NFS(expirtfs命令,NFS客户端创建新文件所属组和所属主都为nobody)(示例代码)...
一.exportfs命令 nfs进程不能随便从新启动,如果不得已要重启,必须把客户端的挂载目录卸载,然后在从新启动. 这时候就可以用exportfs命令 -a 全部挂载或者全部 ...
- Shell-AWK命令分割文件内容并写入新文件(合并文件)
awk -F '\t' 'NR>900000 {print $1"\r\n"$2}' 2019050802-1800000.txt > result_2.txt 分隔 ...
最新文章
- wget下载https时遇到not trusted下载不了的解决办法
- 7-21 求前缀表达式的值
- kaggle House_Price_XGBoost
- 如何查看oracle数据库集群哪个节点正在使用,windows oracle 怎么查看集群状态
- html模板(base标签,meta标签,禁用浏览器缓存)+JSP自定义标签荔枝
- hp服务器硬盘ultra320,惠普/hp 300GB 1.5万转 3.5寸 SAS服务器硬盘 P/N:431944-B21
- html页面酷炫,5个酷炫、实用的HTML标签和属性介绍
- matlab预测1人均gdp,基于时间序列模型下河南人均GDP的预测分析
- Vue 简单人脸识别
- 乔布斯斯坦福大学演讲英文原文
- 测试模板:Showcase规范和流程
- 述职答辩提问环节一般可以问些什么_01、述职答辩操作流程指引
- 2014年实习生招聘之腾讯实习生招聘面试(一面)—2014/04/01
- 网易云信技术创新,助力网易云音乐社交玩法升级
- 我以为自己MySQL够牛逼了,直到被腾讯面试官狠狠抽了两巴掌
- 测试用例模板(通用)
- 构筑自有流量池,电商宝SCRM(微信公众号和个人号管家)助力企业打赢粉丝争夺战...
- 金融计算器 npv_CFA考试用什么计算器?怎么操作?
- 苹果、微软合作推新版iCloud for Windows app
- B站_千锋2020MySQL_6.04练习题
热门文章
- unity_Text文本和图片组合
- Git报错解决:remote: error: File:1f6cc8452313 157.10 MB, exceeds 100.00 MB
- 百度搜索URL中的参数都是什么
- 求支援!单身盆友看过来|「如何用大数据算法找对象?」
- python:statistics --- 数学统计函数
- Java 使用Docx4j实现word文档Docx格式转Doc格式
- se 2.4 path 小记。
- 中国iaas产业2012年度点评
- mysql json_extract用法,【MySQL】json_extract解析json
- 微信小程序开发拼图小游戏