spark调优汇总(spark调优最佳配置)

技术如何理解spark调优中的高层通用调优如何理解spark调优中的高层通用调优,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一,并行度集群

对于如何理解spark调优中的高级通用调优,很多新手都不是很清楚。为了帮助大家解决这个问题,下面小编就详细讲解一下。需要的人可以从中学习,希望你能有所收获。

一,并行度

除非您将每个操作的并行度设置得足够高,否则集群不会得到充分利用。Spark会根据文件大小自动设置地图数量,是否可以分割(输入格式后面会详细说明,各种输入地图数量的确定会详细说明)。对于分布式reduce操作,如groupbykey和reducebykey,默认情况下,它使用分区数量最多的父RDD的分区数量来确定reduce的数量。您也可以通过设置spark.default.parallelism来更改默认值。建议的值是每个CPU执行2-3个任务。

二,Reduce任务的内存使用

有时候,内存溢出不是因为你的RDD不适合内存,而是因为你的一个任务的工作集太大了。例如,使用groupbykey时,缩减任务数据集太大。Spark的shuffle操作(按键排序、按键分组、按键减少、连接等)将构建一个哈希表,每个任务将执行一个分组的数据,这个数据通常非常大。最简单的改进方法是增加并行性,使每个任务的输入变小。Spark可以高效地支持短至200毫秒的任务,因为Executor的JVM被重用,可以降低启动成本,所以可以安全地增加并行度,超过你的集群核心数量。

三,广播变量

使用spark的广播功能可以大大减少每个序列化任务的大小以及在集群中执行作业的成本。如果您在任务中使用大型对象,例如静态表,请考虑将其声明为广播变量。在驱动程序节点,spark会打印出每个任务的序列化大小,这样你就可以通过查看任务的大小来判断你的任务是否过大。通常,如果任务的大小超过20KB,就值得调优。

如何理解spark调优中的高层通用调优

四,数据本地性

数据的位置可能会对Spark作业产生重大影响。如果数据和对其进行操作的代码在一起,计算通常会很快。但是如果代码和数据分离,其中一个必须移动。通常,序列化的代码会移动到数据所在的位置,因为数据通常比代码大得多。Spark构建调度计划的原则是数据局部性。

局部性是数据离处理它的代码有多远。根据数据和代码的当前位置,数据局部性级别。从最近到最远的顺序如下:

1,PROCESS_LOCAL

并且数据和代码在同一个JVM中,这是最好的数据局部性。

2,NODE_LOCAL

数据和代码在同一个节点。例如,数据位于同一节点的HDFS或统一节点的执行器上。因为数据必须在多个进程之间移动,所以它比PROCESS_LOCAL稍慢。

3,NO_PREF

数据可以在没有数据局部性的情况下从任何地方快速访问。

4,RACK_LOCAL

数据和代码在同一个机架上。数据位于同一机架中的不同服务器上,因此需要通过网络发送,通常是通过单个交换机。

5,ANY

数据在网络的其他地方,而不是在同一个机架中。

Spark倾向于根据最高的数据局部性来安排任务,但这通常是不可能的。当任何空闲执行器上没有未处理的数据时,Spark将切换到较低的数据局部性。在这种情况下,有两种选择:

1)、等待CPU空闲,然后在同一台服务器上启动任务。

2)、在数据需要迁移的较远的地方立即开始新的任务。

Spark典型的处理策略是等待繁忙的CPU释放,时间很短。一旦超时发生,数据将被移动到空闲的中央处理器来执行任务。每个级别之间的回退等待超时可以单独配置,也可以全部在一个参数中配置。如果任务很长并且数据局部性很差,可以适当调整与Spark.locatity超时相关的配置。具体配置如下:

属性

系统默认值

意义

火花。地点。等等

3s

超时,放弃等待数据局部性较低的新任务。

spark . location . wait . node

火花。地点。等等

节点本地等待超时

spark . location . wait . process

火花。地点。等等

进程本地等待超时

spark . location .等等. rack

火花。地点。等等

机架本地等待超时

主要调音是序列化和内存调优.

阅读以上内容对你有帮助吗?如果您想了解更多相关知识或阅读更多相关文章,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149257.html

(0)

相关推荐

  • 苏轼的古诗有哪些,苏轼写的诗有哪些,古诗三百首

    技术苏轼的古诗有哪些,苏轼写的诗有哪些,古诗三百首1、 《题西林壁》 宋代:苏轼 横看成岭侧成峰苏轼的古诗有哪些,远近高低各不同。 不识庐山真面目,只缘身在此山中。 2、 《饮湖上初晴后雨二首》 宋代:苏轼 水光潋滟晴方

    生活 2021年10月29日
  • Linux中系统命令有哪些

    技术Linux中系统命令有哪些小编给大家分享一下Linux中系统命令有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!ps查看系统中进程状态

    攻略 2021年11月20日
  • 锐角三角形三边关系,三角形对边与对角的关系

    技术锐角三角形三边关系,三角形对边与对角的关系1)三角形三内角和等于180°,这个定理的证明方法有很多种,(即辅助线的做法,)体现了几何中的一题多解的思维方法,这也是几何与众不同都地方.(2)三角形的一个外角等于和它不相

    生活 2021年10月20日
  • 怎么使用Web3.js API 在页面中进行转账

    技术怎么使用Web3.js API 在页面中进行转账这期内容当中小编将会给大家带来有关怎么使用Web3.js API 在页面中进行转账,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。如何

    攻略 2021年11月2日
  • 竖心旁一个军念什么,“占”字右边加个竖弯钩念什么

    技术竖心旁一个军念什么,“占”字右边加个竖弯钩念什么读音:jī
    结构:左右结构
    释义:
    占卜问疑:扶~(一种迷信活动竖心旁一个军念什么。亦称“扶箕”)。 详细释义:
    词动:
    通过占卜问吉凶。
    堂上设了乩坛。—

    生活 2021年10月23日
  • 深的英文,深度的英语翻译深度用英语怎么说

    技术深的英文,深度的英语翻译深度用英语怎么说(深浅程度) degree of depth; depth:河水的深度the depth of the river;通过疏浚保持河道的深度深的英文。The depth of t

    生活 2021年10月20日