如何管理Spark内存?(mac如何管理内存)

Spark内存管理

Spark执行应用程序时,Spark集群会启动Driver和Executor两种JVM进程,Driver负责创建SparkContext上下文,提交任务,task的分发等。 Executor负责task的计算任务,并将结果返回给Driver。 同时需要为需要持久化的RDD提供储存。 Driver端的内存管理比较简单,这里所说的Spark内存管理针对Executor端的内存管理。

Spark内存管理分为静态内存管理和统一内存管理,Spark1.6之前使用的是静态内存管理,Spark1.6之后引入了统一内存管理。

静态内存管理中存储内存、执行内存和其他内存的大小在 Spark 应用程序运行期间均为固定的,但用户可以应用程序启动前进行配置。

统一内存管理与静态内存管理的区别在于储存内存和执行内存共享同一块空间,可以互相借用对方的空间。

Spark1.6以上版本默认使用的是统一内存管理,可以通过参数spark.memory.useLegacyMode 设置为true(默认为false)使用静态内存管理。

一、具体细节

1、静态内存管理分布图

2、统一内存管理分布图

3、reduce 中OOM如何处理?

拉取数据的时候一次都放不下,放下的话可以溢写磁盘

1) 减少每次拉取的数据量

2) 提高shuffle聚合的内存比例

3) 提高Excutor的总内存

4、Shuffle调优

spark.shuffle.file.buffer默认值:32k参数说明:该参数用于设置shuffle write task的BufferedOutputStream的buffer缓冲大小。 将数据写到磁盘文件之前,会先写入buffer缓冲中,待缓冲写满之后,才会溢写到磁盘。 调优建议:如果作业可用的内存资源较为充足的话,可以适当增加这个参数的大小(比如64k,一定是成倍的增加),从而减少shuffle write过程中溢写磁盘文件的次数,也就可以减少磁盘IO次数,进而提升性能。 在实践中发现,合理调节该参数,性能会有1%~5%的提升。 spark.reducer.maxSizeInFlight默认值:48m参数说明:该参数用于设置shuffle read task的buffer缓冲大小,而这个buffer缓冲决定了每次能够拉取多少数据。 调优建议:如果作业可用的内存资源较为充足的话,可以适当增加这个参数的大小(比如96m),从而减少拉取数据的次数,也就可以减少网络传输的次数,进而提升性能。 在实践中发现,合理调节该参数,性能会有1%~5%的提升。 spark.shuffle.io.maxRetries默认值:3参数说明:shuffle read task从shuffle write task所在节点拉取属于自己的数据时,如果因为网络异常导致拉取失败,是会自动进行重试的。 该参数就代表了可以重试的最大次数。 如果在指定次数之内拉取还是没有成功,就可能会导致作业执行失败。 调优建议:对于那些包含了特别耗时的shuffle操作的作业,建议增加重试最大次数(比如60次),以避免由于JVM的full gc或者网络不稳定等因素导致的数据拉取失败。 在实践中发现,对于针对超大数据量(数十亿~上百亿)的shuffle过程,调节该参数可以大幅度提升稳定性。 shuffle file not find taskScheduler不负责重试task,由DAGScheduler负责重试stagespark.shuffle.io.retryWait默认值:5s参数说明:具体解释同上,该参数代表了每次重试拉取数据的等待间隔,默认是5s。 调优建议:建议加大间隔时长(比如60s),以增加shuffle操作的稳定性。 spark.shuffle.memoryFraction默认值:0.2参数说明:该参数代表了Executor内存中,分配给shuffle read task进行聚合操作的内存比例,默认是20%。 调优建议:在资源参数调优中讲解过这个参数。 如果内存充足,而且很少使用持久化操作,建议调高这个比例,给shuffle read的聚合操作更多内存,以避免由于内存不足导致聚合过程中频繁读写磁盘。 在实践中发现,合理调节该参数可以将性能提升10%左右。 spark.shuffle.manager默认值:sort|hash参数说明:该参数用于设置ShuffleManager的类型。 Spark 1.5以后,有三个可选项:hash、sort和tungsten-sort。 HashShuffleManager是Spark 1.2以前的默认选项,但是Spark 1.2以及之后的版本默认都是SortShuffleManager了。 tungsten-sort与sort类似,但是使用了tungsten计划中的堆外内存管理机制,内存使用效率更高。 调优建议:由于SortShuffleManager默认会对数据进行排序,因此如果你的业务逻辑中需要该排序机制的话,则使用默认的SortShuffleManager就可以;而如果你的业务逻辑不需要对数据进行排序,那么建议参考后面的几个参数调优,通过bypass机制或优化的HashShuffleManager来避免排序操作,同时提供较好的磁盘读写性能。 这里要注意的是,tungsten-sort要慎用,因为之前发现了一些相应的bug。 spark.shuffle.sort.bypassMergeThreshold默认值:200参数说明:当ShuffleManager为SortShuffleManager时,如果shuffle read task的数量小于这个阈值(默认是200),则shuffle write过程中不会进行排序操作,而是直接按照未经优化的HashShuffleManager的方式去写数据,但是最后会将每个task产生的所有临时磁盘文件都合并成一个文件,并会创建单独的索引文件。 调优建议:当你使用SortShuffleManager时,如果的确不需要排序操作,那么建议将这个参数调大一些,大于shuffle read task的数量。 那么此时就会自动启用bypass机制,map-side就不会进行排序了,减少了排序的性能开销。 但是这种方式下,依然会产生大量的磁盘文件,因此shuffle write性能有待提高。 spark.shuffle.consolidateFiles默认值:false参数说明:如果使用HashShuffleManager,该参数有效。 如果设置为true,那么就会开启consolidate机制,会大幅度合并shuffle write的输出文件,对于shuffle read task数量特别多的情况下,这种方法可以极大地减少磁盘IO开销,提升性能。 调优建议:如果的确不需要SortShuffleManager的排序机制,那么除了使用bypass机制,还可以尝试将spark.shffle.manager参数手动指定为hash,使用HashShuffleManager,同时开启consolidate机制。 在实践中尝试过,发现其性能比开启了bypass机制的SortShuffleManager要高出10%~30%。

