• hadoop使用FAQ


    1.Hive任务内存溢出

    hive执行select day_id,count(1) from ti_94014_signal_physics_yyyymmddhh   group by day_id; Mapreduce报错
    报错:
     For more detailed output, check application tracking page:http://oc-data-152:8088/cluster/app/application_1467076091284_38724Then, click on links to logs of each attempt.
    Diagnostics: Container [pid=130260,containerID=container_e18_1467076091284_38724_01_000001] is running beyond physical memory limits. Current usage: 1.0 GB of 1 GB physical memory used; 1.8 GB of 2.1 GB virtual memory used. Killing container.
    Dump of the process-tree for container_e18_1467076091284_38724_01_000001 :
    |- PID PPID PGRPID SESSID CMD_NAME USER_MODE_TIME(MILLIS) SYSTEM_TIME(MILLIS) VMEM_USAGE(BYTES) RSSMEM_USAGE(PAGES) FULL_CMD_LINE
    |- 130260 130257 130260 130260 (bash) 0 0 115847168 362 /bin/bash -c /usr/jdk64/jdk1.7.0_67/bin/java -Djava.io.tmpdir=/data/data4/hadoop/yarn/local/usercache/ynhajob/appcache/application_1467076091284_38724/container_e18_1467076091284_38724_01_000001/tmp -Dlog4j.configuration=container-log4j.properties -Dyarn.app.container.log.dir=/data/data6/hadoop/yarn/log/application_1467076091284_38724/container_e18_1467076091284_38724_01_000001 -Dyarn.app.container.log.filesize=0 -Dhadoop.root.logger=INFO,CLA -Dhadoop.root.logfile=syslog -Dhdp.version=2.3.4.7-4 -Xmx819m -Dhdp.version=2.3.4.7-4 org.apache.hadoop.mapreduce.v2.app.MRAppMaster 1>/data/data6/hadoop/yarn/log/application_1467076091284_38724
     
    判断:Hive任务内存溢出
     
    修改参数:set yarn.app.mapreduce.am.resource.mb=2048;(原配置1024)
     
    set mapreduce.map.java.opts=-Xmx1638m;
    set mapreduce.map.memory.mb=2048;
    set mapreduce.job.reduce.slowstart.completedmaps=0.90  —这三个暂时不用修改,只是相关参数可以熟悉下
     
    说明:
    select day_id,count(1) from ti_94014_signal_physics_yyyymmddhh  
    insert into table tmp_liyangtest_20160828 select day_id,count(1) from ti_94014_signal_physics_yyyymmddhh group by day_id;
     
    这两个一个直接打印出结果,一个写入临时文件;insert方式并不能节约内存
    create table tmp_liyangtest_20160828 (a string,b string)
     
     

    2.执行setfacl报错

    [root@ai185 ~]# hadoop fs -setfacl -R -m user:aaa:rw- /app/aaa
    setfacl: The ACL operation has been rejected.  Support for ACLs has been disabled by setting dfs.namenode.acls.enabled to false.
     
    判断:
    设置访问控制列表,acls默认未开启,直接使用该命令会报错
     
    解决:
    开启acls,配置hdfs-site.xml
    [hadoop@localhost hadoop-2.5.2]$ vi etc/hadoop/hdfs-site.xml
    <property>
        <name>dfs.namenode.acls.enabled</name>
        <value>true</value>
    </property>
     
    重启hdfs
     

    3.dismission datanode节点很慢

     
    加以下参数:
    dfs.namenode.replication.max-streams   200
    dfs.namenode.replication.max-streams-hard-limit 400
    dfs.namenode.replication.work.multiplier.per.iteration 100
     

    4.slider 提交yarn任务失败,报failed to renew token TIMELINE_DELEGATION_TOKEN异常

    slider所在机器的timeline.enable配置改 false就成功 
     
     
  • 相关阅读:
    Java中的异常处理
    Java源码阅读Vector
    Java源码中遇到的一些问题(更新中)
    Java迭代器原理
    有趣的位运算-与或非
    有趣的位运算-移位运算
    为何要使用原码, 反码和补码?
    有趣的位运算-异或
    为什么实现Serializbale接口就能够进行序列化?
    死锁,活锁,饥饿
  • 原文地址:https://www.cnblogs.com/brownyangyang/p/9145736.html
Copyright © 2020-2023  润新知