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

西安市网站建设公司找营销推广团队

西安市网站建设公司,找营销推广团队,WordPress全屏轮播图,广州注册公司有什么优惠政策RDD转换算子 RDD 根据数据处理方式的不同将算子整体上分为 Value 类型、双 Value 类型和 Key-Value 类型。 Value类型: map算子:用于映射转换,可以进行类型转换和值转换。 mapPartitions算子:在分区基础上进行映射,可以并行处理数据&#x…

RDD转换算子

RDD 根据数据处理方式的不同将算子整体上分为 Value 类型、双 Value 类型和 Key-Value 类型。

Value类型:
map算子:用于映射转换,可以进行类型转换和值转换。


mapPartitions算子:在分区基础上进行映射,可以并行处理数据,提高处理速度,但可能占用更多内存。

mapPartitionsWithIndex算子:将待处理的数据以分区为单位发送到计算节点进行处理,这里的处理是指可以进行任意的处理,哪怕是过滤数据,在处理时同时可以获取当前分区索引。

flatMap算子:先扁平化数据再映射,适用于嵌套数据的处理。

glom算子:将同一个分区的数据直接转换为相同类型的内存数组进行处理,分区不变。

groupBy算子:根据指定规则进行分组,可能导致数据在不同分区之间重新分布。
flter算子:根据指定规则筛选数据,分区不变但数据分布可能不均衡。
sample算子:根据指定概率抽取数据,可以设置放回和不放回。
distinct算子:去重操作,可以选择是否分区。
coalesce算子:缩减分区数量,提高小数据集的执行效率。
repartition算子:调整分区数量,可以增加或减少分区。
sortBy算子:对数据进行排序,可以选择升序或降序,并指定分区数量。

区别:

map 和 mapPartitions 的区别:

数据处理角度:

Map 算子是分区内一个数据一个数据的执行,类似于串行操作。而 mapPartitions 算子是以分区为单位进行批处理操作。

功能的角度:

Map 算子主要目的将数据源中的数据进行转换和改变。但是不会减少或增多数据。MapPartitions 算子需要传递一个迭代器,返回一个迭代器,没有要求的元素的个数保持不变,所以可以增加或减少数据

性能的角度:

Map 算子因为类似于串行操作,所以性能比较低,而是 mapPartitions 算子类似于批处理,所以性能较高。但是 mapPartitions 算子会长时间占用内存,那么这样会导致内存可能不够用,出现内存溢出的错误。所以在内存有限的情况下,不推荐使用。使用 map 操作。

map和flatMap的区别:

map会将每一条输入数据映射为一个新对象。

flatMap包含两个操作:会将每一个输入对象输入映射为一个新集合,然后把这些新集合连成一个大集合。

双Value类型:

intersection算子:对源 RDD 和参数 RDD 求交集后返回一个新的 RDD。
union算子:对源 RDD 和参数 RDD 求并集后返回一个新的 RDD(重复数据不会去重)。
subtract算子:求两个RDD的差集,以第一个RDD为主,去掉重复元素(求差集)。
zip算子:将两个RDD的数据按位置配对,组成键值对形式,其中,键值对中的 Key 为第 1 个 RDD中的元素,Value 为第 2 个 RDD 中的相同位置的元素。

Key-Value类型:

partitionBy:将数据按照指定 Partitioner 重新进行分区。Spark 默认的分区器是 HashPartitioner。

groupByKey:将数据源的数据根据 key 对 value 进行分组。

reduceByKey:可以将数据按照相同的 Key 对 Value 进行聚合。

aggregateByKey:将数据根据不同的规则进行分区内计算和分区间计算。

foldByKey:当分区内计算规则和分区间计算规则相同时,aggregateByKey 就可以简化为 foldByKey。

combineByKey:最通用的对 key-value 型 rdd 进行聚集操作的聚集函数(aggregation function)。类似于aggregate(),combineByKey()允许用户返回值的类型与输入不一致。

区别:

reduceByKey 和 groupByKey 的区别:

从 shuffle 的角度:

reduceByKey 和 groupByKey 都存在 shuffle 的操作,但是 reduceByKey可以在 shuffle 前对分区内相同 key 的数据进行预聚合(combine)功能,这样会减少落盘的数据量,而 groupByKey 只是进行分组,不存在数据量减少的问题,reduceByKey 性能比较高。

从功能的角度:

reduceByKey 其实包含分组和聚合的功能。GroupByKey 只能分组,不能聚合,所以在分组聚合的场合下,推荐使用 reduceByKey,如果仅仅是分组而不需要聚合。那么还是只能使用 groupByKey。

reduceByKey、foldByKey、aggregateByKey、combineByKey 的区别:

reduceByKey:

相同 key 的第一个数据不进行任何计算,分区内和分区间计算规则相同

FoldByKey:

每一个key 对应的数据和初始值进行分区内计算,分区内和分区间计算规则相同。

AggregateByKey:

每一个 key 对应的数据和初始值进行分区内计算,分区内和分区间计算规则可以不相同。

CombineByKey:

当计算时,发现数据结构不满足要求时,可以让第一个数据转换结构。分区内和分区间计算规则不相同。

http://www.dtcms.com/wzjs/139376.html

相关文章:

  • 模板网站建设价位10常用的网络营销方法
  • 廊坊网站建设费用百度问一问官网
  • 网站正在建设中...为什么护卫神永久免费制作网页
  • 做seo要明白网站内容搜索引擎seo排名优化
  • 邯郸市出租房屋信息网百度关键词相关性优化软件
  • 南京高端网站建设哪家好seo排名优化首页
  • 企业网站建设的类型长沙网站制作主要公司
  • 深圳学校网站建设公司如何制作网页链接教程
  • 做网站台式还是笔记本沧州百度推广公司
  • 深圳公司网站制作seo网络推广公司报价
  • 个人的视频网站如何做优化方案
  • 国内cms排行台州seo
  • 中国设计品牌网seo快速优化文章排名
  • 做英文网站可以申请补贴吗营销到底是干嘛的
  • 最新廊坊疫情最新消息百度seo官网
  • 注册公司有什么好处有什么坏处上海站群优化公司
  • 中国交通建设集团有限公司英文名重庆seo博客
  • 网站登录注册怎么做seo的优化步骤
  • 上海做网站 公司有哪些互联网营销的方法
  • 怎么自己做砍价网站如何做好品牌宣传
  • 宁波网站建设服务公司电话如何提高网站排名
  • 上海松江做网站企业网站制作流程
  • 又一个wordpress站点建立网站需要多少钱
  • 网站内页怎样做优化互联网运营主要做什么
  • 政府网站建设与管理官网凡科网微信小程序
  • 关于做网站pptseo点击器
  • 昆明做网站排名镇江推广公司
  • 高质量摄影作品网站软文广告属于什么营销
  • 配资网站建设是什么意思seo关键词排名优化评价
  • 网站降权怎么救青岛网站排名公司