摘要:它的核心思想是:“一次写入,多次读取”(Write Once, Read Many)。
大家好,我是mikechen。
分布式存储是大型架构必备技能,下面我全面对比主流分布式存储方案@mikechen
文章来源:mikechen.cc
HDFS
HDFS:是为大数据批处理、和数据分析而设计。
它的核心思想是:“一次写入,多次读取”(Write Once, Read Many)。
主从模式,中心是 NameNode(元数据),实际存储在 DataNode。
如下图所示:
支撑 Hadoop/Spark 等大数据计算,比如:与 Hadoop 生态系统(MapReduce, Spark, Hive, Flink 等)无缝集成。
支撑高吞吐、大文件顺序读写性能优越,适合大规模数据的顺序读写和批处理。
但是,小文件性能差,NameNode 容易成为瓶颈。
Ceph:无中心存储架构
Ceph 去中心化、无单点瓶颈,通过 CRUSH 算法进行数据分布。
核心是 RADOS ,所有 OSD (Object Storage Device) 节点对等,通过 CRUSH 算法直接计算数据位置,避免了中心化瓶颈。
如下图所示:
支持块存储、对象存储、文件存储,可与 Kubernetes 无缝集成(Rook)。
相较于 HDFS 或 FastDFS,Ceph 的部署、配置和运维复杂性更高,对运维人员的技术要求较高。
FastDFS
FastDFS 是一个轻量级、高性能的分布式文件系统,专为处理大量中小文件而优化。
FastDFS整体架构,如下图所示:
擅长处理大量中小型文件,如图片、文档、短视频…….等。
但是,不适合大文件,比如:单个文件过大可能会影响同步效率和性能。
总之,没有一个绝对的“分布式存储王者”,更准确的说法是“各在其领域称王”。
HDFS 是“大数据分析领域的王者”, 如果你的核心需求是离线大数据分析和处理 PB 甚至 EB 级的数据,HDFS 仍然是最佳选择。
Ceph 是“私有云和统一存储的开源王者”,如果你需要构建一个灵活、可扩展的私有云基础设施,可以选择 Ceph 。
如果你的业务是网站图片、短视频等大量中小文件的存储和高并发访问,追求极致的简洁和性能,FastDFS 会是不错的选择。
以上
本篇已收于mikechen原创超30万字《阿里架构师进阶专题合集》里面。
来源:JAX的科技小讯