【问题标题】:HDFS fsck command outputHDFS fsck 命令输出
【发布时间】:2016-04-02 12:16:54
【问题描述】:

我在输出中得到了这个,所以我只想知道什么是 BP,Blk?你能解释一下这个输出中每件事的含义吗?我知道

 BP-929597290-192.0.0.2-1439573305237:blk_1074084574_344316 len=2 repl=3 [DatanodeInfoWithStorage[192.0.0.9:1000,DS-730a75d3-046c-4254-990a-4eee9520424f,DISK], DatanodeInfoWithStorage[192.0.0.1:1000,DS-fc6ee5c7-e76b-4faa-b663-58a60240de4c,DISK], DatanodeInfoWithStorage[192.0.0.3:1000,DS-8ab81b26-309e-42d6-ae14-26eb88387cad,DISK]]

我猜192.0.0.9:1000这是第一次复制数据的IP

【问题讨论】:

    标签: hadoop namespaces hdfs hadoop-yarn fsck


    【解决方案1】:
    1. BP-929597290-192.0.0.2-1439573305237

      这是块池 ID。块池是一组属于单个名称空间的块。为简单起见,可以说一个 Name Node 管理的所有区块都在同一个区块池下。

      区块池形成为:

      String bpid = "BP-" + rand + "-"+ ip + "-" + Time.now();        
      
      Where: 
      rand = Some random number
      ip = IP address of the Name Node
      Time.now() - Current system time
      

      在此处了解块池:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/Federation.html

    2. blk_1074084574_344316:

      块的块号。 HDFS 中的每个块都有一个唯一的标识符。

      区块ID形成为:

      blk_<blockid>_<genstamp> 
      
      Where: 
      blockid = ID of the block
      genstamp = an incrementing integer that records the version of a particular block
      

      在此处阅读有关世代印记的信息:http://blog.cloudera.com/blog/2009/07/file-appends-in-hdfs/

    3. len=2

      块的长度:块中的字节数

    4. repl=3

      这个区块有3个副本

    5. DatanodeInfoWithStorage[192.0.0.9:1000,DS-730a75d3-046c-4254-990a-4eee9520424f,磁盘

      地点:

      192.0.0.9 => IP address of the Data Node holding this block
      1000 => Data streaming port
      DS-730a75d3-046c-4254-990a-4eee9520424f => Storage ID. It is an internal ID of the Data Node. It is assigned, when the Data Node registers with Name Node
      DISK => storageType. It is DISK here. Storage type can be: RAM_DISK, SSD, DISK and ARCHIVE
      

    第 5 点的描述适用于剩余的 2 个区块:

    DatanodeInfoWithStorage[192.0.0.1:1000,DS-fc6ee5c7-e76b-4faa-b663-58a60240de4c,DISK], 
    DatanodeInfoWithStorage[192.0.0.3:1000,DS-8ab81b26-309e-42d6-ae14-26eb88387cad,DISK]]
    

    【讨论】:

    • Manjunath 你能详细解释一下吗? 192.0.0.2-1439573305237:blk_1074084574_344316。所以BP是存储该文件的数据节点块信息的块池。 192.0.0.2是给出结果的name节点的ip,-1439573305237和:blk_1074084574_344316包含什么?
    • 我已经清楚解释了BP ID是如何形成的: String bpid = "BP-" + rand + "-"+ ip + "-" + Time.now();块池的意思是“属于同一名称节点的块池”。名称节点下的所有块都将具有相同的块池 ID。我也解释了“blk_1074084574_344316”。我希望,你阅读了整篇文章。
    • 谢谢 Manjunath,你说了他们是什么。你能告诉我他们在储存什么吗?这3个数据节点块的地址存放在BLK还是Bp?
    • 对不起。我没有得到你的问题。 BP ID 对于所有 3 个块都是通用的。每个块的信息包含在:DatanodeInfoWithStorage[]。这就是为什么您会看到 3 个 DatanodeInfoWithStorage[] 实例。
    • 我的意思是 Blk 在这里存储什么?
    猜你喜欢
    • 1970-01-01
    • 2015-04-19
    • 1970-01-01
    • 2016-03-05
    • 2017-06-14
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多