Google File system文件系统,是在特别便宜的普通硬件设备上运行,它是一个面向大规模数据密集型运用的、可伸缩的分布式文件系统。

       与传统文件相比,它认为组件失效是很平常的事件,因为GFS包括几千台的廉价设备组装的存储机器,被很多的客服机访问,GFS的组件的质量不一样、数量有多,所有的机器在任何时间都有可能出现故障,但是GFS拥有持续监测、错误监测、灾难冗余以及可以自动恢复的机制。传统文件是覆盖原有数据方式来修改,而GFS大多文件修改是在文件尾部追加。

       在存储文件时,GFS存储文件被分割成一定大小的chunk,创建chunk时,master服务器会给chunk一个独有的标识,而且每个块会复制到多个服务器上,通常情况上会使用三个存储复制节点。master节点管理所有文件系统的元数据,但master服务器并不是永久保存chunk服务器存有指定chunk的副本信息。它是在启动时,轮流地询问chunk服务器,用来获取信息,已保持自身信息是最新的。通过周期性的心跳来监测chunk服务器的状态。

       如果chunk出现问题或硬盘坏了,master可以通过操作日志的重演把文件系统恢复到最近的状态。操作日志包含了关键元数据变更历史记录。

       如果master服务器失效了,可以利用之前复制master服务器的所有操作日志和checkpoint文件,重新启动一个新的master的进程。

       关于GFS的垃圾回收机制,我觉得非常好,它不是立即删除,而是将待删除的文件名改为一个包含删除时间的隐含名字。只有将隐藏文件从名称空间删除,而会永久删除。

       GFS运用到施工中,也是非常合适的。首先它的成本不高,它可以存储大量文件,就算有一台电脑坏了,数据也不会丢失,而且在施工中,很多文件需要重做,保存文件很容易与之前的弄混淆,尤其是过很久再找事,分不清那个是最新版本的,而GFS是在文件尾部缀加,一更改,文件就全部变成最新版本的。有时不小心删了重要文件,很有可能找不回了,而GFS的垃圾回收,就算删除了,也可找到。所以我觉得可以将GFS文件系统运用到工程中。

posted on 2019-04-17 22:08  芒果啦  阅读(377)  评论(0编辑  收藏  举报