Spark---RDD(双值类型转换算子)

文章目录

  • 1.RDD双值类型算子
      • 1.1 intersection
      • 1.2 union
      • 1.3 subtract
      • 1.4 zip

1.RDD双值类型算子

RDD双Value算子就是对两个RDD进行操作或行动,生成一个新的RDD。

1.1 intersection

对源 RDD 和参数 RDD 求交集后返回一个新的 RDD

函数定义:
def intersection(other: RDD[T]): RDD[T]

    //建立与Spark框架的连接val rdd = new SparkConf().setMaster("local[*]").setAppName("RDD") //配置文件val sparkRdd = new SparkContext(rdd) //读取配置文件val data1: RDD[Int] = sparkRdd.makeRDD(List(1, 2, 3, 4))val data2: RDD[Int] = sparkRdd.makeRDD(List(3, 4, 5, 6))val dataRdd = data1.intersection(data2)dataRdd.collect().foreach(println)sparkRdd.stop(); //关闭连接

运行结果:
在这里插入图片描述

1.2 union

对源 RDD 和参数 RDD 求并集后返回一个新的 RDD

函数定义:
def union(other: RDD[T]): RDD[T]

   val data1: RDD[Int] = sparkRdd.makeRDD(List(1, 2, 3, 4))val data2: RDD[Int] = sparkRdd.makeRDD(List(3, 4, 5, 6))val dataRdd = data1.union(data2)dataRdd.collect().foreach(println)

在这里插入图片描述

1.3 subtract

以一个 RDD 元素为主,去除两个 RDD 中重复元素,将其他元素保留下来。求差集

函数定义:
def subtract(other: RDD[T]): RDD[T]

    val data1: RDD[Int] = sparkRdd.makeRDD(List(1, 2, 3, 4))val data2: RDD[Int] = sparkRdd.makeRDD(List(3, 4, 5, 6))val dataRdd = data1.subtract(data2)dataRdd.collect().foreach(println)

在这里插入图片描述

1.4 zip

将两个 RDD 中的元素,以键值对的形式进行合并。其中,键值对中的 Key 为第 1 个 RDD中的元素,Value 为第 2 个 RDD 中的相同位置的元素。

函数定义:
def zip[U: ClassTag](other: RDD[U]): RDD[(T, U)]

    val data1: RDD[Int] = sparkRdd.makeRDD(List(1, 2, 3, 4))val data2: RDD[Int] = sparkRdd.makeRDD(List(5,6,7,8))val dataRdd = data1.zip(data2)dataRdd.collect().foreach(println)

在这里插入图片描述
注意:如果两个RDD类型不一样,则会报错

    val data1: RDD[Int] = sparkRdd.makeRDD(List(1, 2, 3, 4))val data2: RDD[Int] = sparkRdd.makeRDD(List("hello", "scala", "hello", "Java"))val dataRdd = data1.zip(data2)dataRdd.collect().foreach(println)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/334206.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

公司新买的BI,和金蝶系统配合太默契了

公司一直都用金蝶系统来实现包括财务管理、供应链管理、人力资源管理等多个方面的资源的合理配置和业务流程的自动化。但到了数据分析这块,金蝶系统就明显力不从心,需要一个专业的数据分析工具来接手。财务经理推荐用奥威BI,说这款BI的一大特…

【深度学习】SDXL tensorRT 推理,Stable Diffusion 转onnx,转TensorRT

文章目录 sdxl 转 diffusers转onnx转TensorRT sdxl 转 diffusers def convert_sdxl_to_diffusers(pretrained_ckpt_path, output_diffusers_path):import osos.environ["HF_ENDPOINT"] "https://hf-mirror.com" # 设置 HF 镜像源(国内用户使…

C++11新特性(也称c++2.0)

目录 1.输出C版本&#xff1a;cout << __cplusplus << endl; 2.Uniform Initialization(一致性初始化) 3.initializer_list&#xff08;形参&#xff09; 4.explicit 5.for循环的新用法 6.default和delete 7.Alias Template&#xff08;模板化名&#xff09…

【JAVA】throw 和 throws 的区别?

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a; JAVA ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 throw&#xff1a; throws&#xff1a; 区别&#xff1a; 作用&#xff1a; 使用位置&#xff1a; 个数&#xff1a; 应…

解读 Sobit v2:铭文资产跨链更注重安全、易用性

铭文市场的发展正在从早期的“无序”进入到“有序”阶段&#xff0c;我们看到从 12 月份以来&#xff0c;比特币生态内的多个应用纷纷宣布获得融资。这表明&#xff0c;目前仍旧有大量的资金有意向铭文领域&#xff0c;同样铭文赛道新一轮浪潮或许正在酝酿。 另一方面&#xff…

P1067 [NOIP2009 普及组] 多项式输出————C++

目录 [NOIP2009 普及组] 多项式输出题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 提示 解题思路Code运行结果 [NOIP2009 普及组] 多项式输出 题目描述 一元 n n n 次多项式可用如下的表达式表示&#xff1a; f ( x ) a n x n a …

Postman工具初学一篇快速入门教程

文章目录 下载安装注册登录CollectionFolderRequestGet请求Post请求Header设置Response响应 EnvironmentsGlobal环境变量其他环境变量Collection变量变量使用同名变量的优先级 Postman内置变量Pre-request script和Test script脚本设置、删除和获取变量获取请求参数获取响应数据…

用Java实现简易的图书管理系统(超详细)

目录 1.设计背景 2.设计思路 3.模块展示及代码演示 3.1 Book类的实现 3.2 BookList类的实现(书架) 3.3 异常类的实现(OperationException) 3.4 用户类的实现 3.5 操作接口的实现(定义规范) 3.6 操作类的具体实现 3.6.1 增加操作 3.6.2 查找操作 3.6.3 删除操作 3.6…

【教程】代码混淆详解

目录 引言 正文 什么是代码混淆 ProGuard混淆文件参数详解 代码混淆的方法 Ipa Guard工具的使用方法 IPA重签名与安装测试 总结 本文将对代码混淆进行详细解释&#xff0c;并介绍ProGuard代码混淆器以及Ipa Guard工具的使用方法。首先&#xff0c;我们将了解代码混淆的概…

实战AI大模型:AIGC及经典模型

今天&#xff0c;人工智能技术的快速发展和广泛应用已经引起了大众的关注和兴趣&#xff0c;它不仅成为技术发展的核心驱动力&#xff0c;更是推动着社会生活的全方位变革。特别是作为AI重要分支的深度学习&#xff0c;通过不断刷新的表现力已引领并定义了一场科技革命。大型深…

使用 KubeSphere 与极狐GitLab 打造云原生持续交付系统

极狐GitLab 简介 极狐GitLab 是一个一体化的 DevOps 平台&#xff0c;可以简单理解为 GitLab 在国内的“发行版”。是由极狐(GitLab)公司推出的产品&#xff08;极狐(GitLab)公司是以“中外合资3.0”模式成立的公司&#xff0c;在国内独立运营&#xff0c;为国内用户提供适合本…

react native中使用tailwind并配置自动补全

使用的第三方库是tailwind-react-native-classnames&#xff0c;同类的也有tailwind-rn&#xff0c;但是我更喜欢前者官方demo&#xff1a; import { View, Text } from react-native; import tw from twrnc;const MyComponent () > (<View style{twp-4 android:pt-2 b…