spark-core编程2

  1. 常用聚合与获取数据算子
  • reduce:聚集RDD所有元素,先分区内聚合,再分区间聚合 ,如 rdd.reduce(+) 可对 RDD[Int] 类型数据求和。

  • collect:在驱动程序中以数组形式返回数据集所有元素。

  • foreach:分布式遍历RDD元素并调用指定函数 。

  • count:返回RDD中元素个数。

  • first:返回RDD的第一个元素。

  • take:返回RDD前n个元素组成的数组。

  • takeOrdered:返回RDD排序后的前n个元素组成的数组。

代码

结果

  1. 复杂聚合算子
  • aggregate:分区数据先与初始值聚合,再进行分区间聚合,可自定义聚合逻辑。

  • fold:是 aggregate 的简化版,按指定操作和初始值进行折叠操作。

代码

结果

  1. 特定功能算子
  • countByKey:统计 RDD[(K, V)] 中每种key的个数。

  • save相关算子:包括 saveAsTextFile 保存为文本文件、 saveAsObjectFile 保存为对象文件 、 saveAsSequenceFile (了解即可),用于将RDD数据保存为不同格式。

  1. 累加器:主要用于将Executor端变量信息聚合到Driver端。Driver程序定义变量后,Executor端每个Task都会有该变量副本,Task更新副本值后传回Driver端进行合并。文档通过简单示例展示了累加器的基本用法,还给出了自定义累加器实现wordcount的详细步骤,包括创建自定义累加器类,重写相关方法,以及在Spark程序中注册和调用自定义累加器。

代码

结果

  1. 广播变量:用于高效分发较大的只读对象到所有工作节点,供一个或多个Spark操作使用。以向所有节点发送较大只读查询表为例,说明了广播变量的应用场景。文档通过代码示例,展示了广播变量的使用过程,先创建广播变量,然后在RDD操作中使用广播变量的值,最终输出结果。
相关推荐
Elastic 中国社区官方博客1 分钟前
Elasticsearch:Workflows 介绍 - 9.3
大数据·数据库·人工智能·elasticsearch·ai·全文检索
B站_计算机毕业设计之家4 分钟前
豆瓣电影推荐系统 | Python Django Echarts构建个性化影视推荐平台 大数据 毕业设计源码 (建议收藏)✅
大数据·python·机器学习·django·毕业设计·echarts·推荐算法
莽撞的大地瓜16 分钟前
洞察,始于一目了然——让舆情数据自己“说话”
大数据·网络·数据分析
证榜样呀24 分钟前
2026 中专大数据技术专业可考的证书有哪些,必看!
大数据·sql
星辰_mya24 分钟前
Elasticsearch主分片数写入后不能改
大数据·elasticsearch·搜索引擎
班德先生32 分钟前
深耕多赛道品牌全案策划,为科技与时尚注入商业表达力
大数据·人工智能·科技
永远都不秃头的程序员(互关)1 小时前
CANN赋能AIGC分布式训练:硬核通信,加速大模型智能生成新纪元
分布式·aigc
鸿乃江边鸟1 小时前
Spark Datafusion Comet 向量化Rust Native--CometShuffleExchangeExec怎么控制读写
大数据·rust·spark·native
忆~遂愿1 小时前
CANN metadef 深度解析:动态形状元数据管理、图编译器接口规范与序列化执行机制
大数据·linux
AI职业加油站1 小时前
职业提升之路:我的大数据分析师学习与备考分享
大数据·人工智能·经验分享·学习·职场和发展·数据分析