HDFS、Ceph、GFS、GPFS、Swift、Lustre

HDFS/CEPH/GFS/GPFS/Swift这类分布式存储,按照存储的类型来区分,HDFS/GPFS/GFS属于文件存储,CEPH属于统一存储–即块/对象/文件统一体,Swift属于对象存储-目前属于OpenStack下面的一个子项目。

1)HDFS

Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的。

HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以实现流的形式访问(streaming access)文件系统中的数据。

2)GFS

GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,并提供容错功能。它可以给大量的用户提供总体性能较高的服务。

3)GPFS

GPFS(General Parallel File System ,GPFS) 是 IBM 公司第一个共享文件系统,起源于 IBM SP 系统上使用的虚拟共享磁盘技术( VSD )。作为这项技术的核心, GPFS 是一个并行的磁盘文件系统,它保证在资源组内的 所有节点可以并行访问整个文件系统;而且针对此文件系统的服务操作,可以同时安全地在 使用此文件系统的多个节点上实现。GPFS 允许客户共享文件,而这些文件可能分布在不同节点的不同硬盘上;它提供了许多标准的 UNIX 文件系统接口,允许应用不需修改或者重新编辑就可以在其上运行。

4)CEPH

Ceph是一个可靠地、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将Ceph分为三大块,分别是对象存储、块设备存储和文件系统服务。在虚拟化领域里,比较常用到的是Ceph的块设备存储,比如在OpenStack项目里,Ceph的块设备存储可以对接OpenStack的cinder后端存储、Glance的镜像存储和虚拟机的数据存储,比较直观的是Ceph集群可以提供一个raw格式的块存储来作为虚拟机实例的硬盘。

Ceph相比其它存储的优势点在于它不单单是存储,同时还充分利用了存储节点上的计算能力,在存储每一个数据时,都会通过计算得出该数据存储的位置,尽量将数据分布均衡,同时由于Ceph的良好设计,采用了CRUSH算法、HASH环等方法,使得它不存在传统的单点故障的问题,且随着规模的扩大性能并不会受到影响。

5)Swift

Swift 最初是由 Rackspace 公司开发的高可用分布式对象存储服务,并于 2010 年贡献给 OpenStack 开源社区作为其最初的核心子项目之一,为其 Nova 子项目提供虚机镜像存储服务。Swift 构筑在比较便宜的标准硬件存储基础设施之上,无需采用 RAID(磁盘冗余阵列),通过在软件层面引入一致性散列技术和数据冗余性,牺牲一定程度的数据一致性来达到高可用性和可伸缩性,支持多租户模式、容器和对象读写操作,适合解决互联网的应用场景下非结构化数据存储问题。

1)Ceph的特点

Ceph支持对象存储、块存储和文件存储服务,故称为统一存储。

采用CRUSH算法,数据分布均衡,并行度高,不需要维护固定的元数据结构。

数据具有强一致,确保所有副本写入完成才返回确认,适合读多写少场景。

去中心化,MDS之间地位相同,无固定的中心节点。
Ceph存在一些缺点:

去中心化的分布式解决方案,需要提前做好规划设计,对技术团队的要求能力比较高。

Ceph扩容时,由于其数据分布均衡的特性,会导致整个存储系统性能的下降。

2)GFS特点

适合大文件场景的应用,特别是针对GB级别的大文件,适用于数据访问延时不敏感的搜索类业务。

中心化架构,只有1个master处于active状态。

缓存和预取,通过在client端缓存元数据,尽量减少与master的交互,通过文件的预读取来提升并发性能。

高可靠性,master需要持久化的数据会通过操作日志与checkpoint的方式存放多份,故障后master会自动切换重启。

3)HDFS的特点(vs GFS)

分块更大,每个数据块默认128MB;

不支持并发,同一时刻只允许一个写入者或追加者;

过程一致性,写入数据的传输顺序与最终写入顺序一致;

Master HA,2.X版本支持两个NameNode,(分别处于Active和Standby状态),故障切换时间一般几十秒到数分钟。

HDFS适合的应用场景:

适用于大文件、大数据处理,处理数据达到 GB、TB、甚至PB级别的数据。

适合流式文件访问,一次写入,多次读取。

文件一旦写入不能修改,只能追加。

HDFS不适合的场景:

低延时数据访问。

小文件存储。

并发写入、文件随机修改。

4)Swift特点

原生的对象存储,不支持实时的文件读写、编辑功能。
完全对称架构,无主节点,无单点故障,易于大规模扩展,性能容量线性增长。

数据实现最终一致性,不需要所有副本写入即可返回,读取数据时需要进行数据副本的校验。

是OpenStack的子项目之一,适合云环境的部署。

Swift的对象存储与Ceph提供的对象存储区别:客户端在访问对象存储系统服务时,Swift要求客户端必须访问Swift网关才能获得数据。而Ceph可以在每个存储节点上的OSD(对象存储设备)获取数据信息; 在数据一致性方面,Swift的数据是最终一致,而Ceph是始终跨集群强一致性)

5)Lustre特点

支持数万个客户端系统,支持PB级存储容量,单个文件最大支持320TB容量。

支持RDMA网络,大文件读写分片优化,多个OSS能获得更高的聚合带宽。

缺少副本机制,存在单点故障。如果一个客户端或节点发生故障,存储在该节点上的数据在重新启动前将不可访问。
适用高性能计算HPC领域,适用于大文件连续读写。
几种主流分布式存储技术的特点比较如下:

————————————————
版权声明:本文为CSDN博主「太平洋代码」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_46302190/article/details/104412293

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值