当前位置: 首页 > 面试题库 >

Spark性能如何调优?

袁奇玮
2023-03-14
本文向大家介绍Spark性能如何调优?相关面试题,主要包含被问及Spark性能如何调优?时的应答技巧和注意事项,需要的朋友参考一下

参考回答:

避免创建重复的RDD,尽量复用同一RDD,尽量避免使用shuffle类算子,优化数据结构,使用Hive ETL预处理数据,过滤少数导致倾斜的key,提高shuffle操作的并行度,两阶段聚合,将reduce join转为map join。

 类似资料:
  • 当你开始编写Apache Spark代码或者浏览公开的API的时候,你会遇到诸如transformation,action,RDD等术语。了解到这些是编写Spark代码的基础。同样,当你任务开始失败或者你需要透过web界面去了解自己的应用为何如此费时的时候,你需要去了解一些新的名词:job, stage, task。对于这些新术语的理解有助于编写良好Spark代码。这里的良好主要指更快的Spark

  • 由于大部分Spark计算都是在内存中完成的,所以Spark程序的瓶颈可能由集群中任意一种资源导致,如:CPU、网络带宽、或者内存等。最常见的情况是,数据能装进内存,而瓶颈是网络带宽;当然,有时候我们也需要做一些优化调整来减少内存占用,例如将RDD以序列化格式保存。 本文将主要涵盖两个主题:1.数据序列化(这对于优化网络性能极为重要);2.减少内存占用以及内存调优。同时,我们也会提及其他几个比较小的

  • 由于大部分Spark计算都是在内存中完成的,所以Spark程序的瓶颈可能由集群中任意一种资源导致,如:CPU、网络带宽、或者内存等。最常见的情况是,数据能装进内存,而瓶颈是网络带宽;当然,有时候我们也需要做一些优化调整来减少内存占用。

  • 本文向大家介绍前后端性能如何调优?相关面试题,主要包含被问及前后端性能如何调优?时的应答技巧和注意事项,需要的朋友参考一下 减少http请求数 使用内容分布式网络 给头部添加一个失效期或者Cache一Control Gzip压缩组件 把样式表放在前面 把脚本放在最后 不使用CSS表达式 使用外部的JavaScript和CSS 减少DNS的查询 缩小JavaScript和CSS

  • 我们正在以下硬件上运行用JAVA编写的SPARK应用程序: 一个主节点 两个Worker节点(每个节点都有502.5 GB可用内存和88个内核(CPU))。 具有以下<代码>配置/spark submit命令: --执行器内存=30GB--驱动程序内存=20G--执行器内核=5--驱动程序内核=5 我们正在使用SPARK集群管理器。 处理1000万个数据需要13分钟。 我们无权共享应用程序代码。

  • 对于某些工作负载,可以在通过在内存中缓存数据或者打开一些实验选项来提高性能。 在内存中缓存数据 Spark SQL可以通过调用sqlContext.cacheTable("tableName")方法来缓存使用柱状格式的表。然后,Spark将会仅仅浏览需要的列并且自动地压缩数据以减少内存的使用以及垃圾回收的 压力。你可以通过调用sqlContext.uncacheTable("tableName")