5、Shuffle调优设置

SparkShuffle调优配置项如何使用?

1) 在代码中,不推荐使用,硬编码。

new SparkConf().set(“spark.shuffle.file.buffer”,”64”)

2) 在提交spark任务的时候,推荐使用。

spark-submit --conf spark.shuffle.file.buffer=64 –conf ….

3) 在conf下的spark-default.conf配置文件中,不推荐,因为是写死后所有应用程序都要用。

猜你感兴趣
网购被骗怎么办(网购被骗怎么办不能退钱)

网购被骗怎么办(网购被骗怎么办不能退钱)

1、可以起诉网络交易平台2、消费者可以要求商家赔偿经验步骤:1可以起诉网络交易平台。该条款规定了电商平台的信息披露义务,给了消费者维权的新武器,这正是先进制度设计对消费者权益保护作用的良好体现,消费者应充分利用法律,维护好自己的合法权益...

精选综合 2023-05-12
哪些银行信用卡好办额度又高(哪些银行信用卡好批额度高)

哪些银行信用卡好办额度又高(哪些银行信用卡好批额度高)

银行信用卡审核主要看申请人的资信条件,资信条件越好,办信用卡越容易,额度也越高。如果申请人资信条件相同,选择以下银行信用卡好办额度又高:1、工商银行信用卡比较适合与工行有业务往来的人,在工行有资产,那么,办卡容易,且额度高,卡均额度有4...

精选综合 2023-05-12
磁铁衣服扣子对人体有害吗?(磁铁衣服扣子对人体有害吗)

磁铁衣服扣子对人体有害吗?(磁铁衣服扣子对人体有害吗)

磁铁衣服扣子对人体没有害。因为磁铁衣服扣子比较小,对身体是没有影响的。磁铁的成分是铁、钴、镍等原子,其原子的内部结构比较特殊,本身就具有磁矩。磁铁能够产生磁场,具有吸引铁磁性物质如铁、镍、钴等金属的特性。...

