首页 理论教育 GFS容错机制:云计算原理与技术

GFS容错机制:云计算原理与技术

时间:2023-10-29 理论教育 版权反馈
【摘要】:由于GFS中服务器数量众多,服务器死机是经常发生的事情,以致不应当将其视为异常现象,因此在频繁的故障中保证数据存储的安全并提供不间断的数据存储服务是GFS最核心的问题。GFS使用Master容错和Chunk Server容错来确保系统的可靠性。GFS通过操作日志为命名空间与映射表提供容错功能;Chunk副本的位置信息则直接保存在各个数据块服务器上,当主服务器启动或数据块服务器向主服务器注册时自动生成。

GFS容错机制:云计算原理与技术

GFS使用商用机器构建分布式文件系统,将容错的任务交给文件系统完成,利用软件方法解决系统的可靠性问题,降低存储的成本。由于GFS中服务器数量众多,服务器死机是经常发生的事情,以致不应当将其视为异常现象,因此在频繁的故障中保证数据存储的安全并提供不间断的数据存储服务是GFS最核心的问题。GFS使用Master容错和Chunk Server容错来确保系统的可靠性。

1.Master容错

Master上保存了GFS的3种元数据:

(1)命名空间,即整个文件系统的目录结构;

(2)Chunk与文件名的映射表;

(3)Chunk副本的位置信息,每个Chunk默认有3个副本。(www.xing528.com)

GFS通过操作日志为命名空间与映射表提供容错功能;Chunk副本的位置信息则直接保存在各个数据块服务器上,当主服务器启动或数据块服务器向主服务器注册时自动生成。当主服务器发生故障时,在磁盘数据保存完好的情况下,可以迅速恢复以上元数据。为了防止主服务器彻底死机,GFS提供了主服务器远程的实时备份,在当前的GFS主服务器出现故障无法工作的时候,另外一台GFS主服务器可以迅速接替其工作。

2.Chunk Server容错

GFS采用副本的方式实现数据块服务器的容错。每个数据块有多个存储副本(默认为3个),分别存储在不同的数据块服务器上。副本的分布策略需要考虑多种因素,如网络的拓扑、机架的分布、磁盘的利用率等。每个数据块必须将副本全部写入成功,才被视为成功写入。在其后的过程中,如果相关的副本出现丢失或不可恢复等状况,主服务器会自动将该副本复制到其他数据块服务器,从而确保副本保持一定的数量。尽管一份数据需要存储3份,磁盘空间的利用率不高,但综合比较多种因素,且磁盘的成本不断下降,采用副本是实现容错最简单、最可靠、最有效、实现难度最小的方法。

GFS中的每一个文件被划分成多个数据块,数据块的默认大小是64MB,数据块服务器存储的是数据块的副本,副本以文件的形式进行存储。每个数据块以Block为单位进行划分,大小为64 KB,每个数据块对应一个32 bit的校验和。当读取一个数据块副本时,数据块服务器会将读取的数据与校验和进行比较,如果不匹配,就会返回错误,从而使客户端选择其他数据块服务器上的副本。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