丝瓜视频官方 教育-做有情怀、有良心、有品质的职业教育机构

手机站
丝瓜视频官方
教育

丝瓜视频官方 学习站 | 随时随地免费学

丝瓜视频官方
教育

扫一扫进入丝瓜视频官方 手机站

领取全套视频
丝瓜视频官方
教育

关注丝瓜视频官方 学习站小程序
随时随地免费学习课程

首页 技术干货 常见问题 面试题 职场就业 零基础学丝瓜视频官方 行业资讯
【热点话题】 丝瓜视频官方 技术干货 丝瓜视频官方 学习教程 丝瓜视频官方 学习笔记 丝瓜视频官方 面试题 丝瓜视频官方 丝瓜视频苹果版 问答 丝瓜视频官方 丝瓜视频苹果版 机构哪些好 丝瓜视频官方 职场就业
当前位置:丝瓜视频官方 丝瓜视频苹果版  >  丝瓜视频官方 技术干货  >  Spark 调优(重点)

Spark 调优(重点)

发布人:wjy
时间: 2022-12-02 17:58:00 1669975080

  1. spark1.6以下的版本中execution和storage的内存是各自固定的,执行内存负责transform算子和shuffle算子,storage负责catch部分和广播变量的存储。通过以下两个参数改变它们的大小。

  spark.shuffle.memoryFraction=0.2 spark.storage.memoryFraction=0.6

  2. spark1.6以上的版本时使用联合内存机制,两者可以互相借用内存,但是如果执行内存不够时会强制回收storage借走的内存。

  因此如果要进行大缓存任务时建议手动设置固定内存机制。

  3. 1.6以上的版本还额外增加了堆外内存,调用persist方法时指定StorageLevel.OFF_HEAP参数,配合分布式内存文件系统Tachyon将需要缓存很久的数据存放到堆外内存,大幅降低full GC的发生频率。

  . 使用repartition增加分区数量,降低每个task的大小

  4. 当合并分区的数据量过大时,可以使用repartition并手动指定使用shuffle来进行带shuffle的合并操作,可以在合并前先进行一次聚合。

  5. 使用shuffle算子时指定分区数量或指定自定义分区器避免数据倾斜

  6. 当某个数据重复很多时,尽量用一个对象来代表这些数据,可以是string,也可以是带计数器的map。

  7. 使用mapPartition代替map可以提升效率,但要注意内存紧缺时不能使用。

  8. map端join:当join小表时,可以先用collect将数据收集到driver端,然后用广播变量的方式发送到各个节点上,避免丝瓜视频官方 的迁移。

  9. 可以使用map端reduce的方式进一步减少网络IO。调用combineByKey算子。

  10. 内存不足时使用rdd.persist(StorageLevel.MEMORY_AND_DISK_SER),直接缓存到磁盘。

  11. spark集群节点应该覆盖hbase,因为spark读取hbase时是按region读取,在同一个节点上可以避免大量数据迁移

  12. 参数设置: spark.driver.memory (default:1G) 设置driver端内存 spark.rdd.compress设置压缩内存的rdd数据,减少内存的占用,但是增加CPU负担 spark.serializer设置默认kyro spark.memory.storageFraction设置storage在内存中的比例,根据缓存的大小决定spark.locality.wait设置等待任务的等待时间,如果某个任务等待数据到达的时间超过该时间,就会被下调优先级spark.speculation设置空闲节点是否执行某个长时间未结束的task,有点类似hive的预测执行,建议开启。

  总结 减少GC:增加计算用的内存;把频繁使用的大缓存缓存到堆外内存;使用计数器存储重复的数据 增加并行度:shuffle时指定分区数量、repartition增加分区(可用线程的2-3倍)、减小分区可以指定带shuffle的repartition进行局部聚合 减少shuffle:使用指定的分区器进行分区,使得相同的key都处于同一分区中(主要用在数据清洗时按自定义分区器存储数据)

  map端join:先读取小表到driver端存成广播变量,再读取大表使用广播变量进行join map端reduce:使用combineByKey算子

  指定persist : 内存不足时用persisit指定缓存磁盘来代替catch

  参数调优:设置压缩RDD(节约内存,加重CPU)、设置kyro序列化、延长下调本地化级别的等待时间、开启预测执行等等

声明:本站稿件版权均属丝瓜视频官方 教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>

开班信息
北京校区
  • 北京校区
  • 大连校区
  • 广州校区
  • 成都校区
  • 杭州校区
  • 长沙校区
  • 合肥校区
  • 南京校区
  • 上海校区
  • 深圳校区
  • 武汉校区
  • 郑州校区
  • 西安校区
  • 青岛校区
  • 重庆校区
  • 太原校区
  • 沈阳校区

14天品质课程免费学

10年以上业内强师带你蜕变精英

提交领取
qvkbm.com r6q78bi.com sntg005.com 905389.com gzauvia.com mp3bladi.com yimpl.com ktkff.com detouyu.com