分布式是大型架构的基石,下面我重点详解分布式存储架构@mikechen
分布式存储架构
分布式存储,是将数据分布存放在多台服务器上的存储系统,用户访问时通过统一的接口感知为一个整体。
分布式存储架构,数据被分割成多个块或对象。
然后根据一定的策略(如哈希、范围、目录等),分散存储在集群中的不同节点上。
然后,通过数据冗余、和复制技术(如副本、纠删码),即使部分节点或设备发生故障,系统也能保证数据的完整性。
分布式文件存储
分布式存储架构,可以被归纳为四种主要的模式,每种模式都有其独特的技术特点和应用场景。
首先第一个,就是:分布式文件存储架构,提供文件系统接口。
用于大规模并行计算、媒体处理与共享文件系统需求。
常用于 Hadoop/HDFS、科研计算、NFS 替代方案等场景。
将数据分成块(block 或 chunk)并分布在数据节点上,元数据管理(文件目录、块位置)是核心。
元数据通常由单一或分布式元数据服务管理(如 HDFS 的 NameNode、CephFS 的 MDS)。
支持大文件顺序读写以及并行读,某些系统支持并发写入。
应用于:大数据分析(Hadoop、Spark)、AI/机器学习训练样本存储。。,等场景。
分布式对象存储
数据以“对象”为单位,通常包含对象数据 + 可扩展的用户自定义元数据。
对象通过唯一键(如 URL、对象 ID)访问,接口多为 HTTP/REST(S3 API 已成事实标准)。
典型的实现,包含:Amazon S3(业界标杆)、Ceph Object(RGW)。
常用场景:静态媒体文件、备份归档、日志与大数据湖、云原生存储(如 Kubernetes 的对象存储插件)。
分布式块存储
数据被切分为固定大小的块(Block),分布在多个节点上。
对外表现为“虚拟磁盘”,文件系统由上层 OS 自己管理。
低延迟、随机访问性能好;兼容现有应用(通过文件系统)
支持快照、克隆、容灾复制
但是,横向扩展能力由后端实现复杂度决定,扩容/迁移比对象存储更复杂。
分布式键值存储
以 Key-Value 或表格结构 形式存储和访问数据。
数据通过键直接定位;水平扩展通过分片(sharding)实现,通常采用一致性哈希或范围分片。
核心目标:高扩展性 + 高并发读写 + 高可用。
不仅存储原始数据,还提供部分数据库语义。
典型系统:BigTable(Google)、HBase(Hadoop 生态)。。。等等。