Spark硬件配置推荐

1、存储系统

  如果可以的话,把Spark的hadoop的节点安装在一起,最容易的方式是用standalone的模式安装,用mapred.child.java.opts设置每个任务的内存,用mapred.tasktracker.map.tasks.maximum和mapred.tasktracker.reduce.tasks.maximum来设置map和reduce任务的最大数来分隔来这两个集群的可利用资源,也可以考虑用YARN模式。

  如果不行,就在一个局域网里面。但是对于Hbase这样的低延迟的系统,就不要部署在同样的机器上面,避免干扰。

2、本地硬盘

  当Spark没办法把所有的内容放在内存中计算的时候,它会把部分内容存储到硬盘当中,推荐一个节点配置4-8块硬盘,不要配置RAID,仅仅是作为单独的mount点。在linux里面,用noatime选项来mount硬盘可以减少不必要的写操作。用spark.local.dir来配置本地磁盘目录,如果跑着HDFS,使用和HDFS一样的硬盘。

3、内存

  Spark最少在运行8GB以上的内存的机器上面,推荐是把最多75%的内存分配给Spark,把剩下的分配给操作系统和缓存。Java VM在超过200GB的内存的机器上面表现得并不好,如果买的机器超过这个内存,可以使用多个worker JVMs一个节点。在spark-env.sh中用SPARK_WORKER_INSTANCES设置一个节点的worker数量,用SPARK_WORKER_CORES设置每个worker多少个核心。

4、网络

  Spark是网络绑定型的系统,使用10GB以上的网络,会使程序运行得更快,尤其是一些distributed reduce的程序当中,使用了group-bys, reduce-bys, and SQL joins的操作的时候。我们可以通过http://<driver-node>:4040来查看Spark shuffles在网络当中传输的数据量。

5、CPU核心

  Spark支持扩展数十个CPU核心一个机器,它实行的是线程之间最小共享。我们需要至少使用8-16个核心的机器,当内存足够的情况之下,程序跑起来,就看CPU和网络了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值