zoukankan      html  css  js  c++  java
  • Error: java.io.IOException: org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block

    在Hive命令行执行查询时,出现错误

    Error: java.io.IOException: org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block: BP-787476470-192.168.152.10-1573351961380:blk_1073742171_1347 file=/user/hive/warehouse/db_hive.db/emp/emp.txt (state=,code=0)
    根据信息得知是无法找到数据块,登陆webUI监控界面,master:50070,发现只有一个DataNode slave2, slave1没有启动。

    cd到slave1的sbin/目录下,手动启动DataNode,刷新监控界面,slave1的datanode已经启动了,Hive查询也不再报错。

    [root@slave1 sbin]# ./hadoop-daemon.sh start datanode

    在HDFS中,提供了fsck命令,用于检查HDFS上文件和目录的健康状态、获取文件的block信息和位置信息等。
    fsck命令必须由HDFS超级用户来执行,普通用户无权限。

    查看文件中损坏的块(-list-corruptfileblocks)
    [root@master sbin]$ hdfs fsck / -list-corruptfileblocks

    将损坏的文件移动至/lost+found目录(-move)
    [root@master sbin]$ hdfs fsck / -move

    删除损坏的文件(-delete)
    [root@master sbin]$ hdfs fsck / -delete

    检查并列出所有文件状态(-files)
    [root@master sbin]$ hdfs fsck / -files

    查看dfs块的报告

    [root@master sbin]$ hdfs dfsadmin -report

  • 相关阅读:
    JavaScript学习总结(八)——JavaScript数组
    oracle数据库优化学习笔记
    把连续日期组织起来的算法
    转:andriod的盈利模式分析
    ASP.NET 页生命周期
    .NET垃圾回收机制[引用]
    IIS 7.0 的 ASP.NET 应用程序生命周期
    table滑动选择行及从表记录对应js代码
    hdu 3594 Cactus
    Java 计算器
  • 原文地址:https://www.cnblogs.com/lucas-zhao/p/11898320.html
Copyright © 2011-2022 走看看