设置Hadoop各个应用的内存

2019-03-28 14:12|来源: 网络

NameNode、Jobtracker、Datanode、Tasktracker设置

conf/Hadoop-env.sh

修改HADOOP_HEAPSIZE值,默认为1000MB,标题中四个应用将使用相同的配置。如果希望每个应用不一样,可以修改"conf/hadoop-env.sh"中"HADOOP_XXX_OPTS",举例比如希望修改NN的Head Size最大值,通过如下语句:

export HADOOP_NAMENODE_OPTS="-Xmx15360m -Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"

Map Task 、 Reduce Task设置

conf/mapred-site.xml

  1. <property>  
  2.   <name>mapred.child.java.opts</name>  
  3.   <value>-Xmx2048m</value>  
  4. </property>  

相关问答

更多
  • 桌面→我的电脑,属性→高级选项→性能设置→高级框→虚拟内存更改。虚拟内存一般更改为物理内存(内存条)大小的2倍 。
  • 进入bios 点选advanced项,进入选Chipset Configuration项点击,进入NorthBridge Configuration项,选Internal Graphics Configuration项点击,进入Internal Graphics Mode,该项有四个选项:选择 Disable 模式,可关闭主板集成显卡输出,此模式需使用外置显卡输出;选择 UMA模式,仅使用主板集成显卡芯片输出,此时板载显存不起作用,显示芯片从内存调用共用显存;选择 SIDEPORT 模式,仅使用板载显存工作 ...
  • 因为我们知道Yarn是治理hadoop生态系统资源的新架构。 yarn.nodemanager.vmem-pmem-ratio属性:是定义虚拟内存与可用物理内存的比率,这里是2.1表示虚拟内存将是物理内存大小的两倍。 yarn.app.mapreduce.am.command-opts:在纱线中ApplicationMaster(AM)负责保护必要的资源。 所以这个属性定义了运行AM本身需要多少内存。 不要将此与将执行作业的nodemanager混淆。 yarn.app.mapreduce.am.resou ...
  • 您可以通过编辑conf / mapred-site.xml文件并添加属性来分配更多内存: mapred.child.java.opts -Xmx1024m 这将启动具有更多堆空间的hadoop JVM。 You can assign more memory by editing the conf/mapred-site.xml file and adding the propert ...
  • 使用CDH4 ..它是免费的,附带一本很棒的安全指南(CDH4安全指南)。 Use CDH4.. it's free and comes with a great Security guide (CDH4 Security Guide).
  • 使用ArrayList而不是LinkedList,它将使用更少的内存。 另外我建议使用HashMap而不是Hastable,因为后者是遗留类。 Use an ArrayList instead of a LinkedList and it will use a lot less memory. Also I suggest using a HashMap instead of Hastable as the later is a legacy class.
  • 将tasktracker内存减少到256M并将任务分析器的数量限制为每个节点1个,更高的任何内容都会导致子级错误并花费更多时间来运行mapreduce作业。 reduced tasktracker memory to 256M and limited the number of tasktrackers to 1 per node, anything higher causes child errors and takes more time for mapreduce job to run.
  • 您需要考虑的几点: 你真的在Hadoop或其本地模式下运行代码吗? (看看你的工作是否在jobtracker和tasktracker上看到) 您是否在环境中导出了HADOOP变量? 群集是单个节点还是多个节点? 即使群集是多个节点,所有节点都健康吗? 其他节点有问题吗? 你正确使用setNumReduceTasks吗? 您可以通过删除详细信息(仅用于调试)将代码缩减为小型map-reduce代码。 运行。 走着瞧吧。 面对同样的问题,请在原始问题中提供简化代码。 Few points that you ne ...
  • “超出GC开销限制”可能意味着正在创建许多短期对象,超过GC可以处理而不会消耗超过总时间的98%。 请参阅此问题 ,了解如何使用JProfiler查找有问题的类和分配点。 免责声明:我公司开发JProfiler。 "GC overhead limit exceeded" probably means that a lot of short-lived objects are being created, more than the GC can handle without consuming more t ...