【分布式存储】五大主流分布式存储技术对比分析

ceph,GFS,HDFS,Swift,lustre

https://mlog.club/article/22138

1,Ceph

应用最广泛的开源分布式存储平台

不存在单点故障

对象存储,文件存储,块存储

随着规模的扩大,性能不受影响

数据有强一致性,保证写完副本之后才返回。

去中心化,没有中心节点。

缺点:

  • 去中心化的方案,对技术团队要求较高
  • Ceph扩容是,由于数据平均分布,会导致存储性能下降

## GFS

GFS是谷歌分布式文件存储系统,专门为大数据搜索设计。 闭源i系统 适用于大量顺序读取和顺序追加,例如大文件读写。特别是GB级别。 注重大文件读写的稳定性,而不是延时。

中心化架构,只有一个master是active状态。

1.GFS的主要架构

GFS 架构比较简单,一个 GFS 集群一般由一个 master 、多个 chunkserver 和多个 clients 组成。

在 GFS 中,所有文件被切分成若干个 chunk,每个 chunk 拥有唯一不变的标识(在 chunk 创建时,由 master 负责分配),所有 chunk 都实际存储在 chunkserver 的磁盘上。

为了容灾,每个 chunk 都会被复制到多个 chunkserve

HDFS

是GFS的简化版本。所以,也适合大文件。

分块更大,默认128M 不支持并发,同一时刻只允许一个写入者 过程一致性 MasterHA , 故障切换需要几分钟

使用场景:

  • 大文件,大数据处理,数据GB,TB,PB级别
  • 适合流式文件,一次写入,多次读取
  • 文件一旦写入,不能修改。

不适合的场景:

  • 低延时数据访问
  • 小文件存储
  • 并发写入、文件随机修改

Swift

Openstack下有Nova子项目,Swift是该子项目的分布式对象存储服务

所有组件都课扩展,避免单点故障。

账户,容器,对象。三层。

原生的对象存储,不支持实时文件读写 完全你对称架构,没有主节点。没有单点故障。 openstack的子项目,适合云环境的部署

Swift是最终一致性,高可用 Ceph是强一致性

## Lustre

开源。用用与超算领域

支持数万个客户端,支持PB级别,单个文件支持320TB 大文件读写分片优化 缺少副本机制,有单点故障

适合高性能计算领域,适合大文件连续读写。

## 几个技术的比较

Written on July 9, 2020