Java教程

5.RDD操作综合实例

本文主要是介绍5.RDD操作综合实例,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、词频统计

A. 分步骤实现 

  • 准备文件
  • 下载小说或长篇新闻稿

  • 上传到hdfs上

  • 读文件创建RDD

  • 分词

  • 排除大小写lower(),map()

  • 标点符号re.split(pattern,str),flatMap(),

 


  • 停用词,可网盘下载stopwords.txt,filter(),

 

 

  • 长度小于2的词filter()

    1.统计词频

    2.按词频排序

    3.输出到文件

    4.查看结果

B.一句话实现:文件入文件出

C.和作业2的“二、Python编程练习:英文文本的词频统计 ”进行比较,理解并用自己话表达Spark编程的特点。

在Spark中,RDD允许用户显式地将工作集缓存在内存中,后续能够重用工作集,这极大地提升了速度。

其中,Spark提供的主要抽象是弹性分布式数据集(RDD),通常RDD很大,会被分成很多个分区,分别保存在不同的节点上。分区可以增加并行度,减少通信开销。

RDD通过打开HDFS(或其他hadoop支持的文件系统)上的一个文件、在驱动程序中打开一个已有的Scala集合或由其他RDD转换操作得到。

用户可以要求Spark将RDD持久化到内存中,这样就可以有效地在并行操作中复用。另外,在节点发生错误时RDD可以自动恢复。

二、求Top值

网盘下载payment.txt文件,通过RDD操作实现选出最大支付额的用户。

 

 

      1.丢弃不合规范的行:

      • 空行
      • 少数据项
      • 缺失数据

      2.按支付金额排序

      3.取出Top3

 

 

这篇关于5.RDD操作综合实例的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!