首页 理论教育HDFS守护神进程:分布式数据库技术

HDFS守护神进程:分布式数据库技术

【摘要】:就像操作系统中有守护神进程一样,HDFS系统中也有守护神进程。NameNode的功能是维护HDFS名字空间的元数据,包括文件名、目录名、文件许可、目录许可、文件等。NameNode也保持一个对HDFS名字空间修改操作的事务的编辑日志,存放在本地文件系统名为Edit Log的文件里,记录创建文件、删除文件和创建块副本的信息。数据分成以块为单位,默认值往往取128 MB。

就像操作系统中有守护神进程一样,HDFS系统中也有守护神进程。

HDFS系统中的守护神进程(HDFS daemons)有NameNode、Secondary NameNode和Data Node等。

1.NameNode

NameNode是HDFS里的主守护神(master daemon)。NameNode的功能是维护HDFS名字空间的元数据,包括文件名、目录名、文件许可、目录许可、文件(块映射、块标识和RAM中的块定位)等。为了快速访问,元数据放在RAM里。NameNode将元数据信息存储在本地文件系统的一个名为fsimage的文件里。NameNode也保持一个对HDFS名字空间修改操作的事务的编辑日志,存放在本地文件系统名为Edit Log的文件里,记录创建文件、删除文件和创建块副本的信息。

为了避免出现NameNode单点故障(single point of failure,SPOF)问题,提高可用性,还会使用辅助NameNode,即Secondary Name Node。(https://www.chuimin.cn)

2.DataNodes

DataNode是从守护神(slave daemon),负责存放HDFS数据。数据分成以块为单位,默认值往往取128 MB。

DataNode会周期性地和Name Node通信(默认周期值为3秒),提供块报告。在块报告里,DataNode报告它有哪些块副本、哪些块损坏了。需要时,可以让NameNode更新元数据,DataNode负责存储管理用户数据。