分布式是大型架构的基石,下面我重点详解分布式文件存储方案@mikechen
HDFS
HDFS 是 “Apache Hadoop ”框架的核心组件,由 Google File System(GFS)启发而来,专为海量数据存储和批量处理设计。
它采用主从架构(Master-Slave),以块(Block)为单位存储文件,默认块大小为 128MB 或 256MB。

NameNode(主节点):负责管理文件系统的元数据(如文件目录、权限和块位置),是系统的控制中心。
优点:与 Hadoop 生态深度集成,读/写吞吐高、实现简单、社区成熟;对顺序读写优化良好。
缺点:对小文件和随机读写支持较差;单点元数据瓶颈(传统 NameNode);扩展性受限于元数据管理方式。
应用场景:批量数据处理、离线分析、日志存储、数据仓库等大数据场景。
CephFS
基于 RADOS 对象存储构建的分布式文件系统,去中心化的 CRUSH 算法管理数据分布,元数据可通过多元数据服务器(MDS)扩展。

优点:高可用、强一致或最终一致策略灵活、良好扩展性与负载均衡、支持对象、块与文件接口统一访问。
缺点:部署与运维复杂度较高;调优与故障排查需要深入理解内部机制;对小规模集群启动成本较大。
应用场景:需要统一对象/块/文件存储、云平台后端、虚拟机镜像存储、大规模并发访问场景。
GFS
Google 提出用于大规模数据处理的系统,采用主控(Master)+副本存储(Chunkservers)架构。
设计针对高吞吐、容错和组件故障频繁发生的环境。

优点:针对大文件与批处理优化,具备容错与自动恢复机制;设计思想推动了后续系统(如 HDFS)。
缺点:原始 GFS 非开源且依赖 Google 内部生态,元数据集中存在瓶颈;不擅长低延迟小文件操作。
应用场景:内部大规模数据处理平台、搜索索引与批量计算(其设计理念适用于类似场景)。
TFS
TFS(Taobao File System),通常为面向大规模互联网服务定制的分布式文件/对象存储。
结合对象存储、分布式元数据和业务感知的优化。

优点:针对业务场景高度优化(性能、成本、可靠性权衡);常集成冷热分层、跨机房复制和接入兼容性策略。
缺点:多为内部定制实现,通用文档与社区支持有限;移植性或通用性较弱,外部使用受限。
应用场景:大型互联网公司内容管理、图片/媒体存储、在线服务文件分发与业务特定需求场景。
mikechen睿哥
10年+大厂架构经验,大厂面试官,就职于阿里、淘宝等一线大厂,操盘多个亿级数据量大厂核心项目。