精选综合 2023-05-12
吃灵芝孢子粉大便发黑正常吗?

吃灵芝孢子粉大便发黑正常吗?

吃完灵芝孢子粉之后大便发黑在我们的日常生活中非常常见,实际上每个人吃完灵芝孢子粉之后,身上都会出现类似的现象,这正是表示起了效果,对人的身体健康没有其他的不良影响,灵芝孢子粉本身就是黑色的,就像吃了黑芝麻胡之后大便发黑一样,吃了灵芝孢子粉...

精选综合 2023-05-12
月见草的养殖方法和注意事项(月见草的种植方法和注意事项)

月见草的养殖方法和注意事项(月见草的种植方法和注意事项)

1、月见草的养殖方法:月见草喜光,适合栽培在庭院通风敞亮处,也可以养殖在阳台上,每天吸收太阳光照射。生长期间,每个月施1—2次液肥,生长期施肥以氮肥为主,孕蕾期以磷钾肥为主。2、月见草比较耐旱,但不耐涝,土壤表层见干时要及时浇水,每次...

精选综合 2023-05-12
注塑机调气纹的技巧有哪些

注塑机调气纹的技巧有哪些

注塑机调气纹的技巧有以下:1、模具透明法此法是将射胶时间一秒一秒增加,每增加一秒啤一啤,然后将每一啤未走齐的啤件按顺序排列起来,这样就可以很清楚地看到熔胶的充型过程,直到充满型腔为止。2、定位射胶法此法是将后一级的慢速和压力全部调整为零...

精选综合 2023-05-12
充分必要条件的口诀是什么(判断充分必要条件的口诀)

充分必要条件的口诀是什么(判断充分必要条件的口诀)

充分必要条件的口诀是:正推成立是充分,反推成立是必要。若有A推到B,则B为必要条件,即被推导出来的就是必要条件,不需要把两个一次性全部分辨出来。只要记准那个是必要条件就行了,因为另一个肯定就是充分条件。充分必要条件也即充要条件,意思...

精选综合 2023-05-12
为什么一般两年换手机(QQ为什么换手机登录不上去了)

为什么一般两年换手机(QQ为什么换手机登录不上去了)

原因:随着APP的功能越来越多,需要手机拥有更强大的性能才能流畅使用这些软件,因此需要定期更换手机才能获得最佳的使用体验。手机使用技巧:1、华为p30Pro具有抬手亮屏功能,打开华为p30Pro的系统设置页面,点击智能辅助――手势控制―...

精选综合 2023-05-12
肇事者不报警是全责吗?

肇事者不报警是全责吗?

肇事者不报警不一定是全责,交通事故的责任认定是由交警部门根据交通事故现场勘验、检查、调查情况和有关的检验、鉴定结论进行的。《道路交通安全法》第七十三条规定,公安机关交通管理部门应当根据交通事故现场勘验、检查、调查情况和有关的检验、鉴定结...

精选综合 2023-05-12
道姑的入观条件是什么

道姑的入观条件是什么

一般按要求需要高中以上文凭,但各地收容不一,需要准备身份证原件,当地派出所出具的无案底证明,自己写的出家自愿申请书及父母同意出家的同意书。一般出家考察期3年,如果合格出家,三年后师父会束发,冠巾等等才算是正规道士,正一本身就是散居道人,...

精选综合 2023-05-12
瑞虎5x电池型号是多少(瑞虎5x手动变速箱型号)

瑞虎5x电池型号是多少(瑞虎5x手动变速箱型号)

奇瑞瑞虎5x的电瓶型号有12V,60Ah(常规型号)和12V,70Ah(蓝驱车型)两种,类型为免维护式。汽车电瓶即为我们常说的蓄电池,瑞虎先前车型上的电瓶品牌有风帆的,也有选用骆驼品牌的电瓶。瑞虎5x的电瓶同大多数车型一样位于发动机舱...

精选综合 2023-05-12
中国银行周日上班吗?(中国银行周日上班吗?)

