spark硬件推荐配置(spark调优最佳配置)

技术Spark调优之硬件要求有哪些这篇文章将为大家详细讲解有关Spark调优之硬件要求有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一,存储系统因为因为大多数Spark工作可能需

本文将详细解释Spark调优的硬件要求。边肖觉得挺实用的,就分享给大家参考。希望你看完这篇文章能有所收获。

一,存储系统

因为大多数Spark作业可能需要从外部存储系统(如Hadoop文件系统或HBase)读取输入数据,所以尽可能靠近系统非常重要。因此,有以下建议:

1、如果可能,在与HDFS相同的节点上运行Spark。最简单的方法就是在同一个节点上安装spark的Standalone集群和hadoop集群,配置Spark和hadoop的内存使用,避免相互干扰(对于hadoop,每个任务的内存配置参数为mapred . child . Java . opts;MapReduce . task tracker . map . task . max和MapReduce . task tracker . reduce . tasks . max决定任务数)。Hadoop和spark也可以在一个通用的集群管理器上运行,比如mesos和yarn。

2.如果不可能,请在与HDFS相同的局域网中的不同节点上运行Spark。

3.对于低延迟的数据存储(如HBase),可以优先在不同于存储系统的节点上运行计算任务,以避免干扰。

二,本地磁盘

虽然Spark可以在内存中执行大量计算,但它仍然使用本地磁盘来存储不适合RAM的数据,以及阶段之间的中间结果,即shuffle。我们建议每个节点至少有4-8个磁盘,不需要RAID,只需要独立的磁盘挂在节点上即可。在Linux中,安装带有noatime选项的磁盘,以减少不必要的写入。在spark任务中,spark.local.dir可以配置十多个磁盘目录,用逗号分隔。如果你在hdfs上运行,最好与hdfs保持一致。

安装带有noatime选项的磁盘需要在装载文件系统时指定标准Linux安装选项(noatime),这将禁用文件系统上的atime更新。磁盘挂起命令:

装载点-无时间

BlockDevice指定GFS文件系统所在的数据块设备。

Mount指定应该安装GFS文件系统的目录。

示例:

mount-t GFS/dev/vg01/lvol0/GFS 1-o noa time

三,内存

单机内存从8GB到几百GB不等,spark可以很好的运行。在所有情况下,我们建议最多只为Spark分配75%的内存;保留操作系统和缓冲区缓存的其余部分。

你需要多少内存取决于你的应用。为了确定应用程序的特定数据集需要多少内存,请将一些数据集加载到内存中,然后在火花用户界面的存储界面中检查其内存使用情况。

请注意,内存使用受存储级别和序列化格式的影响很大-有关如何减少内存使用的提示,请参见另一篇调优文章。

最后,请注意,对于内存超过200GB的机器,JAVA虚拟机的运行状态并不总是表现良好。如果您购买的机器的内存超过200GB,您可以在一个节点上运行多个worker。在Spark Standalone模式下,可以在配置文件conf/spark-env.sh中设置SPARK_WORKER_INSTANCES的值,以设置单节点工作人员的数量。您也可以设置SPARK_WORKER_CORES参数来设置每个工作者的CPU数量。

四,网络

根据以往的经验,如果数据在内存中,spark应用的瓶颈往往在于网络。使用10gb或更高的网络是让spark应用程序运行得越来越快的最佳方式。尤其是对于“分布式归约”应用程序,如group-by、reduce-by和sql联接,这一点更为明显。在任何给定的应用程序中,您都可以通过spark ui检查spark shuffle进程通过网络传输了多少数据。

五,cpu

即使每台机器有几十个CPU,spark也可以很好地扩展,因为它执行线程中最小的共享CPU。您应该为每台机器配置至少8-16个内核。取决于cpu负载,可能需要更多的cpu:一旦数据在内存中,大多数应用程序的瓶颈就在于CPU和内存。

我希望这篇关于“Spark调优的硬件要求是什么”的文章能在这里分享。

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

(0)

相关推荐

  • html网页自动跳转属性指的是什么意思

    技术html网页自动跳转属性指的是什么意思这篇文章主要介绍了html网页自动跳转属性指的是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    攻略 2021年11月17日
  • 泰铢兑人民币,10万泰铢等于多少人民币

    技术泰铢兑人民币,10万泰铢等于多少人民币100000泰铢=17900人民币货币兑换1泰铢=0.179人民币元1人民币元=5.5871泰铢泰铢(ISO4217码泰铢兑人民币:THB)是泰国官方货币,由泰中央银行泰国银行发

    生活 2021年10月29日
  • SAP C4C url Mashup的跳转工作原理是什么

    技术SAP C4C url Mashup的跳转工作原理是什么这篇文章给大家介绍SAP C4C url Mashup的跳转工作原理是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一个例子:我在Sa

    攻略 2021年12月3日
  • Swift常量的示例分析

    技术Swift常量的示例分析这篇文章给大家分享的是有关Swift常量的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Swift 是一种支持多编程范式和编译式的开源编程语言,苹果于201

    攻略 2021年11月8日
  • c++编译器(c++用什么软件编程)

    技术C++ OpenCV如何模拟实现微信跳一跳小编给大家分享一下C++ OpenCV如何模拟实现微信跳一跳,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!实机演示Gif:思路:获取小黑人的位置,获得目标方

    2021年12月17日
  • git hub最好的java项目(github 开源cms)

    技术如何在Gihub上面精准搜索开源项目这篇文章给大家介绍如何在Gihub上面精准搜索开源项目,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。开源项目的组成部分在讲清楚之前呢,我们先来了解一下一个开源

    攻略 2021年12月22日