读写:客户端经过命名空间发请求,能够无感知的找到active NN,active NN所作操做会保存在editlog文件中,并向JournalNode节点写入editlog。DN向NN发送心跳报告的时候,NN将editlog上的数据操做发送给DN实现。性能
HA:standby NN会实时从JN上读取editlog信息,进行重演,保持与active NN的数据同步。若是active NN挂掉了,ZKFC会监控到,向zk集群发送心跳报告时会将这一消息报告上去,zk集群会进行选举,被选举到的standby NN所在节点的ZKFC进程收到通知,这个ZKFC会切换NN的状态为active。spa
配置:与zk同理,JN须要配置2n+1个。
HDFS节点在20个,JN配置5个;
HDFS节点20~100个,JN配置7/9/11个;
HDFS节点100以上,JN配置11个便可。
JN配置数量应根据写请求的频繁程度而定,但并不是越多越好,太多会由于半数经过机制而致使性能降低。3d