2012-06-04 44 views

回答

11

漫長而痛苦的方式,假設您已經閱讀所有的文件訪問(和執行的目錄):

hadoop fsck/-files -blocks | grep blk_520275863902385418_1002 -B 20 

然後掃描備份你的塊匹配上一個文件名:

/hadoop/mapred/system/jobtracker.info 4 bytes, 1 block(s): OK 
0. blk_520275863902385418_1002 len=4 repl=1 

在這種情況下blk_5202 ...是的一部分文件

以編程方式,這些不是名稱節點的接口,它允許您通過塊ID進行搜索,但可以查看次要名稱節點的來源並查看它如何合併編輯 - 然後試驗來自輔助名稱節點的已保存輸出(而不是在活動名稱節點文件上工作的風險)。

祝你好運!

5

不知道什麼時候這個被介紹,但你可以做到這一點

hdfs fsck -blockId <block_id> 

hdfs fsck -blockId blk_1100790203 
Connecting to namenode 
FSCK started by hdfs 

Block Id: blk_1100790203 
Block belongs to: /common/FFL1447685899336.txt