存储系统
Spark任务需要从一些外部的存储系统加载数据(如:HDFS 或者 HBase),重要的是存储系统要接近Spark系统,我们有如下推荐:
 
(1)如果可能,运行Spark在相同的HDFS节点,最简单的方法是建立一个引发相同的节点上的集群独立模式(http://spark.apache.org/docs/latest/spark-standalone.html),和配置Spark的Configure和Hadoop的内存和CPU使用避免干扰(对于Hadoop,) 或者 你能够运行Hadoop和Spark在一个相同的cluster manager 像 Mesos或者Hadoop YARN
(2)如果能,运行Spark在不同的节点上,需要使用相同局域网内部的HDFS节点。
(3)对于低延迟数据存储如同HBase,使用不同的节点上的数据比使用本地存储系统数据 干扰更小(但是HBase存储比本地存储避免干扰性方面表现的更好)
 
本地硬盘
虽然Spark能够在内存中执行大量的计算,它仍然需要本地硬盘作为数据的存储,不适合把数据存储在RAM中,以及保护中间的输出阶段,我们推荐每个节点有4-8个硬盘,没有配置RAID(就如同不同的挂载点) 在Linux中挂载硬盘 使用noatime option(http://www.centos.org/docs/5/html/Global_File_System/s2-manage-mountnoatime.html) 减少不必要的写操作,在Spark里面,配置 
spark.local.dir 变量以一个","号隔开(http://spark.apache.org/docs/latest/configuration.html),如果你正在运行着HDFS,它正好和HDFS放在一个相同的硬盘上。
 
内存
一般而言,Spark能够运行在任意的 8G to hundreds of gigabytes 的内存的机器上,所有情况下,我们推荐最多给Spark配置 75%的内存容量,其他的容量是系统和buffer缓存使用。
你的内存需要多大是依靠你的Application决定的,确定你的应用使用多少内存特定大小,你需要加载一部分特定的数据到Spark RDD 并使用 UI的存储选项卡(http://<driver-node>:4040)观测内存使用量。注意,内存使用量大大影响存储水平和序列化格式,看调度指南如何优化(http://spark.apache.org/docs/latest/tuning.html)。
最后,注意,Java VM在超过200 GB的RAM上并不总是表现良好。如果你这这样的RAM机器,你可以在上面多跑几个Worker,在Spark的独立模式中,你能够在每个节点上设置多个Workers ,设置 conf/spark-env.sh 中的SPARK_WORKER_INSTANCES变量,并且设置SPARK_WORKER_CORES 的核数
 
网络
 
根据经验,当数据在内存中, 使用万兆网卡程序将运行的更快,特别是“distributed reduce” application 例如 group-bys 减少,reduce-bys 和SQL的join ,在一个任何给定的application ,你能够通过UI查看Spark的shuffles的过程及多大的数据执行shuffles。
 
 
CPU 核数
 
Spark 每个每个集群要启动成千上万的线程,每个集群的核数至少是8-16 核。你的工作的负载是依靠CPU ,你也需要更多的:一旦数据在内存中,更多应用取决CPU或者带宽

【Spark】---- Spark 硬件配置的更多相关文章

  1. 【Spark学习】Apache Spark集群硬件配置要求

    Spark版本:1.1.1 本文系从官方文档翻译而来,转载请尊重译者的工作,注明以下链接: http://www.cnblogs.com/zhangningbo/p/4135912.html 目录 存 ...

  2. 对Spark硬件配置的建议

    对于Spark开发人员来说,一个比较普遍的问题就是如何合理的配置Spark的硬件?当然如何合理的对Spark集群进行硬件配置要视情况而定,在这里给出以下建议: 存储系统 在大数据领域,有一句" ...

  3. Project Tungsten:让Spark将硬件性能压榨到极限(转载)

    在之前的博文中,我们回顾和总结了2014年Spark在性能提升上所做的努力.本篇博文中,我们将为你介绍性能提升的下一阶段——Tungsten.在2014年,我们目睹了Spark缔造大规模排序的新世界纪 ...

  4. Windows下Spark单机环境配置

    1. 环境配置 a)  java环境配置: JDK版本为1.7,64位: 环境变量配置如下: JAVA_HOME为JDK安装路径,例如D:\software\workSoftware\JAVA 在pa ...

  5. spark HA 安装配置和使用(spark1.2-cdh5.3)

    安装环境如下: 操作系统:CentOs 6.6 Hadoop 版本:CDH-5.3.0 Spark 版本:1.2 集群5个节点 node01~05 node01~03 为worker. node04. ...

  6. windows下spark开发环境配置

    http://www.cnblogs.com/davidwang456/p/5032766.html windows下spark开发环境配置 --本篇随笔由同事葛同学提供. windows下spark ...

  7. Spark log4j日志配置详解(转载)

    一.spark job日志介绍    spark中提供了log4j的方式记录日志.可以在$SPARK_HOME/conf/下,将 log4j.properties.template 文件copy为 l ...

  8. spark集群配置以及java操作spark小demo

    spark 安装 配置 使用java来操作spark spark 安装 tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz rm spark-2.4.0-bin-hadoo ...

  9. SparkR 读取数据& Spark运行的配置

    1.本地LOCAL环境安装Spark并试运行配置(在Ubuntu系统下例子) # 打开文件配置环境变量: JAVA,SCALA,SPARK,HADOOP,SBT gedit /etc/profile ...

随机推荐

  1. DataTable 排序

    DataTable newdtb = new DataTable(); newdtb.Columns.Add("Id", typeof(int)); newdtb.Columns. ...

  2. 纯CSS实现图片抖动

    实现方法: 1.将上文提到的以下JS内容删除: $(".imagelogo").mouseover(function() { obj = $(this); i = 5; timer ...

  3. Oracle中group by用法

    Oracle中group by用法 在select 语句中可以使用group by 子句将行划分成较小的组,一旦使用分组后select操作的对象变为各个分组后的数据,使用聚组函数返回的是每一个组的汇总 ...

  4. elasticsearch-cn-out-of-box

    elasticsearch-cn-out-of-box https://github.com/hangxin1940/elasticsearch-cn-out-of-box 为elasticsearc ...

  5. java web项目启动时自动加载自定义properties文件

    首先创建一个类 public class ContextInitListener implements ServletContextListener 使得该类成为一个监听器.用于监听整个容器生命周期的 ...

  6. Git + BeyondCompare

    Mac 环境: 1. 安装 BeyondCompare 2. 配置 ~/.gitconfig [diff] tool = bcomp [merge] tool = bcomp [difftool &q ...

  7. Mac mongodb 配置安装

    简单总结就几条,比较简单配置mongodb. 1,首先下载安装包:百度云下载地址 2,下载之后解压到自己常放的工作目录下,然后开始配置一下你的Mac环境 vim ~/.bash_profile 添加m ...

  8. 全渠道后端 : RFID在仓储物流中的运用

    核心提示 沃尔玛的业务之所以能够迅速增长,并且成为现在非常著名的公司之一,是因为沃尔玛在节省成本以及在物流配送系统与供应链管理方面取得了巨大的成就. 最后为一个业务展望,从B端工厂提货 到C端交付的系 ...

  9. node递归属性目录结构

    要求,读取结束后才能输出所有文件 var fs = require('fs');var path = require('path'); var list = [];var count = 0;func ...

  10. 【Xamarin报错】 COMPILETODALVIK : UNEXPECTED TOP-LEVEL error java.lang.OutOfMemoryError: Java heap space

    Xamarin Android 编译报错: COMPILETODALVIK : UNEXPECTED TOP-LEVEL error java.lang.OutOfMemoryError: Java ...