随笔分类 - spark
spark性能调优06-数据倾斜处理
摘要:1、数据倾斜 1.1 数据倾斜的现象 现象一:大部分的task都能快速执行完,剩下几个task执行非常慢 现象二:大部分的task都能快速执行完,但总是执行到某个task时就会报OOM,JVM out of Memory,task faild,task lost,resubmitting task等
阅读全文
spark复习总结03
摘要:1.DataFrame的创建方式 1.1 通过加载外部文件创建 1.2 通过RDD和元数据进行转换 1.2.1 通过使用动态构建的元数据的方式创建DataFrame 1.2.2 通过反射的方式,使用javabean的属性作为DataFrame的元数据进行创建DataFrame 1.2.3 使用hiv
阅读全文
spark复习总结02
摘要:1.spark执行原理图 spark程序启动后创建sparkContext作为程序的入口,sparkContext可以与不同类的集群资源管理器(Cluster Manager)进行通信,从而获得程序运行所需要的资源, 获取到集群中其他工作节点(worker node)上对应的Executors,之后
阅读全文
spark复习总结01
摘要:1.MapReduce和spark的对比 2.初始化spark master为Spark、Mesos、YARN URL或local。使用local值时,表示在本地模式下运行程序。 也可以在省略,在spark-submit时进行指定。 3.使用spark-shell,会自动创建sparkContext
阅读全文
spark性能调优05-troubleshooting处理
摘要:1、调节reduce端缓冲区大小避免OOM异常 1.1 为什么要调节reduce端缓冲区大小 对于map端不断产生的数据,reduce端会不断拉取一部分数据放入到缓冲区,进行聚合处理; 当map端数据特别大时,reduce端的task拉取数据是可能全部的缓冲区都满了,此时进行reduce聚合处理时创
阅读全文
spark性能调优04-算子调优
摘要:1、使用MapPartitions代替map 1.1 为什么要死使用MapPartitions代替map 普通的map,每条数据都会传入function中进行计算一次;而是用MapPartitions时,function会一次接受所有partition的数据出入到function中计算一次,性能较高
阅读全文
spark性能调优03-shuffle调优
摘要:1、开启map端输出文件的合并机制 1.1 为什么要开启map端输出文件的合并机制 默认情况下,map端的每个task会为reduce端的每个task生成一个输出文件,reduce段的每个task拉取map端每个task生成的相应文件 开启后,map端只会在并行执行的task生成reduce端tas
阅读全文
spark性能调优02-JVM调优
摘要:1、降低cache操作的内存占比 1.1 为什么要降低cache操作的内存占比 spark的堆内存分别两部分,一部分用来给Rdd的缓存进行使用,另一部分供spark算子函数运行使用,存放函数中的对象 默认情况下,供Rdd缓存使用的占0.6,但是,有些时候,不需要那么多的缓存,反而函数计算需要更多的内
阅读全文
spark性能调优01-常规调优
摘要:1、分配更多的资源 1.1 分配的资源有:executor、cup per executor、memory per executor、driver memory 1.2 如何分配:在spark-submit提交时设置相应的参数 1.3 调节到多大(原则:能使用的资源有多大,就尽量调节到最大的大小)
阅读全文
spark使用02
摘要:1.rdd的初始化 1.1 读取文件来初始化rdd(通过sparkContext的textFile方法) 1.1.1 读取本地文件 1.1.2 读取hdfs文件 1.2 并行化集合来初始化rdd(通过sparkContext.) 2.rdd的基本操作(分为transformation和action)
阅读全文
浙公网安备 33010602011771号