上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 19 下一页
摘要: 故障排除一:控制reduce端缓冲大小以避免OOM 在Shuffle过程,reduce端task并不是等到map端task将其数据全部写入磁盘后再去拉取,而是map端写一点数据,reduce端task就会拉取一小部分数据,然后立即进行后面的聚合、算子函数的使用等操作。 reduce端task能够拉取 阅读全文
posted @ 2019-11-29 18:53 花未全开*月未圆 阅读(302) 评论(0) 推荐(0) 编辑
摘要: Spark中的数据倾斜问题主要指shuffle过程中出现的数据倾斜问题,是由于不同的key对应的数据量不同导致的不同task所处理的数据量不同的问题。 例如,reduce点一共要处理100万条数据,第一个和第二个task分别被分配到了1万条数据,计算5分钟内完成,第三个task分配到了98万数据,此 阅读全文
posted @ 2019-11-29 18:48 花未全开*月未圆 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 对于JVM调优,首先应该明确,(major)full gc/minor gc,都会导致JVM的工作线程停止工作,即stop the world。 JVM调优一:降低cache操作的内存占比 1. 静态内存管理机制 根据Spark静态内存管理机制,堆内存被划分为了两块,Storage和Executio 阅读全文
posted @ 2019-11-29 18:42 花未全开*月未圆 阅读(347) 评论(0) 推荐(0) 编辑
摘要: 在Spark任务运行过程中,如果shuffle的map端处理的数据量比较大,但是map端缓冲的大小是固定的,可能会出现map端缓冲数据频繁spill溢写到磁盘文件中的情况,使得性能非常低下,通过调节map端缓冲的大小,可以避免频繁的磁盘IO操作,进而提升Spark任务的整体性能。 map端缓冲的默认 阅读全文
posted @ 2019-11-29 18:40 花未全开*月未圆 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 算子调优一:mapPartitions 普通的map算子对RDD中的每一个元素进行操作,而mapPartitions算子对RDD中每一个分区进行操作。如果是普通的map算子,假设一个partition有1万条数据,那么map算子中的function要执行1万次,也就是对每个元素进行操作。 如果是ma 阅读全文
posted @ 2019-11-29 18:35 花未全开*月未圆 阅读(569) 评论(0) 推荐(0) 编辑
摘要: 1.1.1 常规性能调优一:最优资源配置 Spark性能调优的第一步,就是为任务分配更多的资源,在一定范围内,增加资源的分配与性能的提升是成正比的,实现了最优的资源配置后,在此基础上再考虑进行后面论述的性能调优策略。 资源的分配在使用脚本提交Spark任务时进行指定,标准的Spark任务提交脚本如代 阅读全文
posted @ 2019-11-29 18:30 花未全开*月未圆 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 资源参数调优 了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理解了。所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各个使用资源的地方,通过调节各种参数,来优化资源使用的效率,从而提升Spark作业的执行性能。以下参数就是Spark中主要的资源参数,每个参数都对应着 阅读全文
posted @ 2019-11-29 18:12 花未全开*月未圆 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 怎样提高Spark Streaming的性能 1、创建多个接收器 待定:: 2、调节每一个batch interval的数据块的数量,其实就是调整上面第二个问题中提到的配置spark.streaming.blockInterva 待定:: 3、调整Recevier每秒接收数据的速率 待定:: 4、通 阅读全文
posted @ 2019-11-29 18:06 花未全开*月未圆 阅读(462) 评论(0) 推荐(0) 编辑
摘要: Spark Streaming应用也是Spark应用,Spark Streaming生成的DStream最终也是会转化成RDD,然后进行RDD的计算,所以Spark Streaming最终的计算是RDD的计算,那么Spark Streaming的原理当然也包含了Spark应用通用的原理。Spark 阅读全文
posted @ 2019-11-29 17:59 花未全开*月未圆 阅读(697) 评论(0) 推荐(0) 编辑
摘要: Spark SQL中的Catalyst 的工作机制 答:不管是SQL、Hive SQL还是DataFrame、Dataset触发Action Job的时候,都会经过解析变成unresolved的逻辑执行计划,然后利用元数据信息对unresolved的逻辑执行计算进行分析,得到逻辑执行计划,然后对逻辑 阅读全文
posted @ 2019-11-29 17:46 花未全开*月未圆 阅读(471) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 19 下一页