美文网首页
spark map端计算结果缓存处理并简述appendOnlyM

spark map端计算结果缓存处理并简述appendOnlyM

作者: scott_alpha | 来源:发表于2019-10-11 21:25 被阅读0次

1.map端的聚合是利用AppendOnlyMap实现,AppendOnlyMap是spark自己实现的Map,只能添加数据,不能remove。该map是使用开放定址法中的二次探测法,不用自带的hashmap,节省空间,提高性能。数组中a[i]=key,a[i+1]=value,即用两个位置来存储kv对。growThreshold=LOAD_FACTOR*capacity,当添加的元素超过该值时,数组会进行grow,capacity翻倍,同时所有的kv都会进行rehash重新分配位置。
首先,根据key的hash(具体是murmur3_32)找到位置,如果目标的key与要查找的key不一样,则使用二次探测法继续查找,直到找到为止。
2.map端计算结果缓存处理?结合shuffle进行理解:
a.对计算结果在缓存中执行聚合和排序
b.map不使用缓存也不执行聚合和排序,直接写入存储文件
c.对计算结果简单缓存

相关文章

  • spark map端计算结果缓存处理并简述appendOnlyM

    1.map端的聚合是利用AppendOnlyMap实现,AppendOnlyMap是spark自己实现的Map,只...

  • map和reduce分析以及调优参考以及yarn

    6.3 map端计算结果缓存处理 1、bypassMergeThreshold:传递reduce端再做合并(mer...

  • 6. RxSwift 订阅操作过滤1 map、buffer、fi

    map 同 Swift中 map 用法一样,对值进行处理并返回 buffer timeSpan 缓存间隔时间、 ...

  • Spark中使用Scala synchronized 并发加锁创

    摘要:Spark,Scala,synchronized executor端共享变量 Spark的rdd调用map或...

  • Map Join

    1.适用于一张表十分小、一张表很大的场景2.在map端缓存多张表,提前处理业务逻辑,这样增加map端业务,减少re...

  • 1.

    1.hadoop的shuffle的过程 (1)Map端的shuffleMap端会处理输入数据并产生中间结果,这个中...

  • Spark原理简述

    Spark 学习: spark 原理简述与 shuffle 过程介绍 简述总结 Spark 是使用 scala 实...

  • golang实现简单的流式处理

    实现一个最简单的类似spark的流式处理流程包含map和filter数据 map函数 fliter函数 所有数据+...

  • MapReducer之Shuffle

    shuffle是将Map的输出结果进行分区,排序,分组等处理之后交给Reduce进行处理的过程 Map端的shuf...

  • map()

    遍历数组的每一项元素,并且在map的第一个参数(回调函数)中进行运算处理后返回计算结果。返回一个由所有计算结果组成...

网友评论

      本文标题:spark map端计算结果缓存处理并简述appendOnlyM

      本文链接:https://www.haomeiwen.com/subject/sonxmctx.html