Google File System设计方面的问题汇总

时间:2022-08-28 05:07:56

1、Google File System概述

google file system是一个分布式文件系统,针对的是数据密集型应用,提供容错功能,运行在低廉的服务器上,同时给大量的用户提供高性能服务。尽管google file system有着传统的分布式文件系统的目标,但是GFS的开发兼顾观察现在Internet应用下的技术需求和场景,为了扩展也考虑将来的场景,这是Google File System与传统的分布式文件系统不同的地方。

2、GFS设计时的目标及考虑因素

  • 传统的分布式文件系统的目标:扩展性(scalability),可靠性(reliability),有效性(availability)

  考虑现实条件及场景:

  • 构成GFS的组件故障是正常的,而不是意外:GFS设计目标是由成百上千的存储服务器,甚至更多,这些存储服务器是低廉的,同时会被大量的客户访问。这些存储服务器的数量和质量就确定了GFS组件的故障时正常的
  • 按照传统的观点,文件是巨大的:几个GB大小的文件是很正常的。
  • 文件数据的更改不是覆盖原有的数据,而是在文件的后面添加新的数据
  • 在设计的时候兼顾考虑应用和文件系统,这样方便以后扩展

3、GFS设计时假定的前提条件

  • 系统建立在低廉的服务器上,会发生故障
  • 存储中等程度数量的大文件
  • 负载有两种读:大型的streaming reads和小型的random reads
  • 负载有大量的顺序添加写操作
  • 总体的带宽比时延更重要

4、设计接口(Interface)

采用的不是传统的POSIX接口,支持操作为create、delete、open、close etc

5、