主流分布式存储技术对比分析-GFS-HDFS-GlusterFS-Ceph-Swift.docxVIP

主流分布式存储技术对比分析-GFS-HDFS-GlusterFS-Ceph-Swift.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

?

?

主流分布式存储技术对比分析

GFS、HDFS、GlusterFS、Ceph、Swift

?

?

【导读】如今分布式存储产品众多令人眼花缭乱,如何选型?要根据其背后的核心架构来分析它本来的原貌,然后才能决定其是否适合我们的具体场景。

1?引言

目前市面上各个厂家的分布式存储产品五花八门,但是如果透过产品本身的包装看到其背后的核心技术体系,基本上会分为两种架构,一种是有中心架构的分布式文件系统架构,以GFS、HDFS为代表;另外一种是完全无中心的分布式存储架构,以Ceph、Swift、GlusterFS为代表。对具体分布式存储产品选型的时候,要根据其背后的核心架构来分析它本来的原貌,然后才能决定其是否适合我们的具体场景。

2?主流分布式存储技术对比分析

2.1?GFSHDFS

GFS和HDFS都是基于文件系统实现的分布式存储系统;都是有中心的分布式架构(图2.1);通过对中心节点元数据的索引查询得到数据地址空间,然后再去数据节点上查询数据本身的机制来完成数据的读写;都是基于文件数据存储场景设计的架构;都是适合顺序写入顺序读取,对随机读写不友好。

图2.1中心化的分布式存储架构

接下来,我们来看GFS和HDFS都有哪些具体特性,我们应该如何应用?

1.GFS是一种适合大文件,尤其是GB级别的大文件存储场景的分布式存储系统。

2.GFS非常适合对数据访问延迟不敏感的搜索引擎服务。

3.GFS是一种有中心节点的分布式架构,Master节点是单一的集中管理节点,既是高可用的瓶颈,也是可能出现性能问题的瓶颈。

4.GFS可以通过缓存一部分Metadata到Client节点,减少Client与Master的交互。

5.GFS的Master节点上的Operationlog和Checkpoint文件需要通过复制方式保留多个副本,来保障元数据以及中心管理功能的高可用性。

相对于GFS来说,我们来看HDFS做了哪些区别?

1.HDFS的默认最小存储单元为128M,比GFS的64M更大。

2.HDFS不支持文件并发写,对于单个文件它仅允许有一个写或者追加请求。

3.HDFS从2.0版本之后支持两个管理节点(NameNode),主备切换可以做到分钟级别。

5.HDFS更适合单次写多次读的大文件流式读取的场景。

6.HDFS不支持对已写文件的更新操作,仅支持对它的追加操作。

2.2?GlusterFS

GlusterFS虽然是基于文件系统的分布式存储技术,但是它与GFS/HDFS有本质的区别,它是去中心化的无中心分布式架构(图2.2);它是通过对文件全目录的DHT算法计算得到相应的Brike地址,从而实现对数据的读写;它与Ceph/Swift的架构区别在于它没有集中收集保存集群拓扑结构信息的存储区,因此在做计算的时候,需要遍历整个卷的Brike信息。

图2.2GlusterFS

接下来,我们来看GlusterFS都有哪些具体特性,我们应该如何应用?

1.GlusterFS是采用无中心对称式架构,没有专用的元数据服务器,也就不存在元数据服务器瓶颈。元数据存在于文件的属性和扩展属性中。

2.GlusterFS可以提供Raid0、Raid1、Raid1+0等多种类型存储卷类型。

3.GlusterFS采用数据最终一致性算法,只要有一个副本写完就可以Commit。

4.GlusterFS默认会将文件切分为128KB的切片,然后分布于卷对应的所有Brike当中。所以从其设计初衷来看,更适合大文件并发的场景。

5.GlusterFS采用的DHT算法不具备良好的稳定性,一旦存储节点发生增减变化,势必影响卷下面所有Brike的数据进行再平衡操作,开销比较大。

6.GlusterFS文件目录利用扩展属性记录子卷的中brick的hash分布范围,每个brick的范围均不重叠。遍历目录时,需要获取每个文件的属性和扩展属性进行聚合,当目录文件较多时,遍历效率很差。

2.3?CephSwift

我们知道,相对于文件系统的中心架构分布式存储技术,CephSwift都是去中心化的无中心分布式架构(图2.3);他们底层都是对象存储技术;他们都是通过对对象的哈希算法得到相应的BucketNode地址,从而实现对数据的读写。

图2.3去中心化的分布式存储架构

接下来,我们来看Ceph和Swift都有哪些具体特性,我们应该如何应用?

1.Ceph是一种统一了三种接口的统一存储平台,上层应用支持Object、Block、File。

2.Ceph采用Crush算法完成数据分布计算,通过Tree的逻辑对象数据结构自然实现故障隔离副本位置计算,通过将Bucket内节点的组织结构,集群结构变化导致的数据迁

文档评论(0)

185****6315 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档