news 2026/5/20 19:36:36

大数据Spark(七十七):Action行动算子first、collect和collectAsMap使用案例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大数据Spark(七十七):Action行动算子first、collect和collectAsMap使用案例

文章目录

Action行动算子first、collect和collectAsMap使用案例

一、first使用案例

二、collect使用案例

三、collectAsMap使用案例


Action行动算子first、collect和collectAsMap使用案例

一、first使用案例

返回数据集中第一个元素,first=take(1)。

Java代码:

SparkConf conf = new SparkConf().setMaster("local").setAppName("FirstTest"); JavaSparkContext sc = new JavaSparkContext(conf); //first:返回RDD中的第一个元素 String first = sc.parallelize(Arrays.asList("a", "b", "c", "d")).first(); System.out.println(first); sc.stop();

Scala代码:

val conf: SparkConf = new SparkConf().setMaster("local").setAppName("FirstTest") val sc = new SparkContext(conf) //first: 取出RDD中第一个元素 val first: Int = sc.parallelize(Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)).first() println(first) sc.stop()

二、collect使用案例

将RDD中所有数据回收到Driver端。

Java代码:

SparkConf conf = new SparkConf().setMaster("local").setAppName("CollectTest"); JavaSparkContext sc = new JavaSparkContext(conf); //collect:将RDD中的所有元素收集到Driver端 List<String> collect = sc.parallelize(Arrays.asList("a", "b", "c", "d")).collect(); for (String s : collect) { System.out.println(s); } sc.stop();

Scala代码:

val conf: SparkConf = new SparkConf().setMaster("local").setAppName("CollectTest") val sc = new SparkContext(conf) //collect: 以数组的形式返回RDD中的所有元素 val nums: Array[String] = sc.parallelize(Array("a","b","c","d")).collect() println(nums.mkString(",")) sc.stop()

三、collectAsMap使用案例

对K,V格式的RDD数据回收为Map<K,V>对象到Driver端。

Java代码:

SparkConf conf = new SparkConf().setMaster("local").setAppName("CollectTest"); JavaSparkContext sc = new JavaSparkContext(conf); JavaPairRDD<String, Integer> rdd = sc.parallelizePairs(Arrays.asList( new Tuple2<String, Integer>("a", 1), new Tuple2<String, Integer>("b", 2), new Tuple2<String, Integer>("c", 3) )); //collectAsMap:将RDD中的元素转换为Map Map<String, Integer> map = rdd.collectAsMap(); //遍历Map for (Map.Entry<String, Integer> entry : map.entrySet()) { System.out.println(entry.getKey() + " " + entry.getValue()); } sc.stop();

Scala代码:

val conf: SparkConf = new SparkConf().setMaster("local").setAppName("CollectAsMapTest") val sc = new SparkContext(conf) //collectAsMap: 将RDD中的元素转换为Map val rdd: RDD[(String, Int)] = sc.parallelize(List(("a", 1), ("b", 2), ("c", 3), ("d", 4))) val map: collection.Map[String, Int] = rdd.collectAsMap() map.foreach(println) sc.stop()

  • 📢博客主页:https://lansonli.blog.csdn.net
  • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
  • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉
  • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 6:54:11

AI读脸术资源占用实测:内存与CPU使用优化案例

AI读脸术资源占用实测&#xff1a;内存与CPU使用优化案例 1. 技术背景与问题提出 随着边缘计算和轻量化AI部署需求的增长&#xff0c;如何在有限硬件资源下实现高效的人脸属性分析成为实际落地中的关键挑战。传统基于PyTorch或TensorFlow的模型虽然精度高&#xff0c;但往往伴…

作者头像 李华
网站建设 2026/5/3 16:50:47

YOLO26模型压缩实战:剪枝与量化部署教程

YOLO26模型压缩实战&#xff1a;剪枝与量化部署教程 1. 引言 随着深度学习在边缘设备和实时场景中的广泛应用&#xff0c;模型的推理效率和资源占用成为关键瓶颈。YOLO26作为当前主流的目标检测框架之一&#xff0c;在精度和速度之间实现了良好平衡&#xff0c;但其原始模型仍…

作者头像 李华
网站建设 2026/5/9 20:11:47

VSCode Data Wrangler 终极指南:3分钟掌握数据清洗核心技巧

VSCode Data Wrangler 终极指南&#xff1a;3分钟掌握数据清洗核心技巧 【免费下载链接】vscode-data-wrangler 项目地址: https://gitcode.com/gh_mirrors/vs/vscode-data-wrangler 在数据分析的日常工作中&#xff0c;数据清洗往往占据了大部分时间。传统方法需要反复…

作者头像 李华
网站建设 2026/5/1 6:11:49

Yolo-v8.3模型版本管理:云端Registry+AB测试,平滑升级

Yolo-v8.3模型版本管理&#xff1a;云端RegistryAB测试&#xff0c;平滑升级 在AI平台团队的实际运营中&#xff0c;目标检测模型的迭代早已不是“训练-部署-上线”这么简单的线性流程。随着业务规模扩大&#xff0c;多个YOLOv8.3模型版本并行运行成为常态——有的用于高精度安…

作者头像 李华
网站建设 2026/5/13 11:39:27

如何用XPipe彻底改变你的远程管理体验?

如何用XPipe彻底改变你的远程管理体验&#xff1f; 【免费下载链接】xpipe Your entire server infrastructure at your fingertips 项目地址: https://gitcode.com/GitHub_Trending/xp/xpipe 你是否经常为了连接不同的服务器而在多个终端窗口间来回切换&#xff1f;&am…

作者头像 李华
网站建设 2026/5/16 20:15:49

5分钟搞定Stable Diffusion中文界面:从零开始的AI绘画入门指南

5分钟搞定Stable Diffusion中文界面&#xff1a;从零开始的AI绘画入门指南 【免费下载链接】stable-diffusion-webui-chinese stable-diffusion-webui 的汉化扩展 项目地址: https://gitcode.com/gh_mirrors/st/stable-diffusion-webui-chinese 还在为看不懂Stable Diff…

作者头像 李华