Google文件系统(GFS)评析:(下)

上一篇文章中我快速地概述了从谷歌文件系统组织到存储相关的特征比如RAID以及高可用性。在给出我关于GFS作为一个商业产品市场潜力的结论之前,我想提供更多一些关于GFS性能的数据。

Ghemawat、Gobioff 和 Leung 合著的《The Google File System》包含了一些有意思的性能信息。这些例子不能被当做是有代表性的,毕竟我们并没有充分了解谷歌使用的GFS机群规模,所以他们得到的结论只能被认为是初步结论。

我们来看下面描述的两个GFS机群:

Cluster A B
Chunkservers 342 227
Available Disk Cap. 72 TB 180 TB
Used Disk Cap 55 TB 155 TB
Number of Files 735 k 737 k
Number of Dead Files 22 k 232 k
Number of Chunks 992 k 1550 k
Metadata at Chunkservers 13 GB 21 GB
Metadata at Master 48 MB 60 MB

我们有了两个规模相当的存储系统,其中一个可用空间利用率大约为80%,另一个空间利用率接近90%。这对任何数据存储中心管理员来说都是一个可观的规模。我们也注意到chunk元数据的规模跟chunk的数目成线性关系。很好。机群A中的平均文件大小大约相当于B机群的1/3,。A机群的平均文件大小大约为75MB,而B机群的平均文件大小约为210MB。这远大于一般的数据中心的平均文件大小。

接下来我们来看这两个机群的性能数据:

Cluster A B
Read Rate – last minute 583 MB/s 380 MB/s
Read Rate – last hour 562 MB/s 384 MB/s
Read Rate – since restart 589 MB/s 49 MB/s
Write Rate – last minute 1 MB/s 101 MB/s
Write Rate – last hour 2 MB/s 117 MB/s
Write Rate – since restart 25 MB/s 13 MB/s
Master Ops – last minute 325 Op/s 533 Op/s
Master Ops – last hour 381 Op/s 518 Op/s
Master Ops – since restart 202 Op/s 347 Op/s

正如作者所说的那样,系统的序列读取操作性能是很卓越的,序列写操作性能是很棒的,而小规模写操作性能是一般的。通过观察A机群的性能数据,我推断最后一分钟它处理了125个小文件的写操作,这些文件平均大小为8KB。显然,这对于具有500个电话坐席的oracle客服中心来讲,全力埋头工作是不够的,这也不是所要设计的核心。对我而言,这样的性能可以轻而易举的超过EMC Centera或者用来处理大文件的新NetApp FAS6000系列。这对于一个三年前设计的由商业机器搭建起来的文件系统已经不错了。

我们这里看到的GFS实现具有许多有助于获胜的性质。

这些品质包括了:

  • 可用性。冗余三份(用户可以选择更多)、chunk并行备份、master快速的故障转移、智能的备份放置措施、自动再备份以及低代价的快照拷贝。所有这些传递的特征,正如谷歌用户每天看到的那样:世界最大的数据中心之一提供的数据中心级别的可用性。
  • 性能。大部分的工作量,即使是在数据库中,大约90%是读取任务。GFS在大规模序列读取操作上的性能堪称模仿。对于谷歌而言,将视频下载添加到他们的产品集中简直是小儿科,我怀疑他们的每字节花费的代价要比Youtube以及其他所有的视频分享服务低。
  • 管理。系统提供了许多 “自动“管理。它通过多种失败模型来管理自己、提供自动的负载均衡以及存储池、也提供了许多特征,包括快照以及提供了对抗故障和错误功能的在系统中保留三天已删除文件的性质。我很乐意知道需要多少系统管理员来维护这个系统。
  • 代价。没有比用ATA存储盒更便宜的存储了。

然而,作为一个一般意义上的商业产品,他也有一些严重的短处。

  •  附加记录操作和“宽松“的一致性模型,即便对于谷歌来说非常好,并不一定适用于很多的企业工作任务。可能不适用于邮件系统,在那里SOX要求正推动保留,可能被重新设计,以消除删除。而附加操作在GFS多客户端同时写文件的时候发挥了关键作用,这也就是说在企业中GFS可能会丧失它的大部分优势,甚至于大规模序列读取操作的性能。
  • 别忘了,GFS是NFS(not for sale),不是为了销售的。谷歌一定将它的平台技术视为核心竞争力,所以近期内它几乎不可能会开放源代码。

综合来看,及时假定GFS会被出售,这也是一个小众的产品,并不会在公开的市场上非常成功。

然而从可实现的能力上去评价这个模型,则是无价的。整个产业界在过去20年一直致力于通过搭建越来越昂贵的“防弹“设施来为受到越来越多挑战的基于块和卷的存储模型增加可用性和可扩展性。

GFS打破了那个模型,并且向我们展示,当反思整个存储模型时我们可以做什么。围绕设备去建立可用性,而不是在设备本身上,这将存储平台当做一个系统而不是一系列部件的集合,将文件系统功能扩展到了很多我们现在考虑的存储管理,包括虚拟化、持续的数据保护、负载均衡以及容量管理。

GFS不是未来。但是它给我们提供了未来的一种可能。

收藏 评论

关于作者:xubenben

活泼爱玩,爱学习的纠结体; 目前偏爱计算机基础、自然语言处理以及分布式领域。@哈工大徐俊 个人主页 · 我的文章 · 10

相关文章

可能感兴趣的话题



直接登录
跳到底部
返回顶部