LoginSignup
1
2

More than 3 years have passed since last update.

HDFSのデータブロックの場所確認方法

Last updated at Posted at 2019-09-03

Hadoopのクラスターを構成してデータを入れると、実際にはどこに入ってるのかな?と思うことがあります。

例えばレプリケーション3にしてて、3つのレプリカがあるノードを全部停止したらほんとに読み込めなくなるのかな?といった確認をしたいとき、どこにレプリカがあるのか知りたくなります。

そんな時下記のコマンドでこんなパラメーターをつければわかります。

hdfs fsck /myfile.txt -files -blocks -locations    

すでに似たようなことで悩んでる人がいるんですね。
https://community.cloudera.com/t5/Support-Questions/hdfs-file-actual-block-paths/m-p/121411

こんな実行結果がでてきます。
IPなどすべて書き換えていますんで、重要なところ以外はちょっと変なところあるかもしれません。

$ hdfs fsck /myfile.txt -files -blocks -locations
Connecting to namenode via http://namenode01:9870/fsck?files=1&blocks=1&locations=1&path=%2Fmyfile.txt
FSCK started by hdfs (auth:SIMPLE) from /11.22.33.44 for path /myfile.txt at Fri Aug 31 12:18:04 JST 2019
/myfile.txt 1468474 bytes, replicated: replication=3, 1 block(s):  OK
0. BP-119823210215-11.22.33.81-15634343520673:blk_10737324538_402314 len=1468474 Live_repl=3  [DatanodeInfoWithStorage[11.22.33.08:9866,DS-f15a6a7a-01bd-2351-ade9-92a346adbe35,DISK], DatanodeInfoWithStorage[11.22.33.12:9866,DS-6a12346b0-74a9-4ee9-a439-f1e2b015t420f,DISK], DatanodeInfoWithStorage[11.22.33.10:9866,DS-f003dc91-8d8a-4c64-ac71-03451f69f7c0,DISK]]


Status: HEALTHY
 Number of data-nodes:  10
 Number of racks:               1
 Total dirs:                    0
 Total symlinks:                0

Replicated Blocks:
 Total size:    1468474 B
 Total files:   1
 Total blocks (validated):      1 (avg. block size 1468474 B)
 Minimally replicated blocks:   1 (100.0 %)
 Over-replicated blocks:        0 (0.0 %)
 Under-replicated blocks:       0 (0.0 %)
 Mis-replicated blocks:         0 (0.0 %)
 Default replication factor:    3
 Average block replication:     3.0
 Missing blocks:                0
 Corrupt blocks:                0
 Missing replicas:              0 (0.0 %)
 Blocks queued for replication: 0

Erasure Coded Block Groups:
 Total size:    0 B
 Total files:   0
 Total block groups (validated):        0
 Minimally erasure-coded block groups:  0
 Over-erasure-coded block groups:       0
 Under-erasure-coded block groups:      0
 Unsatisfactory placement block groups: 0
 Average block group size:      0.0
 Missing block groups:          0
 Corrupt block groups:          0
 Missing internal blocks:       0
 Blocks queued for replication: 0
FSCK ended at Fri Aug 31 12:18:04 JST 2019 in 1 milliseconds

実行結果の上から4行目のここ

[DatanodeInfoWithStorage[11.22.33.08:9866,DS-f15a6a7a-01bd-2351-ade9-92a346adbe35,DISK], DatanodeInfoWithStorage[11.22.33.12:9866,DS-6a12346b0-74a9-4ee9-a439-f1e2b015t420f,DISK], DatanodeInfoWithStorage[11.22.33.10:9866,DS-f003dc91-8d8a-4c64-ac71-03451f69f7c0,DISK]] 

で実際のノードがわかります。

整形してみると

[
DatanodeInfoWithStorage[11.22.33.08:9866,DS-f15a6a7a-01bd-2351-ade9-92a346adbe35,DISK], 
DatanodeInfoWithStorage[11.22.33.12:9866,DS-6a12346b0-74a9-4ee9-a439-f1e2b015t420f,DISK], 
DatanodeInfoWithStorage[11.22.33.10:9866,DS-f003dc91-8d8a-4c64-ac71-03451f69f7c0,DISK]
] 

11.22.33.08
11.22.33.12
11.22.33.10

に保管されていることがわかりますね。

以上マイナーな情報でしたー

関係ないですが上記のコマンドでErasure Codingの情報も出てくるんですね。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2