-
一次SparkSQL性能分析与优化之旅及相关工具小结
本文是一个OLAP数据源接入到SparkSQL并进行优化的过程。本文总结了调优过程当中一些可以借鉴与讨论的地方,鉴于本人水平有限,还请有这方面调优经验的同学不吝赐教。 优化主要是从…
-
Spark性能调优06-JVM调优
1. Spark 调优和 JVM 调优的关系 再JVM虚拟机中,当创建的对象的数量很多时,Eden 和 Survior1 区域会很快的满溢,就需要进行频繁地 Minor GC,这样…
-
实践干货!利用 VisualVM 监控 Spark Driver/Executor
VisualVM是我们平时最常用的Java应用监控和性能分析工具,功能很丰富。我们有时会利用它来监控Spark作业,主要是Driver和Executor的运行情况。VisualVM…
-
HyperLogLog函数在Spark中的高级应用
预聚合是高性能分析中的常用技术,例如,每小时100亿条的网站访问数据可以通过对常用的查询纬度进行聚合,被降低到1000万条访问统计,这样就能降低1000倍的数据处理量,从而在查询时…
-
Spark性能调优05-Shuffle调优
1. Spark Shuffle概述 在Spark的源码中,负责shuffle过程的执行、计算和处理的组件主要就是ShuffleManager,也即shuffle管理器。而随着Sp…
-
Spark性能调优04-数据倾斜调优
1. 数据倾斜发生时的现象 绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却…
-
Spark性能调优03-数据本地化调优
1. task数据本地化级别 (1) PROCESS_LOCAL:进程本地化 (2) NODE_LOCAL:节点本地化 (3) NO_PREF:没有本地化级别 (4) RACK_L…
-
Spark性能调优02-代码调优
1. 概述 代码调优,就是要让大家了解以下一些Spark基本开发原则,包括:RDD lineage设计、算子的合理使用、特殊操作的优化等。在开发过程中,时时刻刻都应该注意以上原则,…
-
Spark性能调优01-资源调优
1. 概述 在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。 资源参数设置的不合理,可能会导致…