系统架构与存储机制
HDFS系统架构
HDFS是主从架构(Master/Slave),当然这也是大数据产品最常见的架构。主节点为NameNode,从节点为DataNode。其中DataNode用于存储数据,存储的数据会被拆分成Block块(默认按照128M进行切分),然后均匀的存放到各个DataNode节点中,为了保证数据安全性,这些Block块会进行多副本的存储,备份到不同的节点。而NameNode则负责管理整个集群,并且存储数据的元数据信息(记录数据被拆分为哪几块,分别存储到了哪个DataNode中)。DataNode会通过心跳机制,与NameNode进行通信(默认3秒),汇报健康状况和存储的Block数据信息,如果NameNode超过一定时间没有收到DataNode发送的心跳信息,则认为DataNode宕机,会启动容灾机制。
HDFS Client是客户端,客户端通过与NameNode进行交互,从而实现文件的读写等操作。
NameNode在没有实现高可用的时候,会存在两个角色,NameNode和Secondary NameNode,其中Secondary NameNode并不是NameNode的热备节点,它只用于辅助NameNode的工作(元数据合并),之后会详细讲到。
NameNode如果实现了高可用,则NameNode(Activ