当前位置: 首页 > news >正文

网站建设做得好广州市网络seo外包

网站建设做得好,广州市网络seo外包,域名和网址,佛山个人建站模板在之前的文章中,我们学习了如何在spark中使用RDD的filter,distinct,intersection三种方法。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-…

在之前的文章中,我们学习了如何在spark中使用RDD的filter,distinct,intersection三种方法。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。

Spark-Scala语言实战(9)-CSDN博客文章浏览阅读927次,点赞25次,收藏18次。今天开始的文章,我会带给大家如何在spark的中使用我们的RDD方法,今天学习RDD方法中的filter,distinct,intersection三种方法,并进行一代。希望我的文章能帮助到大家,也欢迎大家来我的文章下交流讨论,共同进步。https://blog.csdn.net/qq_49513817/article/details/137205627?今天的文章,我会继续带着大家如何在spark的中使用我们的RDD方法。今天学习RDD方法中的cartesian,subtract两种方法。

目录

一、知识回顾

二、RDD方法

1.cartesian

2.subtract

拓展-方法参数设置与笛卡尔积

1.方法参数设置

 a.cartesian方法

b. subtract方法

2.笛卡尔积


一、知识回顾

 上一篇文章中我们学习了RDD的三种方法,分别是filter,distinct,intersection。

ilter()方法是一种转换操作,用于过滤RDD中的元素。例如昨天的过滤偶数出来。

当然,你也可以选择过滤奇数,可以过滤被3整除的数,全凭自己所需

distinct方法是一种转换操作,用于RDD的数据去重

去除我们的重复数据,在一些特定场景,能让我们的数据更简洁,更直观

intersectio方法用于求出两个RDD的共同元素 

现在,开始今天的学习吧~ 

二、RDD方法

1.cartesian

  • cartesian()方法可将两个集合的元素两两组合成一组,即求笛卡儿积。
  • 创建两个RDD,分别有3个元素,通过cartesian()方法求两个RDD的笛卡儿积。
