Spark primer 之wordcount 剖析(添加 spark按照单词出现次数排名)

本文详细介绍了如何使用 Scala 和 Apache Spark 进行文本文件中单词计数的操作,包括读取 HDFS 中的文件、使用 flatMap 和 map 函数进行数据处理、应用 reduceByKey 对单词进行聚合,并最终对结果进行排序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package main.scala.com.spark.demo.com.com.spark.demo
import org.apache.spark.{SparkContext, SparkConf}
object NewWordCount {
  def main(args: Array[String]) {
    val conf = new SparkConf().setAppName("wordCount").setMaster("local")
    val sc = new SparkContext(conf)
    val rdd = sc.textFile("hdfs://master:9000/data01/words.txt")//your file address
    rdd.cache()
rdd.flatMap(_.split(" ")).map((_,1)).reduceByKey(_+_).collect().foreach(println)
//按照 单词出现次数排序
 rdd.flatMap(_.split("")).map((_,1)).reduceByKey(_+_).map(e=(e._2,e._1)).sortByKey(false).collect

  }
}

(1)rdd.flatMap(_.split(” “))的返回值:
words.txt的文件内容为:

在spark shell中输入 rdd.flatMap(_.split(” “)).collect 看回显

(2)rdd.flatMap(.split(” “)).map((,1))的返回值

我们发现已经将数组中每个元素转换成元组 (hello,1)…
(3)然后reduceBykey后 看结果

(4)按照单词出现次数排序,首先交换 元组顺序,即 (hello,1) 变为 (1,hello)
然后 使用sortByKey(false),指定false按照降序排序
代码为

资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 在 IT 领域,我们有时需要清理系统中不再需要的软件,比如 OneKey 一键还原。OneKey 是一款常见的 Windows 系统备份与还原工具,但当用户不再使用它时,可能会面临卸载难题。通常的卸载方法可能无法完全清除 OneKey,因为它的某些组件可能隐藏在系统各处。 在开始卸载之前,要先关闭所有 OneKey 的进程,可通过任务管理器来完成这一步。接着打开控制面板,找到程序和功能选项,尝试从这里卸载 OneKey,这是常规的卸载方式。如果在控制面板的卸载程序列表里找不到 OneKey,那就得手动查找它的安装位置。一般情况下,软件的安装目录位于 C 盘的 Program Files 或 Program Files (x86) 文件夹中。进入 OneKey 的安装目录,寻找卸载程序或脚本并执行,以此启动卸载流程。 在卸载过程中,可能会碰到注册表项的问题。OneKey 安装时会在注册表中添加许多键值,这些键值在常规卸载后可能还存在,从而导致残留文件和错误消息。所以,卸载完成后需要手动清理注册表。不过,修改注册表是存在一定风险的,误删可能会引发系统问题。因此,在动手之前最好备份注册表或整个系统。打开注册表编辑器(regedit),搜索与 OneKey 相关的键值,比如程序名称、作者等,然后安全地将它们删除。 此外,OneKey 可能在启动项中设置了自启动项,这会导致即使卸载后,程序仍能在开机时运行。打开系统配置(msconfig),在启动选项里查找并禁用或删除 OneKey 的相关条目。 如果按照上述步骤操作后仍无法彻底卸载 OneKey,可以考虑使用专业的卸载工具,例如 Revo Uninstaller。这类工具能够深度扫描并清理程序留下的痕迹,有助于完全卸载 OneKey。如果手头有
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值