在Hadoop分布式文件系统(HDFS)中,DataNode 是工作节点(Slave/Worker node),而 NameNode 是管理节点(Master node)。如果说 NameNode 是 HDFS 的“大脑”(负责管理目录和元数据),那么 DataNode 就是 HDFS 的“手脚”和“仓库”。 DataNode 的主要职责可以归结为以下几个核心方面: 1. 实际数据的存储(Data Storage) 存储数据块(Block): HDFS 会将大文件切割成固定大小的“数据块”(默认通常是 128MB)。DataNode 的最基本职责就是将这些数据块以文件的形式存储在它所在服务器的本地文件系统(如 ext4, xfs)中。 存储元数据: 除了实际的数据文件,DataNode 还会为每个数据块存储一个关联的元数据文件,其中包含数据块的长度、校验和(Checksum)以及生成时间戳等信息。 2. 处理客户端的读写请求(Client I/O) 直接数据传输: 客户端在读写文件时,会先访问 NameNode 获取数据块所在的 DataNode 地址。拿到地址后,客户端会直接与...