中国银行周日上班吗?(中国银行周日上班吗?)

中国银行周末上班,营业时间一般为8:00(或9:00)-16:30(或17:30),看各地的政府规定及本地城市的大小,自助银行是24小时营业;个人业务周末是不休息的(除了基金和银证业务以及个人贷款业务外),对公业务周末休息。具体到某一家...

精选综合 2023-05-12
洗衣机能放倒来运输吗?(波轮洗衣机能放倒运输吗)

洗衣机能放倒来运输吗?(波轮洗衣机能放倒运输吗)

1、洗衣机能放倒来运输吗?不能。2、因为这样对于缸筒或者滚筒都有伤害的。由于洗衣机有避震器,等于有软连接,所以,放倒后,缸筒会和外壳接触。对于滚筒来说,虽然有运输固定螺丝,但是内筒配重块非常重,而且一端固定在外壳,一端固定在缸筒外壳...

精选综合 2023-05-12
腊肉长蛆虫了还能吃吗?(腊肉长蛆虫了还能吃吗)

腊肉长蛆虫了还能吃吗?(腊肉长蛆虫了还能吃吗)

腊肉里长蛆虫了是不可以吃的,说明腊肉没有处理好,造成有虫卵遗留在腊肉中。腊肉里面长蛆虫说明里面已经可以适应寄生虫的生长环境,若吃了自然也会把寄生虫吃到肚子内造成寄生虫类疾病。...

精选综合 2023-05-12
黑金信用卡额度一般是多少(黑金信用卡要什么条件)

黑金信用卡额度一般是多少(黑金信用卡要什么条件)

黑金信用卡额度一般在200万到1000万之间。很多人认为,黑金信用卡额度没有上限,其实是误解,黑金信用卡的额度一般都在几百万元,而且可以根据持卡人的需求智能调节,但是黑金信用卡额度只能用于合理消费用途,不能作为企业流动资金。另外,有的...

精选综合 2023-05-12
芋艿发青了还能吃吗?(芋艿发黑了还能吃吗)

芋艿发青了还能吃吗?(芋艿发黑了还能吃吗)

芋艿发青了不要吃,因为芋艿发青的青色部分可能含有毒素,所以不能食用。正常成色的芋艿富含蛋白质、钙、磷、铁、钾、镁、钠、胡萝卜素、烟酸、维生素B1、维生素B2、皂角甙等多种成分。...

精选综合 2023-05-12
关于诚信交友的名言名句(关于诚信的名言名句大全)

关于诚信交友的名言名句(关于诚信的名言名句大全)

言必信,行必果。与朋友交,言而有信。人与人之间最大的信任就是关于进言的信任。学而不思则罔,思而不学则殆。人之相识,贵在相知,人之相知,贵在知心。...

精选综合 2023-05-12
转网不换号怎么办理(异地转网不换号怎么办理)

转网不换号怎么办理(异地转网不换号怎么办理)

1、拿起你的手机通过短信在线查询携转资格(短信编辑CCXZ#用户名#证件号码,发送至归属运营商,移动10086,联通10010,电信10001)。2、用户通过短信申请授权码(短信指令:SQXZ#用户名#证件号码,发送至归属运营商,移动1...

精选综合 2023-05-12
铁棍山药麻嘴能吃吗?(铁棍山药麻嘴能吃吗)

铁棍山药麻嘴能吃吗?(铁棍山药麻嘴能吃吗)

铁棍山药麻嘴是可以吃的,只要把山药表面的皮去掉,然后洗干净就是没问题的。铁棍山药中含少量的植物碱,对人身也是有好处的,但有些过敏体质的人会对这种碱性物质过敏,导致食用后嘴里发麻。...

精选综合 2023-05-12
藏南人民用哪国身份证

藏南人民用哪国身份证

藏南人民以实际控制线为界一边用印度的身份证,一边用中国的身份证。事实上,尽管多年来中印边界从未正式划定,但两国人民在长期和平友好相处过程中,按照双方的行政管辖范围,已经形成了一条为两国人民都尊重的传统习惯线。...

精选综合 2023-05-12