Linux中Hadoop通过分布式文件系统(HDFS)存储数据,核心机制如下:
- 架构组件:
- NameNode:管理元数据(文件目录、块位置等),不存储实际数据。
- DataNode:存储数据块,执行读写操作,定期向NameNode汇报状态。
- Secondary NameNode:辅助合并元数据,非热备节点。
- 数据存储流程:
- 分块:文件按固定大小(默认128MB,可配置)切分为数据块。
- 副本存储:每个数据块默认生成3个副本,分散存储在不同DataNode上,保障容错性。
- 元数据管理:NameNode记录文件与数据块的映射关系,客户端通过NameNode获取块位置。
- 读写机制:
- 写入:客户端上传文件时,NameNode分配DataNode存储块,DataNode确认后返回结果。
- 读取:客户端根据NameNode提供的块位置信息,直接从DataNode读取数据。
- 关键特性:
- 高容错:通过副本机制自动恢复故障节点的数据。
- 高吞吐:适合大规模数据批量处理,支持并行读写。
- 扩展性:可通过增加DataNode节点线性扩展存储容量。
引用标注: