DataNode端Block状态

五大状态:FINALIZED、RWB、RWR、RUR、TEMPORARAY
DN存储Block有三个子目录:current、tmp、rbw。
current存储finalized状态Block。
tmp存储temporary状态Block。
rbw存储rbw、rur、rwr状态Block。

FINALIZED

RWB

Replica Being Written to缩写。
正在被写,此状态可以读。

RWR

Replica Waiting to be Recovered缩写。
RWB状态DN挂掉或重启,RWB状态会变成RWR。

RUR

Replica Under Recovery缩写。

TEMPORARAY

块复制或做均衡时创建的临时快。创建失败或DN重启此状态的副本会删除。

NameNode端Block状态

与Yarn不同,并没有直接用状态机来管理Block,而是将不同状态的Block存储在不同的缓冲区中,状态迁移则对应数据块在不同缓冲区中的移动。
四大状态:UnderConstruction、UnderRecovery、Committed、Complete。

UnderConstruction(构建中)

Block被创建和追加(Append)时,处于此状态。

UnderRecovery(还原中)

UnderConstruction超时处于此状态。

Committed(已提交)

Complete(已完成)