import org.apache.spark.{SparkConf, SparkContext}object p1 {def main(args: Array[String]): Unit = {val conf=new SparkConf().setMaster("local").setAppName("p2")val sc=new SparkContext(conf)val p1 = sc.parallelize(Seq(1, 2, 3))val p2 = sc.parallelize(Seq("A", "B", "C"))// 对两个RDD执行cartesian操作val pp = p1.cartesian(p2)val ppp = pp.collect()ppp.foreach { case (x, y) => println(s"($x, $y)") }}
}

 可以看到我我们创建了两个集合为p1和p2,再使用cartesian进行求笛卡尔积,最后已每个输出为仅有x,y两个元素的元组形式进行遍历输出。

运行代码,看看结果

可以看到成功输出了笛卡尔积 

2.subtract

  • subtract()方法用于将前一个RDD中在后一个RDD出现的元素删除,可以认为是求补集的操作,返回值为前一个RDD去除与后一个RDD相同元素后的剩余值所组成的新的RDD。两个RDD的顺序会影响结果。
  • 创建两个RDD,分别为rdd1rdd2,包含相同元素和不同元素,通过subtract()方法求rdd1rdd2彼此的补集。
import org.apache.spark.{SparkConf, SparkContext}object p1 {def main(args: Array[String]): Unit = {val conf=new SparkConf().setMaster("local").setAppName("p2")val sc=new SparkContext(conf)val p1 = sc.parallelize(Seq(1, 2, 3, 4, 5))val p2 = sc.parallelize(Seq(3, 4, 5, 6, 7))// 对p1执行subtract操作,移除p2中存在的元素val pp = p1.subtract(p2)val ppp = pp.collect()ppp.foreach(println)}
}

可以看到我们的代码创建了一个p1与p2,它们中间有共同元素3,4,5,那么对p1使用 subtract方法移除与p2共同元素后,打印出来应该只有1与2,现在我们运行代码看看是否与所预期一致。

可以看到成功输出1,2,代码有效,快去练习吧~ 

拓展-方法参数设置与笛卡尔积

1.方法参数设置

 a.cartesian方法

参数/属性说明使用例子不同参数/属性的效果
RDD2另一个RDD,用于计算笛卡尔积RDD1.cartesian(RDD2)不同的RDD2会导致不同的笛卡尔积结果。笛卡尔积的大小是RDD1和RDD2大小的乘积。
随着RDD1和RDD2的大小增加,笛卡尔积的结果集急剧增大。
合适的分区策略可以提高cartesian操作的性能。

b. subtract方法

参数/属性说明使用例子不同参数/属性的效果
RDD2从当前RDD中去除与RDD2相同的元素RDD1.subtract(RDD2)不同的RDD2会导致从RDD1中去除的元素数量和内容不同。
numPartitions(可选)结果RDD的分区数量RDD1.subtract(RDD2, numPartitions)如果指定,则控制结果RDD的分区数量,影响计算的并行度和性能。
如果不指定,通常使用默认分区策略。
数据分布RDD中数据的分布情况不均匀的数据分布可能导致某些分区上的计算任务比其他分区更重。
优化的数据分布可以提高subtract操作的性能。
重复元素RDD中可能存在的重复元素subtract操作不会特殊处理重复元素,它们会按照正常规则被去除或保留。

2.笛卡尔积

 笛卡尔积是数学术语,又称直积。假设集合A={a,b},集合B={0,1,2},则A和B的笛卡尔积为{(a,0),(a,1),(a,2),(b,0),(b,1),(b,2)}。可以扩展到多个集合。类似的,多个二元组集合的笛卡尔积是各集合中所有二元组的一个组合,组合的前提是各集合中的二元组数目相等。做笛卡尔积的两个集合A和B中可以不含有重复元素,也可以包含重复元素。

大数据中,笛卡尔积的作用主要体现在数据组合和扩展方面。具体来说,当需要对两个或多个数据集进行组合时,可以使用笛卡尔积来生成所有可能的组合。这种组合方式在数据分析、数据挖掘以及机器学习等领域中非常有用,因为它可以帮助我们创建更丰富的数据集,以便进行更深入的分析和建模。

http://www.hkea.cn/news/532783/

相关文章:

  • 网站正常打开速度网店营销与推广策划方案
  • 义乌 网站制作进入百度app
  • 做外围网站赌球红树林seo基础入门免费教程
  • 绿色风格网站seo排名赚钱
  • 南宁企业免费建站百度推广营销怎么做
  • 建立个人网站的成本短视频seo营销系统
  • 深圳公司名称大全网站结构优化的内容和方法
  • 安康市代驾公司上海网站关键词排名优化报价
  • 怎么在网站上建设投票统计在线培训系统app
  • 泰州网站建设哪家好网站seo的主要优化内容
  • 洛卡博网站谁做的seo权重查询
  • 东莞网络科技公司有哪些山东网站seo
  • 网站建设需要学什么网站模板购买
  • 用html做的游戏网站关键词推广效果分析
  • 做影视网站引流正规推广平台有哪些
  • 免费下载简历模板北京seo排名厂家
  • 西昌市做网站的百度搜索排名靠前
  • 办公室装修实景拍摄图重庆seo俱乐部联系方式
  • 网站建设阶段推广计划书怎么写
  • 代做毕业设计网站现成注册网站平台
  • 电商网站开发工作计划企业网络营销策划
  • 用wps网站栏目做树形结构图网页设计代码案例
  • 多媒体网站设计开发是指什么每日关键词搜索排行
  • 网站 seo正规网络公司关键词排名优化
  • 建立网站赚多少钱seo收录排名
  • 怎么做app网站seo学习网站
  • 广西建设职业技术学院官网免费的seo优化
  • 凡科网电脑版怎么做网站百度知道官网手机版
  • 贵卅省住房和城乡建设厅网站周口seo推广
  • 搭建flv视频网站seo工具查询